fix(projection-writer): отключить spring-cloud-vault kv source
projection-writer крашится в bootstrap на 403 при чтении secret/data/ordinis/cuod/k8s — путь которого нет ни в одной из vault-policies (ordinis-app/read-api/projection-writer). Сами секреты приходят через Vault Agent injector в env-переменные ещё до старта JVM, поэтому spring-cloud-vault как config source избыточен. writer и read-api ту же 403 получают, но Spring Cloud Vault лог-warning'ом переваривает. У projection-writer почему-то фатально (возможно из-за ROTATE-mode на secret lease + redis-зависимости в bootstrap chain). Не лезу в эту разницу — просто отключаю kv совсем. Если когда-то понадобится использовать vault как config source — добавить читать secret/data/ordinis/cuod/k8s в политики или сменить application-name на ordinis-projection-writer + создать отдельный путь.
This commit is contained in:
@@ -100,21 +100,19 @@ spring:
|
||||
on-profile: k8s
|
||||
import:
|
||||
- "configserver:${SPRING_CLOUD_CONFIG_URI:http://config-server.ordinis-staging:8888}"
|
||||
- "vault://"
|
||||
cloud:
|
||||
config:
|
||||
enabled: true
|
||||
# Spring Cloud Vault как config source отключён намеренно: креды (postgres,
|
||||
# kafka, redis) приходят через Vault Agent injector в env-переменные ещё
|
||||
# до старта JVM. Если включить kv-source с application-name=ordinis/cuod,
|
||||
# Spring пытается читать secret/data/ordinis/cuod/k8s — путь для которого
|
||||
# ни одна из ролей (ordinis-app/read-api/projection-writer) не имеет
|
||||
# capabilities=read, и projection-writer падает на этом 403 в bootstrap.
|
||||
# writer/read-api тот же 403 ловят, но молча проглатывают (бin Lifecycle
|
||||
# отличается). Чистый путь — не использовать kv-source совсем.
|
||||
vault:
|
||||
enabled: true
|
||||
uri: ${VAULT_URI:http://vault.config:8200}
|
||||
authentication: KUBERNETES
|
||||
kubernetes:
|
||||
role: ordinis-projection-writer
|
||||
service-account-token-file: /var/run/secrets/kubernetes.io/serviceaccount/token
|
||||
kv:
|
||||
enabled: true
|
||||
backend: secret
|
||||
application-name: ordinis/cuod
|
||||
enabled: false
|
||||
datasource:
|
||||
url: jdbc:postgresql://${ORDINIS_PG_HOST}:${ORDINIS_PG_PORT:5432}/${ORDINIS_PG_DB:ordinis}
|
||||
username: ${ORDINIS_PG_USER}
|
||||
|
||||
Reference in New Issue
Block a user