Commit Graph

12 Commits

Author SHA1 Message Date
deploy c65e858fb6 feat(molde): o realm nasce em portugues do Brasil
internationalizationEnabled vem FALSE por padrao no Keycloak, e ai ele cai no
en — o e-mail sairia em ingles mesmo com o emailTheme certo. defaultLocale
pt-BR e supportedLocales so pt-BR: uma opcao so nao mostra seletor de idioma na
tela de login.
2026-09-25 00:48:23 +00:00
deploy 16af89868a fix(molde): os temas no REALM, e nao dentro do cliente
Minha insercao anterior casou por substring e caiu no objeto do cliente spa,
onde loginTheme e emailTheme nao querem dizer nada — entao um tenant novo
continuava nascendo com a tela de fabrica, e o commit anterior dizia o
contrario.

Refeito carregando o JSON, tirando as chaves de onde nao pertenciam e provando
que o resto do documento e identico antes de gravar.
2026-09-25 00:37:54 +00:00
deploy 690175d6cf feat(molde): o realm do tenant nasce com os temas de login e de e-mail
O loginTheme eu tinha editado so na copia local e nunca empurrado — um tenant
novo ainda nasceria com a tela de fabrica. Vai junto com o emailTheme.
2026-09-25 00:36:17 +00:00
deploy 62aa13bbb1 fix(molde): a SPA precisa do NOME COMPLETO dos servicos
O nginx roteia /bff e /api com proxy_pass de variavel, e ai resolve por
requisicao usando a diretiva resolver. O resolver do nginx nao le os dominios
de busca do /etc/resolv.conf: pergunta o nome cru ao CoreDNS, que responde
NXDOMAIN para servico-bff.

O sintoma engana: 502 com could not be resolved no log do nginx, enquanto
getent hosts servico-bff dentro do MESMO pod resolve — porque o getent usa o
search e o nginx nao. E por isso que o escolinha sempre usou FQDN aqui.
2026-09-24 23:50:28 +00:00
deploy 935b6c65f0 feat(molde): o BFF, a cota que o comporta, o tema de login e as imagens do escolinha
O tenant provisionado subia com a tela de login de fabrica e o sistema vazio.
Quatro mudancas, medidas contra o escolinha que e o que funciona:

- 90-servico-bff.yaml: o quinto Deployment. A SPA chama o BFF para quase tudo;
  sem ele /bff devolve 502. As URLs apontam para os RUNTIMES, e nao para os
  treze servicos — e a diferenca deste molde para o do escolinha.
- a cota sobe para 10 pods e 2Gi: com quatro Deployments o tenant ja usava
  1232Mi de 1536Mi, e o BFF pede 256Mi. Caberia em repouso e estouraria no
  primeiro rollout.
- loginTheme athleticmap-v2 no realm, com o tema montado no Keycloak
  compartilhado.
- imagens alinhadas: frontend 2.67-csp-script e os runtimes 1.2-auditoria.

O que NAO mudou, e por que: ATM_API_URL continua no runtime-operacao e o
Ingress continua com uma rota. Os dois estao certos — o nginx da SPA roteia
/bff e /api por conta propria, e ATM_API_URL e o destino do que nao pertence a
grupo nenhum, hoje o webhook em /api/public. O cabecalho do molde ja dizia.
2026-09-24 23:42:16 +00:00
deploy 51072c153e feat(molde): frontendUrl no realm do tenant
Sem ele o Keycloak monta os links e o iss com o KC_HOSTNAME global
(auth-plataforma), e os runtimes do tenant validam contra ATM_ISSUER, que o
molde define como auth.athleticmap.com. Os dois tem de bater.

Nao da para resolver so no KC_HOSTNAME porque ele e um so e a plataforma
depende do valor antigo. Dai o frontendUrl por realm, que e para isto.
2026-09-24 23:10:49 +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
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
ATM Platform 97e0aeecd4 feat(P0.9): fase issuer - o issuer passa para athleticmap.com 2026-09-23 12:30:41 +00:00
ATM Platform eeda1e90da Revert "feat(P0.9): fase issuer - o issuer passa para athleticmap.com"
This reverts commit f4747712ad.
2026-09-23 12:22:02 +00:00
ATM Platform f4747712ad feat(P0.9): fase issuer - o issuer passa para athleticmap.com 2026-09-23 12:21:47 +00:00
deploy f6aeb233a7 feat(moldes): o molde do tenant novo entra no repositorio GitOps
Ate aqui ele vivia SO no monorepo, e o provisionamento roda DENTRO do cluster —
o pod do servico-captacao nao tinha como enxerga-lo. A etapa MANIFESTOS_GERADOS
falhava por configuracao vazia, e falhar fechado era o comportamento certo; o
que faltava era o molde chegar.

Pondo-o aqui, o pod precisa de UM volume em vez de dois: o mesmo clone do GitOps
serve de molde (moldes/consolidado) e de copia de trabalho (tenants/<nome>).

Os tres marcadores — TENANT, REALM e PLANO — batem com o RenderizadorDeMolde. Os
arquivos NAO sao YAML valido antes de renderizados, e isso e de proposito: um
`{{PLANO}}` literal aplicaria sem reclamar e criaria um tenant cujo plano se
chama "{{PLANO}}", com a barreira negando tudo depois.
2026-09-22 22:07:34 +00:00