0

Я пытаюсь настроить мое веб-приложение (расширение браузера), чтобы я мог легко перемещаться между разработкой, тестированием и производством. По большей части я избегал жестко прописывать любые URL-адрес в приложение, но есть несколько мест, где это невозможно:Mercurial pre commit hook для изменения настроек

  • Как расширение для браузера, который впрыскивает JS, я не могу использовать относительные пути (или location.host) при вставке iframe на страницу, поскольку он будет по умолчанию для домена, в который он вставлен. (но мне нужно, чтобы это было localhost для тестирования, а затем www.mydomain.com после того, как я нажал вживую)
  • Мне также иногда нравится тестировать как тестовую, так и живую базу данных, но не хочу, чтобы всегда переключаться этот флаг и риск, связанный с настройками тестового db.

Что мне действительно хотелось бы сделать, это поиск/замена, прежде чем я совершу (по пару файлов x.php, y.js), чтобы поменять местный хостинг на www.mydomain.com.

Может ли кто-нибудь сказать мне, как это сделать с крюком precommit (или любой другой техникой)?

EDIT:

В то время как я это писал под ртутными крючками - я 100% открыт для любого другого метода автоматизации изменений ...

  • Я в порядке с выполнением изменений на реальном сервере после вытягивания изменений, а также.
  • Я предполагаю, что для изменений в БД я мог бы просто удалить конфигурационный файл из своего репо и сохранить версию preconfig на моем реальном сервере - но я не знаю, я люблю это, потому что вытащить из моего репо на новый сервер/путь будет тянуть весь приложение без каких-либо настроек db ... (просто сбрасывая мои идеи здесь, если это помогает кому-то с решением)

Спасибо!

+0

Когда вы спрашиваете о крючках, полезно указать, какую операционную систему вы используете, чтобы люди знали, какой язык сценариев использовать. –

+0

Спасибо: Моя среда для разработчиков - это Windows 7 (IIS), используя mimosajs для перехода между dev и test, а затем я использую Kiln для управления исходным кодом. На стороне производства я запускаю сервер Ubuntu с mercurial. – user2197645

ответ

0

Я бы поместил что-то в файл, который не находится под управлением версии (т. Е. Добавьте его в свой .hgignore). Сделать что-то нехорошо, если файл не существует (или выбрать нормальный по умолчанию), и теперь вы можете легко переключить имя хоста в этом файле (не рискуя его совершить).

Смежные вопросы