From 2ef5037a713efdc216798e3d8adc6d4845a77915 Mon Sep 17 00:00:00 2001 From: Rui Date: Sun, 17 May 2026 20:38:01 +0200 Subject: [PATCH] docs: add centralized Gitea governance, project SSH remotes and unified features at user level --- global/doutrina_agentes.md | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/global/doutrina_agentes.md b/global/doutrina_agentes.md index fda62b5..5ca90f7 100644 --- a/global/doutrina_agentes.md +++ b/global/doutrina_agentes.md @@ -94,3 +94,33 @@ Para evitar vazamentos de credenciais no disco e garantir imunidade absoluta con Caso a API do Gitea esteja temporariamente indisponível, a IA pode recorrer à leitura dos arquivos locais localizados em `/home/deploy/instrucoes/` como contingência secundária. 3. 🔐 **Transporte Remoto e Escrita (Chaves SSH - ESTÁVEL)**: Para operações de sincronização, deploys ou pushes do Git, os agentes devem usar exclusivamente a chave SSH do usuário `deploy` (`~/.ssh/id_ed25519`), prevenindo qualquer exposição de chaves privadas em logs ou variáveis de ambiente. + +--- + +## 🌐 Governança e Integração Centralizada no Gitea (Nível de Usuário/Sistema) + +Para maximizar a segurança (SecOps), a agilidade de deploy (GitOps) e a escalabilidade do enxame de agentes, adotamos uma arquitetura de governança unificada no **Gitea no nível de Usuário e Sistema**, contornando configurações isoladas e repetitivas por repositório. + +### 🔑 1. Autenticação Unificada por Chave SSH Global (User Settings) +Em vez de configurar Deploy Keys individuais para cada repositório, a chave pública SSH de cada VPS (nó do enxame) é cadastrada diretamente no perfil global do Usuário Administrador (`ruicesar`) em `/user/settings/keys`. +* **Permissão herdada**: Qualquer conexão Git disparada a partir dos nós do enxame possui automaticamente as permissões do usuário em todos os repositórios atuais e futuros. +* **Padrão de Endereços SSH dos Projetos ( VPS 4 & Swarm )**: + * 📁 **instrucoes_gerais**: `ssh://git@10.99.0.3/ruicesar/instrucoes_gerais.git` + * 📁 **scoreodonto.com**: `ssh://git@10.99.0.3/ruicesar/scoreodonto.com.git` + * 📁 **mercado.clube67.com**: `ssh://git@10.99.0.3/ruicesar/mercado.clube67.com.git` + * 📁 **subdominio.clube67.com**: `ssh://git@10.99.0.3/ruicesar/subdominio.clube67.com.git` + +### 🔌 2. Integração Global por Webhook do Sistema (System Webhook) +Em vez de criar Webhooks de push repetitivos para cada repositório das aplicações: +* Configuramos um único **Webhook do Sistema** em `/admin/hooks` que atua de forma global em todos os repositórios (atuais e futuros). +* **Parâmetros de Produção**: + * **URL de Destino**: `http://127.0.0.1:5000/webhook` (Disparo direto local em localhost na VPS 3 do Gitea). + * **Content Type**: `application/json` + * **Gatilho**: Apenas o evento de **Push**. +* **Filtragem**: O Swarm Dispatcher recebe os pushes globais e executa apenas os repositórios mapeados no fluxo de deploys do enxame, mantendo o processo 100% limpo e livre de redundâncias. + +### 🎯 3. Outros Recursos Unificados a Nível de Usuário/Sistema +Para mantermos o ecossistema no estado da arte de DevOps, utilizamos os seguintes recursos globais do Gitea: +* 📁 **Gitea Organizations (Organizações - ex: clube67)**: Agrupa todos os repositórios sob um único tenant corporativo, permitindo gerenciar permissões de equipes (Teams) e IAs de uma única vez para todos os projetos. +* 🔑 **Personal Access Tokens (PAT - Nível de Usuário)**: Criação de um Token de Acesso único do usuário administrador injetado na RAM dos agentes, dando autorização de API para ler issues, wikis e logs de todos os repositórios atuais e futuros de forma centralizada. +* 🏷️ **Rótulos Padrão (Global Labels)**: Padronização de etiquetas de Issues (ex: `bug-self-healing`, `deploy-staging`, `security-incident`) herdadas automaticamente por qualquer novo repositório, agilizando a triagem de erros.