fix(plataforma): o CronJob espera a rede aceitar o pod novo

This commit is contained in:
deploy
2026-09-21 11:40:44 +00:00
parent 2014c3789e
commit 804f051cc5
@@ -65,6 +65,30 @@ data:
echo "[$(date -u +%FT%TZ)] alvo: ${ALVO}"
# 0. Esperar a REDE aceitar este pod.
#
# O controlador de rede do k3s leva dezenas de segundos para programar as
# NetworkPolicies de um pod RECEM-CRIADO. Ate la a conexao e RECUSADA na
# hora — o `curl` falha em milissegundos com "Could not connect", que
# parece Keycloak fora do ar e nao e.
#
# Medido em 2026-09-21: o primeiro disparo deste CronJob falhou assim,
# enquanto um pod de horas alcancava o mesmo endereco normalmente.
#
# Ate 24 tentativas, 5 s entre elas: dois minutos, que e mais do que o
# atraso observado e menos do que o intervalo de qualquer um dos tres.
i=0
until curl -sS -o /dev/null -m 5 "${KEYCLOAK_URL}" 2>/dev/null; do
i=$((i+1))
if [ "$i" -ge 24 ]; then
echo "ERRO: ${KEYCLOAK_URL} inalcancavel depois de 2 min." >&2
echo " Se for pod novo, e a politica de rede ainda nao programada;" >&2
echo " se persistir, confira o Service keycloak e a deny-cross-tenant." >&2
exit 1
fi
sleep 5
done
# 1. Token. O segredo vai por STDIN: em `argv` um `ps` dentro deste
# container o veria.
RESP="$(printf 'grant_type=client_credentials&client_id=operacao&client_secret=%s' \