У меня есть приложение Spring Boot, и я хотел бы загрузить конфигурации из Vault на основе профиля, который я использую. На данный момент у меня 2 профиля (dev, prod). В моем профиле разработчика используется база данных H2, а в профиле Prod - база данных Posgres. Запуск профиля разработчика загружает правильную конфигурацию из Vault, но запуск с профилем Prod, похоже, каким-то образом пропускает его и не ищет в Vault.
bootstrap .yaml
spring:
application:
name: my-app
profiles:
active:
cloud:
vault:
host: localhost
port: 8200
scheme: http
uri: http://localhost:8200
connection-timeout: 5000
read-timeout: 15000
authentication: TOKEN
token: 00000000-0000-0000-0000-000000000000
kv:
enabled: true
backend: secret
default-context: my-app/dev
fail-fast: false
bootstrap -prod.yaml
spring:
application:
name: gateway
profiles:
active: prod
cloud:
vault:
host: localhost
port: 8200
scheme: http
uri: http://localhost:8200
connection-timeout: 5000
read-timeout: 15000
authentication: TOKEN
token: 00000000-0000-0000-0000-000000000000
kv:
enabled: true
backend: secret
default-context: my-app/dev
fail-fast: false
Например выполнение команды gradle
загрузит конфигурацию из хранилища. Но при запуске gradle -Pprod
не удается загрузить правильную конфигурацию из Vault.