Как организовать развертывание(deploy) проекта?

Всем привет!
Прошу совета у вас опытные разработчики =)

Ситуация: Есть проект со стандартными настройками, который разрабатывается группой разработчиков. На хостинге настройки уже другие. Конфигурационные файлы проекта изменяются в процессе разработки.

Вопрос: Как организовать автоматическое обновление проекта на хостинге чтобы не нужно было перенастраивать проект при каждом обновлении и чтобы изменения конфигурационных файлов автоматически применялись вместе с обновлением?

P.S. Команда пользуется системами контроля версий для совместной работы.
  • Вопрос задан
  • 269 просмотров
Пригласить эксперта
Ответы на вопрос 1
@mantyr
Пишу много Golang кода с удовольствием:)
Вариантов множество.

1. делайте настройку для каждой группы использования (production, testing, dev, ...) и просто в коде определяйте какой блок настроек использовать в зависимости от окружения.

Не всегда целесообразно раскрывать данные (о паролях, логинах и прочих настройках которые используются в production) тем кто работает с кодом в других окружениях (dev, testing, ...) По этому:

2. хранить настройки для production и testing отдельно (можно во втором репозитарии) и при деплое загружать данные от туда.

3. вынести настройки за пределы проекта, в результате настройки остаются, а проект обновляется. Обновление настроек на каждой среде - отдельная задача. При автоматизации развёртывания нужен комплект настроек под каждую среду, в идеале сам код проекта ничего об этом знать не должен и должен корректно стартовать с любыми входящими конфигами.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы