# Forgejo Actions — CI/CD do Shivao ## Como ativar (uma vez) ### 1. Configure um runner Forgejo no Coolify ```bash # Sub-domínio sugerido: actions.pontualtech.work (DNS A → Hetzner) # Sobe via Coolify usando docker-compose: ``` ```yaml # Cole no Coolify → Pontualtech → New Resource → Docker Compose Empty services: forgejo-runner: image: code.forgejo.org/forgejo/runner:6 restart: unless-stopped environment: FORGEJO_INSTANCE_URL: https://git.pontualtech.work FORGEJO_RUNNER_REGISTRATION_TOKEN: ${RUNNER_TOKEN} # pega em git.pontualtech.work/admin/runners volumes: - runner_data:/data - /var/run/docker.sock:/var/run/docker.sock volumes: runner_data: ``` ### 2. Configure secrets no Forgejo `git.pontualtech.work/karlao/shivao-projeto/settings/actions/secrets` | Secret | Como obter | |---|---| | `SHIVAO_KEYSTORE_BASE64` | `base64 -w0 ~/Downloads/Shivao-keystore-backup/shivao-release-CAPACITOR.keystore` | | `SHIVAO_KEYSTORE_PWD` | `ShivaoKeystore2026!` (a senha que você definiu) | | `FORGEJO_TOKEN` | Settings → Applications → Generate New Token (permissions: write:repository) | ### 3. Triggers do workflow - **Auto:** push em `master` que toque em `app/`, `mobile/` ou `scripts/sync-html.mjs` - **Manual:** botão "Run workflow" no painel Forgejo Actions ## Output Cada build gera: - APK assinado: `Shivao-v{X.Y.Z}.apk` - AAB assinado: `Shivao-v{X.Y.Z}.aab` - Anexados como artifact (download via UI Forgejo) - Se trigger for manual: cria release `v{X.Y.Z}-ci` no repo ## Vantagens vs build local - ✅ Zero setup local — Karlão pode editar HTML do iPad e o build roda no servidor - ✅ Imutável e reproduzível - ✅ Self-hosted (alinhado com `feedback_self_hosted.md`) - ✅ Logs centralizados - ⚠️ Custo: 1 container Coolify rodando (low-resource, ~50MB RAM idle) ## Alternativas se runner não funcionar - **Codemagic:** 500min grátis/mês, conecta ao Forgejo via webhook - **GitHub Actions (free tier):** mirror do repo no GitHub → workflow padrão - **Build local:** `cd mobile && npm run android:build:aab` (já documentado em mobile/README.md)