ПроблемойМетоды управления конфигурационными файлами между несколькими средами
Мы используем Java WAR файлы и хранить конфигурационные файлы в s3 ведер. Наши среды: DEV, QA, Stage и PROD имеют свои собственные файлы конфигурации и s3-ведра. Если я добавлю новое поле, например «Polling_RATE = 5000», , он должен быть добавлен вручную в каждый env, потому что эти файлы конфигурации также хранят пароли, поэтому они не могут быть привязаны к приложению или хранятся внутри Github. Не каждый инженер имеет доступ к каждому env, поэтому вы должны помнить о том, чтобы сообщить инженерам верхнего уровня (DEVOPS) до даты внедрения prod, чтобы добавить новое поле для работы приложения. Это действительно грязный процесс в настоящее время.
Вопрос
Есть ли утилита или архитектурный шаблон дизайна означало иметь дело с этим? Как вы «чувствительны к настройке» чувствительные поля конфигурации, которые невозможно сохранить в github?
Спасибо Rohit. Значит ли это, что у вас есть один экземпляр dynamodb, содержащий конфигурацию для каждого env? –
Да. 1 таблица на среду. И работа Дженкинса для загрузки данных в эту таблицу из csv, которая поддерживается как часть git repo. – Rohit
Если я добавлю новые свойства в экземпляр dynaodb DEV. Должен ли я вручную помнить, чтобы обновить три других экземпляра dynamodb, или эта единственная работа jenkins покрывает все envs? –