feat(plataforma): a etapa BANCO_CRIADO pode recarregar o PgBouncer
Le o ConfigMap pgbouncer-conf (para saber se o Argo ja aplicou) e reinicia o Deployment pgbouncer. Os dois amarrados por resourceNames.
This commit is contained in:
@@ -83,6 +83,24 @@ rules:
|
||||
resources: ["secrets"]
|
||||
verbs: ["get"]
|
||||
resourceNames: ["pgbouncer-userlist"]
|
||||
# Para saber se o Argo JA aplicou a linha do tenant novo. Sem esta leitura, a
|
||||
# etapa reiniciaria o pool as cegas — e reiniciar antes de o Argo aplicar sobe
|
||||
# o pod novo lendo a configuracao VELHA, derrubando as conexoes de todos os
|
||||
# tenants por nada.
|
||||
- apiGroups: [""]
|
||||
resources: ["configmaps"]
|
||||
verbs: ["get"]
|
||||
resourceNames: ["pgbouncer-conf"]
|
||||
# O PgBouncer NAO rele a configuracao sozinho: o ConfigMap muda, o kubelet
|
||||
# atualiza o arquivo montado, e o processo segue com o que leu na subida. Sem
|
||||
# este `patch` o tenant novo fica com banco e papel criados e sem pool, para
|
||||
# sempre e sem erro que aponte para ca.
|
||||
#
|
||||
# `resourceNames` amarra ao pgbouncer: nenhum outro Deployment e alcancavel.
|
||||
- apiGroups: ["apps"]
|
||||
resources: ["deployments"]
|
||||
verbs: ["patch"]
|
||||
resourceNames: ["pgbouncer"]
|
||||
---
|
||||
apiVersion: rbac.authorization.k8s.io/v1
|
||||
kind: RoleBinding
|
||||
|
||||
Reference in New Issue
Block a user