Pular para conteúdo

0026 — Adota o CI 100% GitHub Actions e o deploy pelo control-plane

Status: Aprovado · Responsável: Gustavo Madruga · Atualizado em: 2026-09-11 · Decidido em: 2026-08-31

Contexto

Este RD não decide nada novo. O deploy orquestrado pelo central-backend, disparado pelo CI por API M2M, é norma da casa — ADR central 0026. O CI/CD num pipeline.yml único no GitHub Actions também — ADR central 0027. Os dois chegaram aqui no mesmo dia. O que faltava era o rastro local.

O número desta decisão local coincide por acaso com o do ADR central 0026.

Decisão

Em 2026-08-31, dois passos:

  1. Deploy pelo control-plane (commit 81a8763): o CI passou a pedir o deploy ao central-backend, autenticado por CENTRAL_DEPLOY_TOKEN (secret do repo no GitHub), no lugar da ponte SSH.
  2. Pipeline único (commit 234df87, mesmo dia): o .github/workflows/pipeline.yml funde gate, docs, build_jar, build_native e deploy, e o Forgejo deixa de rodar CI deste repo.

O deploy ancora na imagem fonte.xadm.biz/xadm/onpetro-xls (slug de registry, decisão local 0027), com os alvos jar e native do app.json build.targets. O endereço do control-plane é o domínio estável central-backend.xadm.biz, sem flavor de build (constituição §9).

Consequências

  • O pedido de deploy é assíncrono: o central só enfileira. Quem confirma que a entrega está de pé é o smoke de produção (decisão local 0024).
  • O recurso Coolify é casado pelo slug da imagem, não por uuid. Por isso um cutover blue-green não deixa o deploy órfão, como deixava o allow-list da ponte SSH.
  • O pipeline.yml é template rastreado da casa: muda por re-derivação (/xadm-docs), não por edição solta.
  • Este RD é ponteiro: divergência de mérito sobre o control-plane ou o modelo de CI se resolve nos ADRs centrais 0026 e 0027, não aqui.