Commit Graph

469 Commits

Author SHA1 Message Date
deploy 4e977df8b7 fix(plataforma): KC_HOSTNAME vira URL COMPLETA, senao o e-mail leva link quebrado
So o hostname faz o Keycloak resolver esquema e porta a partir da requisicao.
O provisionamento chama a Admin API por dentro (http://keycloak:8080), e o link
do convite saiu http://auth-plataforma.athleticmap.com:8080 — o cliente clicava
e dava ERR_CONNECTION_TIMED_OUT.
2026-09-24 22:54:55 +00:00
deploy 298a7678ac feat(plataforma): saida para o SMTP na 587, so para quem manda e-mail
O deny-cross-tenant libera 443 para a internet e nada mais. O Keycloak batia em
Network is unreachable na 587, e o erro que chegava ao provisionamento era
Failed to send execute actions email — que manda procurar no SMTP, nao na rede.
2026-09-24 22:45:15 +00:00
deploy dc510205d1 feat(tenant): Role por tenant para os dois Secrets que o provisionamento le
db-credentials (a senha do papel) e <tenant>-tls (so a existencia, que e como a
etapa DNS_PUBLICADO sabe que o cert-manager terminou). Por tenant porque o nome
do TLS depende dele e resourceNames nao aceita curinga — e dar get em qualquer
Secret do namespace deixaria o provisionamento ler a chave Asaas DO CLIENTE.
2026-09-24 22:39:50 +00:00
provisionamento Athletic Map 9b95eb2ae0 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:34:42 +00:00
provisionamento Athletic Map df249c9516 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:33:46 +00:00
provisionamento Athletic Map e2ec11b311 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:33:09 +00:00
provisionamento Athletic Map b9344c10d3 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:32:49 +00:00
provisionamento Athletic Map 82307bd2c4 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:32:30 +00:00
provisionamento Athletic Map 0b185f3a09 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:29:03 +00:00
provisionamento Athletic Map 51baeb9341 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:28:40 +00:00
provisionamento Athletic Map 6118eb5142 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 22:28:17 +00:00
deploy bf882f0824 chore(plataforma): servico-captacao:2.9-corrigir-papel 2026-09-24 22:27:03 +00:00
deploy 3e1d9c4ec1 chore(plataforma): servico-captacao:2.8-userlist-senha 2026-09-24 22:22:18 +00:00
provisionamento Athletic Map f0b0a9191a feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:53:25 +00:00
deploy 9c29f8c347 chore(plataforma): servico-captacao:2.7-pool-recarrega 2026-09-24 21:52:23 +00:00
deploy 298b3d13fb 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.
2026-09-24 21:52:19 +00:00
provisionamento Athletic Map 6009f98113 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:42:12 +00:00
provisionamento Athletic Map f08d1341c6 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:41:21 +00:00
provisionamento Athletic Map c3f14f77ea feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:40:50 +00:00
provisionamento Athletic Map 71f6822e2a feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:40:28 +00:00
provisionamento Athletic Map 264a2dcdb6 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste-2
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:40:11 +00:00
provisionamento Athletic Map 76e11b9aca feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:39:54 +00:00
provisionamento Athletic Map 3f965f07d5 feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:39:03 +00:00
provisionamento Athletic Map 88aab7d17d feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:38:30 +00:00
provisionamento Athletic Map 96888649bc feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:38:09 +00:00
provisionamento Athletic Map bcc7de951b feat(plataforma): PgBouncer passa a servir o tenant escolinha-de-teste
Escrito pela etapa BANCO_CRIADO do provisionamento.
2026-09-24 21:37:53 +00:00
deploy 754475e94d chore(plataforma): servico-captacao:2.6-banco-do-tenant 2026-09-24 21:36:36 +00:00
deploy 85ee182b43 feat(plataforma): infraestrutura da etapa BANCO_CRIADO
RBAC amarrado por resourceNames (db-credentials nos tenants, pgbouncer-userlist
so aqui), netpol do PgBouncer por ROTULO em vez de por nome, e a credencial de
administracao do Postgres compartilhado para o servico-captacao.
2026-09-24 21:36:33 +00:00
deploy 642e091641 chore(plataforma): servico-captacao:2.5-cadastro-do-cliente 2026-09-24 21:15:28 +00:00
provisionamento Athletic Map b51778076f feat(tenant): provisiona escolinha-de-teste
Cliente: Escolinha de Teste
Assinatura: sub_h2dtdvlbt83iq2lg
Plano: (nao informado)
Realm: athleticmap-6

Gerado pelo provisionamento automatico (P5.2/P5.3) a partir do molde
consolidado de P4.9. O ApplicationSet cria a Application sozinho pelo
gerador de diretorio sobre tenants/*.
2026-09-24 21:03:10 +00:00
deploy 466c70fb25 chore(plataforma): servico-captacao:2.4-retomar-relogio 2026-09-24 21:01:51 +00:00
deploy 5e5c618273 chore(plataforma): servico-captacao:2.3-retomar 2026-09-24 20:51:32 +00:00
deploy c3e821ba90 chore(plataforma): servico-captacao:2.2-smtp-hostinger 2026-09-24 20:38:12 +00:00
deploy d68cf37493 feat(plataforma): SMTP pela Hostinger, e o molde do realm no repositorio
O dominio athleticmap.com tem MX na Hostinger e SPF que so autoriza a
Hostinger. A credencial foi medida: aceita em smtp.hostinger.com:587,
recusada com 535 no Gmail e no Titan.

O molde do realm nunca tinha sido empurrado — PROVISIONAMENTO_REALM_TEMPLATE
estava vazio, e a etapa REALM_CRIADO teria parado nele logo depois do SMTP.
2026-09-24 20:38:05 +00:00
deploy 5a60e81b1f chore(plataforma): rotaciona o token do Gitea do provisionador
O anterior apareceu num output de printenv em 2026-09-24. A senha do Keycloak
no mesmo Secret nao foi exposta e foi reselada sem mudar.
2026-09-24 20:26:36 +00:00
provisionamento Athletic Map 3e9bc6c370 feat(tenant): provisiona escolinha-de-teste-2
Cliente: (sem nome no pedido)
Assinatura: sub_60id65hukv48tshu
Plano: (nao informado)
Realm: athleticmap-7

Gerado pelo provisionamento automatico (P5.2/P5.3) a partir do molde
consolidado de P4.9. O ApplicationSet cria a Application sozinho pelo
gerador de diretorio sobre tenants/*.
2026-09-24 20:05:10 +00:00
deploy fef8108cd7 chore(plataforma): servico-captacao:2.1-plano-opcional 2026-09-24 20:03:54 +00:00
deploy 6733faea2c chore(plataforma): servico-captacao:2.0-nome-por-documento 2026-09-24 19:56:34 +00:00
provisionamento Athletic Map 101fa8108d feat(tenant): provisiona escolinha-de-teste
Cliente: Escolinha de Teste
Assinatura: sub_h2dtdvlbt83iq2lg
Plano: (nao informado)
Realm: athleticmap-6

Gerado pelo provisionamento automatico (P5.2/P5.3) a partir do molde
consolidado de P4.9. O ApplicationSet cria a Application sozinho pelo
gerador de diretorio sobre tenants/*.
2026-09-24 18:58:52 +00:00
deploy e9281b22cd chore(plataforma): servico-captacao:1.9-selar-cert-vazio 2026-09-24 18:56:37 +00:00
deploy 18bae612fe chore(plataforma): servico-captacao:1.8-causa-no-log 2026-09-24 18:41:26 +00:00
deploy 90fbb681c7 chore(plataforma): servico-captacao:1.7-nome-do-lead 2026-09-24 18:09:41 +00:00
ATM Platform a0066235ed chore(teste): preco do bronze em R$ 5 para a venda de prova
Temporario e marcado no proprio arquivo. A venda de teste exercita link,
pagamento, webhook e provisionamento, e nao faz sentido gastar R$ 170 nisso.
Sobreposicao por ambiente: tirar e remover o bloco, sem tocar no codigo.
2026-09-24 17:42:10 +00:00
ATM Platform cb66407c35 fix(plataforma): devolver o que a rodada de imagem apagou do captacao
O publicar_servico_captacao.py escreve o manifesto a partir da copia LOCAL do
athletic-map-deploy, e essa copia esta defasada. Ao subir a tag 1.6 ele levou
junto tudo o que foi ligado hoje no servidor: ASAAS_API_KEY, CAPTACAO_ORIGEM no
dominio novo e as QUATRO credenciais do provisionamento — 56 linhas.

O pod chegou a subir sem elas. E exatamente a divergencia de espelho registrada
hoje de manha, agora com consequencia medida.

Restaurado a partir do commit anterior, com a tag nova aplicada por cima.
2026-09-24 17:37:00 +00:00
deploy c6385f1d61 chore(plataforma): servico-captacao:1.6-assinatura 2026-09-24 17:35:19 +00:00
ATM Platform 2a3558137f feat(P5.8): a chave do Asaas chega ao servico-captacao
E o mesmo Secret que o servico-financeiro ja usa — nao ha credencial nova a
selar, muda so quem a le. Os dois fluxos continuam distintos: o financeiro cobra
o ATLETA, o captacao cobra o TENANT.

optional: true de proposito. Um ambiente sem Asaas sobe do mesmo jeito, e a
venda que precisar da chave recusa nomeando a propriedade. Derrubar o pod
tiraria do ar o provisionamento e a captura de lead, que nao dependem disso.
2026-09-24 17:02:19 +00:00
ATM Platform 2996ca7a92 docs(P3.3): restaurar o cabecalho que a rotacao apagou
O kubeseal devolve YAML limpo, e a rotacao do token levou junto 17 linhas que
diziam por que ha dois segredos, que o AsaasConfig recusa subir se forem iguais,
e que 15 recusas seguidas param a fila da conta no Asaas.

Entra tambem o que mudou hoje: o token do webhook nao precisa mais ser digitado
no painel, porque o script o grava pela API.
2026-09-23 21:45:45 +00:00
ATM Platform 305ad93795 fix(P3.3): token do webhook de cobranca, acertado nos dois lados 2026-09-23 21:30:30 +00:00
ATM Platform 6c6478eea5 fix(P5.9): token do webhook da assinatura 2026-09-23 20:28:21 +00:00
ATM Platform c391dc5aa0 fix(P5.9): token do webhook cadastrado no Asaas 2026-09-23 19:19:51 +00:00