1.5 KiB
1.5 KiB
Chaîne Gitea → Semaphore
Gitea valide, Semaphore exécute. Semaphore ne suit pas main mais la branche
valide, que seul le workflow Gitea fait avancer :
push sur main ──► lint : yamllint, ansible-lint (profil production), syntax-check,
list-tasks, rendu de daemon.json (JSON valide, 2 scénarios),
rendu du script DOCKER-USER (sh -n)
│ succès
▼
promouvoir : main ──► valide (+ déclenchement Semaphore, facultatif)
│
▼
Semaphore (dépôt sur la branche « valide ») exécute site.yml
Un commit qui casse le contrôle n'atteint jamais valide, donc jamais Semaphore.
Côté Gitea
- secret
GITEA_TOKEN_PROMOTION: jeton d'un compte autorisé à pousser survalide(protéger la branchevalidepour que seul ce compte puisse y écrire) ; - facultatif, pour lancer Semaphore après promotion : variables
SEMAPHORE_URL,SEMAPHORE_PROJECT_ID,SEMAPHORE_TEMPLATE_IDet secretSEMAPHORE_TOKEN. La tâche est créée en dry run (--check).
Côté Semaphore
- dépôt : ce projet, branche
valide(clé « Login with password » du comptesvc-semaphore) ; - inventaire :
inventory/hosts.yml, clé SSH root du compteansible; - modèle de tâche :
site.yml, premier passage en--check --diff; - collections :
ansible.posix(voircollections/requirements.yml).