Reviewed-on: #10 Co-authored-by: bQUARKz <bquarkz@gmail.com> Co-committed-by: bQUARKz <bquarkz@gmail.com>
32 lines
1.5 KiB
Markdown
32 lines
1.5 KiB
Markdown
---
|
|
id: LSN-0021
|
|
discussion: DSC-0020
|
|
title: Lesson - Jenkins Gitea Integration and Non-Standard Path
|
|
status: done
|
|
created: 2026-04-07
|
|
---
|
|
|
|
# Lesson - Jenkins Gitea Integration and Non-Standard Path
|
|
|
|
## Contexto
|
|
|
|
A integração de CI foi alterada para suportar o Gitea como servidor de repositórios e o Jenkins como executor, mantendo uma localização específica para o `Jenkinsfile` solicitada pelo usuário.
|
|
|
|
## O Que Foi Feito
|
|
|
|
1. **Localização**: O `Jenkinsfile` foi consolidado em `files/config/Jenkinsfile`.
|
|
2. **Notificação Gitea**: Adicionado suporte ao comando `giteaStatus` no pipeline do Jenkins para fornecer feedback visual diretamente nos commits e PRs do Gitea.
|
|
3. **Limpeza**: Removidas configurações de GitHub Actions.
|
|
|
|
## Como Pensar Sobre o Modelo
|
|
|
|
- **Localização**: Embora o padrão seja manter o `Jenkinsfile` na raiz, o Jenkins permite configurar o caminho do script. Nesses casos, a flexibilidade do Jenkins deve ser usada para atender requisitos de organização de arquivos do projeto.
|
|
- **Integração de Status**: A sincronização de status entre Jenkins e Git (Gitea neste caso) é fundamental para a experiência de desenvolvimento (DX), permitindo que desenvolvedores vejam o resultado do CI sem sair da interface do Gitea.
|
|
- **Centralização em Makefile**: Manter a lógica de CI no `Makefile` (`make ci`) permite que o `Jenkinsfile` seja apenas um orquestrador de chamadas de status e execução de containers, facilitando a migração ou depuração local.
|
|
|
|
## Referencias
|
|
|
|
- DEC-0003
|
|
- AGD-0018
|
|
- PLN-0003
|