Я работаю над веб-приложением, которое работает в стеке LAMP (Linux Apache Mysql PHP), и хотел бы получить рекомендации по улучшению моего рабочего процесса.
У меня есть 3 окружения:
- Моя локальная машина ИНАЧЕ моя среда разработки.
- промежуточная учетная запись на моем выделенном сервере, чтобы я мог протестировать веб-приложение.
- рабочая учетная запись на моем выделенном сервере
Я занимаюсь разработкой на своем локальном компьютере и использую сервер Subversion, расположенный на моем выделенном сервере. Я настроил сценарий перехвата, так что всякий раз, когда я фиксирую, моя «промежуточная» учетная запись обновляется новым кодом.
Время от времени я убеждаюсь, что в промежуточной учетной записи все работает нормально, и отправляю изменения в свою рабочую учетную запись с помощью небольшого скрипта.
По большей части это работает достаточно хорошо, но есть несколько неприятностей:
Мое доменное имя жестко запрограммировано в нескольких местах, поэтому переключение между средами занимает много времени. Я могу изменить свой файл hosts вручную, но это не совсем быстро и не работает для двух учетных записей (prod / staging) на одном сервере.
У меня нет возможности поддерживать базу данных в актуальном состоянии во всех трех средах. Я мог бы использовать одну и ту же базу данных для всех сред, но мне пришлось бы рискнуть нарушить производственную среду.
Итак, мой вопрос: что я могу сделать, чтобы смягчить эти проблемы?
ОБНОВЛЕНИЕ. Проблема с жестко закодированным доменом возникает из-за стороннего программного обеспечения, поэтому в настоящее время вариант «без жесткого кодирования» невозможен.