0005 — Adota o CI 100% GitHub Actions, com a Release no Forgejo¶
Status: Aprovado · Responsável: Gustavo Madruga · Atualizado em: 2026-09-11 · Decidido em: 2026-08-31
Contexto¶
Este RD não decide nada novo: CI/CD dos apps num pipeline.yml único no GitHub Actions é norma
da casa — ADR central 0027. A mesma
0027 fixa a fronteira que importa aqui: é "0% Forgejo no CI", não "0% Forgejo". O Forgejo segue
hospedando a Release-artefato de app cliente offline, e a 0027 cita este app como o exemplo. O
que faltava era o rastro local.
Decisão¶
Em 2026-08-31 (commit 7b2eed3), o ci.yml, o docs.yml e o release.yml do Forgejo Actions
viraram um .github/workflows/pipeline.yml à la carte (decide → gate ∥ docs → release). Os
workflows .forgejo/ saíram no mesmo dia (commit 8cd44a3).
- Toolchain pelas actions (
setup-java25 +setup-gradle), sem a fábricaci-images. O alvo Java 8 segue no build (--release 8, decisão local 0001). - A Release continua no Forgejo. Numa tag
v*, o jobreleasebuilda o fat jar e cria a Release emfonte.xadm.bizpela API do Forgejo, com o jar como asset, autenticado porRELEASE_TOKEN(token Forgejo comwrite:repository, cadastrado no GitHub). O operador on-premise baixa da mesma URL de antes: a Release no Forgejo existe desde 2026-07-21 (commit1ed3816), e só mudou quem a cria. - Sem deploy. O app roda
java -jarna máquina do ERP de cada cliente, então não há recurso Coolify nem control-plane.
Consequências¶
- Quem publica o artefato é o runner GitHub, mas o destino é o Forgejo. Sem o
RELEASE_TOKEN, o jobreleasefalha: não publica pela metade. - O
pipeline.ymlé template rastreado da casa, aqui na variante sem deploy e com Release. Muda por re-derivação (/xadm-docs), não por edição solta. - Este RD é ponteiro: divergência de mérito sobre o modelo de CI se resolve no ADR central 0027, não aqui.