Я хотел бы реализовать непрерывную доставку при каждом коммите исходного кода в главную ветку в git.Но в большинстве случаев один только код не изменяется, наряду с выпуском кода, будут изменения БД, а также изменения конфигурации или новые конфигурации.
Поэтому мой вопрос заключается в том, как это обрабатывается при непрерывной доставке, когда есть изменения кода + DB + config.
Давайте рассмотрим пример, в котором у меня есть 3 репо
РепоA - исходный код - для проверки новых функций или исправления ошибок.Автоматическое развертывание Git hook установлено на этом репо
Репо B - изменения БД
Репо C - изменения конфигурации
Теперь у разработчика есть некоторые изменения кода, в которых есть изменения конфигурации именяется и БД.Таким образом, если разработчик сначала проверяет исходный код (который инициирует сборку и развертывание), но требует некоторого времени для проверки изменений БД и изменений конфигурации, в исходной среде будет самый последний код со старой БД или старой конфигурацией.Это противоречиво и может привести к нежелательным результатам.
Я мог бы подумать о 2 решениях, чтобы избежать проблемы:
1) Разработчики должны быть обучены сначала проверять изменения в БД / конфигурации, а затем проверятьв исходном коде.
ИЛИ
2) Есть еще 1 репозиторий - называемый app-release, который представляет собой файл yaml для принятия версии приложения, БД изменяет метаданные (например, имя файла скрипта и т. д.) и конфигурациюизменить метку или версию тега.Имейте автоматическое развертывание в этой ветке репо.Таким образом, разработчик может зарегистрироваться, как он хочет, и, наконец, проверить файл выпуска приложения, который вызовет сборку.
Какие-либо другие предложения, пожалуйста, дайте мне знать?