Some checks are pending
Build Android (APK + AAB) / build-android (push) Waiting to run
LEGAL - GET /termos: termos de uso completos (11 seções) com aviso CRÍTICO de limitação de responsabilidade pra navegação náutica (não substitui chartplotter/cartas/atenção do skipper) - Reembolso CDC art. 49 (7 dias arrependimento) explicito - Lei aplicável Brasil + foro SP CI/CD - .forgejo/workflows/build-android.yml: pipeline completo (checkout → JDK17 → Android SDK → npm install mobile/ → cap sync → gradle bundleRelease + assembleRelease → upload artifacts → release no manual) - .forgejo/workflows/README.md: como configurar runner Forgejo no Coolify, secrets necessários (KEYSTORE_BASE64, KEYSTORE_PWD, FORGEJO_TOKEN), alternativas (Codemagic, GitHub Actions) - Trigger automático em push em app/, mobile/, scripts/sync-html.mjs - Trigger manual via botão Forgejo VALIDADO - Bundletool 1.17.2 instalado em ~/bundletool/ - AAB validado: arquivos OK - APK por device gerado: 2.8-2.9 MB (vs 3.4 MB universal — Play Store entrega menor) - ~/Downloads/Shivao-v1.2.0.apks (12MB, contém splits por arquitetura) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
63 lines
2.1 KiB
Markdown
63 lines
2.1 KiB
Markdown
# 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)
|