Спецификация профиля Spring Cloud Vault c Bootstrap - PullRequest
0 голосов
/ 27 мая 2020

У меня есть приложение 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.

...