В настоящее время мы используем Spring Cloud Config Server с бэкэндом git в среде микросервисов. Кроме того, в производственной среде сервер конфигурации считывает файл application-production.yml из файловой системы. Мы рассматриваем это, чтобы улучшить управление файлами конфигурации.
В основном мы хотим иметь:
- одно репо для глобальных файлов yml
- другое репо для приложения Speci c файлы конфигурации
- два файла application-production.yml. Один в файловой системе производственной среды с важной информацией, такой как пароли, а другой в репозитории git с неощутимой информацией
Что-то вроде этого:
In production filesystem /config-apps:
- application-production.yml // with sensible information
In git_repo_1
- application-production.yml // with non sensible information
- application.yml
- application-test.yml
In git_repo_2
// apis properties
api_1.yml
api_2.yml
...
Мы намерены чтобы использовать составной профиль на сервере конфигурации.
Сервер конфигурации application.yml содержит:
spring:
profiles:
active: composite
cloud:
config:
server:
composite:
- type: native
search-locations: file:///config-apps
- type: git
uri: git_repo_1
- type: git
uri: git_repo_2
Мы провели несколько тестов с указанной выше конфигурацией и работали нормально. Но из документации мы не поняли, поддерживается ли это полностью.
Это правильный способ сделать это?
Есть ли проблемы с наличием двух файлов с одинаковым именем, но в разных источниках?