34 lines
1.3 KiB
Markdown
34 lines
1.3 KiB
Markdown
# CI-BASELINE — Gitea Actions + runner Synology (DS220+)
|
|
|
|
Baseline VALIDÉE :
|
|
- runner : container.network = host
|
|
- job CI : container Node 22 (conforme engines)
|
|
- checkout : sans GitHub, basé sur workflow/event.json
|
|
- zéro apt-get dans le workflow
|
|
- durcissement DNS Node : NODE_OPTIONS=--dns-result-order=ipv4first
|
|
|
|
## Runner (DS220+) — configuration de référence
|
|
|
|
Fichier : /data/config.yaml dans le conteneur runner (ex: gitea-act-runner)
|
|
|
|
Section container attendue :
|
|
|
|
container:
|
|
network: host
|
|
options: >-
|
|
--add-host=gitea.archicratie.trans-hands.synology.me:192.168.1.20
|
|
-e NODE_OPTIONS=--dns-result-order=ipv4first
|
|
|
|
Pourquoi : sur cette infra, le DNS du bridge Docker (127.0.0.11) a généré ESERVFAIL / EAI_AGAIN / apt qui ne résout pas.
|
|
Le host network stabilise les résolutions (npm registry, deb.debian.org, etc.).
|
|
|
|
## Smoke test NAS (doit passer)
|
|
|
|
docker run --rm --network host mcr.microsoft.com/devcontainers/javascript-node:22-bookworm bash -lc "npm ping --registry=https://registry.npmjs.org"
|
|
|
|
## Symptômes -> cause -> action
|
|
|
|
- EAI_AGAIN / ESERVFAIL : runner pas en host network -> remettre container.network: host + restart runner
|
|
- EBADENGINE : mauvais Node -> container Node 22
|
|
- MODULE_NOT_FOUND scripts/check-anchor-aliases.mjs : fichier non commité -> git add/commit/push
|