Files
gitea/docs/actions-runner.md

35 lines
1.7 KiB
Markdown

# Gitea Actions e runner
Gitea Actions (compatibile con workflow GitHub Actions) è abilitato di default da 1.21 (`[actions] ENABLED=true`). **Lo stack attuale non include un runner**: senza di esso i job restano in coda.
## Passi
1. Abilitare Actions nel repo: Impostazioni → "Abilita Actions del repository" (disattivo per default).
2. Ottenere un token di registrazione:
- istanza: `<url>/-/admin/actions/runners`
- organizzazione: `<url>/<org>/settings/actions/runners`
- repo: `<url>/<owner>/<repo>/settings/actions/runners`
- CLI: `gitea actions generate-runner-token [--scope owner/repo]`
3. Registrare e avviare il runner (binario "Gitea Runner", prima `act_runner`):
```bash
gitea-runner register --no-interactive --instance <URL> --token <TOKEN>
gitea-runner daemon
```
L'istanza deve essere raggiungibile da runner e container dei job: **non** `localhost`/`127.0.0.1`; usare l'URL pubblico o un indirizzo LAN. Il file `.runner` creato non va modificato a mano.
4. Il runner usa Docker per isolare i job (daemon Docker necessario; montare `/var/run/docker.sock` se containerizzato — implica privilegi elevati sull'host).
5. Workflow in `.gitea/workflows/*.yaml` (anche `.github/workflows`):
```yaml
name: demo
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- run: echo "ciao"
```
`runs-on` deve corrispondere a un'etichetta (label) registrata dal runner.
## Config server
`[actions]`: DEFAULT_ACTIONS_URL (github), log retention 365g, artifact 90g, timeout task zombie 10m / endless 3h / abandoned 24h. Segreti e variabili: Impostazioni repo/org → Actions.
Non verificati qui (consultare docs.gitea.com/usage/actions): compose del runner, variabili d'ambiente, formato label.