feat(molde): runtimes esperam o login no banco num initContainer, em vez de cair e entrar em backoff (P4.9) — canario no teste5
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,32 @@ spec:
|
||||
app: runtime-core
|
||||
athleticmap.io/contexto: runtime-core
|
||||
spec:
|
||||
# Espera o LOGIN no banco do tenant funcionar antes de subir o runtime.
|
||||
# O Argo aplica este Deployment ANTES de a etapa BANCO_CRIADO criar o papel
|
||||
# e a linha no PgBouncer. Sem esta espera o runtime cai na subida, e o
|
||||
# Kubernetes o religa com espera crescente (10 s, 20 s, 40 s, 80 s...):
|
||||
# era isso que levava a etapa MIGRACOES_CONCLUIDAS a 4-5 min (P4.9).
|
||||
# Aqui o laco e de 2 s e nao ha queda — o runtime sobe logo que o banco existe.
|
||||
initContainers:
|
||||
- name: espera-banco
|
||||
image: docker.io/library/postgres:16
|
||||
imagePullPolicy: Never
|
||||
command: ["sh", "-c"]
|
||||
args:
|
||||
- |
|
||||
n=0
|
||||
until psql "host=pgbouncer.plataforma-prod.svc port=6432 dbname=athleticmap_{{TENANT}} user=r_{{TENANT}} connect_timeout=3" -Atc 'select 1' >/dev/null 2>&1; do
|
||||
n=$((n+1)); [ $((n % 15)) -eq 0 ] && echo "ainda sem o banco do tenant ($((n*2)) s)"
|
||||
sleep 2
|
||||
done
|
||||
echo "banco pronto"
|
||||
env:
|
||||
- name: PGPASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef: { name: db-credentials, key: password }
|
||||
resources:
|
||||
requests: { cpu: 10m, memory: 16Mi }
|
||||
limits: { cpu: 100m, memory: 64Mi }
|
||||
containers:
|
||||
- name: runtime-core
|
||||
image: docker.io/library/runtime-core:1.3-vinculo-keycloak
|
||||
|
||||
@@ -19,6 +19,32 @@ spec:
|
||||
app: runtime-operacao
|
||||
athleticmap.io/contexto: runtime-operacao
|
||||
spec:
|
||||
# Espera o LOGIN no banco do tenant funcionar antes de subir o runtime.
|
||||
# O Argo aplica este Deployment ANTES de a etapa BANCO_CRIADO criar o papel
|
||||
# e a linha no PgBouncer. Sem esta espera o runtime cai na subida, e o
|
||||
# Kubernetes o religa com espera crescente (10 s, 20 s, 40 s, 80 s...):
|
||||
# era isso que levava a etapa MIGRACOES_CONCLUIDAS a 4-5 min (P4.9).
|
||||
# Aqui o laco e de 2 s e nao ha queda — o runtime sobe logo que o banco existe.
|
||||
initContainers:
|
||||
- name: espera-banco
|
||||
image: docker.io/library/postgres:16
|
||||
imagePullPolicy: Never
|
||||
command: ["sh", "-c"]
|
||||
args:
|
||||
- |
|
||||
n=0
|
||||
until psql "host=pgbouncer.plataforma-prod.svc port=6432 dbname=athleticmap_{{TENANT}} user=r_{{TENANT}} connect_timeout=3" -Atc 'select 1' >/dev/null 2>&1; do
|
||||
n=$((n+1)); [ $((n % 15)) -eq 0 ] && echo "ainda sem o banco do tenant ($((n*2)) s)"
|
||||
sleep 2
|
||||
done
|
||||
echo "banco pronto"
|
||||
env:
|
||||
- name: PGPASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef: { name: db-credentials, key: password }
|
||||
resources:
|
||||
requests: { cpu: 10m, memory: 16Mi }
|
||||
limits: { cpu: 100m, memory: 64Mi }
|
||||
containers:
|
||||
- name: runtime-operacao
|
||||
image: docker.io/library/runtime-operacao:1.3-split-1.20
|
||||
|
||||
@@ -19,6 +19,32 @@ spec:
|
||||
app: runtime-saude
|
||||
athleticmap.io/contexto: runtime-saude
|
||||
spec:
|
||||
# Espera o LOGIN no banco do tenant funcionar antes de subir o runtime.
|
||||
# O Argo aplica este Deployment ANTES de a etapa BANCO_CRIADO criar o papel
|
||||
# e a linha no PgBouncer. Sem esta espera o runtime cai na subida, e o
|
||||
# Kubernetes o religa com espera crescente (10 s, 20 s, 40 s, 80 s...):
|
||||
# era isso que levava a etapa MIGRACOES_CONCLUIDAS a 4-5 min (P4.9).
|
||||
# Aqui o laco e de 2 s e nao ha queda — o runtime sobe logo que o banco existe.
|
||||
initContainers:
|
||||
- name: espera-banco
|
||||
image: docker.io/library/postgres:16
|
||||
imagePullPolicy: Never
|
||||
command: ["sh", "-c"]
|
||||
args:
|
||||
- |
|
||||
n=0
|
||||
until psql "host=pgbouncer.plataforma-prod.svc port=6432 dbname=athleticmap_{{TENANT}} user=r_{{TENANT}} connect_timeout=3" -Atc 'select 1' >/dev/null 2>&1; do
|
||||
n=$((n+1)); [ $((n % 15)) -eq 0 ] && echo "ainda sem o banco do tenant ($((n*2)) s)"
|
||||
sleep 2
|
||||
done
|
||||
echo "banco pronto"
|
||||
env:
|
||||
- name: PGPASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef: { name: db-credentials, key: password }
|
||||
resources:
|
||||
requests: { cpu: 10m, memory: 16Mi }
|
||||
limits: { cpu: 100m, memory: 64Mi }
|
||||
containers:
|
||||
- name: runtime-saude
|
||||
image: docker.io/library/runtime-saude:1.2-demo
|
||||
|
||||
Reference in New Issue
Block a user