Для нашого веб-стека ми переходимо від сервера Windows до CentOS. Щоб полегшити розвиток, ми використовуємо Vagrant для запуску віртуальних комп'ютерів CentOS локально. Ми використовуємо функцію синхронізованих папок Vagrant, щоб дозволити розробникам використовувати свої улюблені IDE на своїй хост-машині, але ми виявляємо, що в цій настройці відсутня одна ключова функція: чутливість до файлової системи.
Синхронізована папка всередині VM, очевидно, набуває властивостей файлової системи хоста, тому якщо я розробляюсь із машини Windows або навіть OSX, файлова система не відрізняється від регістру. Це велика проблема, оскільки наші виробничі сервери будуть чистим CentOS, а його файлова система буде враховувати регістри.
Чутливість до справи є однією з головних причин, за якими ми хотіли мати локальну машину управління. Ми хочемо запобігти "Це працює на моїй машині!"
Деякі способи вирішення, які ми розглянули чи спробували:
- Використовуйте lsyncd для синхронізації із бродячого спільного доступу до місця у ВМ, яке залежно від регістру
- оновлення файлів на хості, здається, не генерує події в VM, які lsync слухає
- Зробіть розділовий регістр на хості
- (Не працює для Windows)
- Використовуйте самбу
- це може бути варіант, але ми ще не перевірили його.
Чи є кращий спосіб? Зауважте, що у нас є розробники, що використовують Windows, OS X та Ubuntu, і рішення потрібно працювати скрізь.