fix(ci) : l'IaC de factory tourne de nouveau (OpenTofu dans le job, mode plan) ; le jeton de cms écrit les règles du WAF #66

Merged
arcodange merged 4 commits from arcodange/cms-waf into main 2026-10-08 11:48:44 +02:00
Owner

Ce qui a été appliqué (2026-10-08, run 10024, sur le pi3)

Apply complete! Resources: 2 added, 2 changed, 2 destroyed. Le jeton cf_arcodange_cms_token est remplacé par un jeton qui porte en plus zone:Zone WAF Write. Le secret Gitea CLOUDFLARE_API_TOKEN de cms et kvv1/cloudflare/cms/cf_arcodange_cms_token ont suivi. Le plan relu avant (run 10015, mode plan) ne contenait rien d'autre.

Demande du fondateur : « passe par le projet factory pour ajouter la permission manquante », pour la règle qui ferme le registre de la forge sur le nom public (cms, cloudflare/waf.tf).

Le workflow IaC était cassé depuis le 2026-08-26

dflook/terraform-apply est une action conteneur. Depuis 93e7abf, les conteneurs de job reçoivent --add-host, et Docker refuse alors de lancer le conteneur de l'action dans le réseau du job : conflicting options: custom host-to-IP mapping and the network mode (run 10014, pi3). Le dernier apply réussi datait du 2026-07-24, sur le pi1.

  • OpenTofu s'installe par opentofu/setup-opentofu (une action JavaScript) et tourne dans ubuntu-latest-ca.
  • Un dispatch peut demander mode: plan pour lire le plan sans rien appliquer. Un push applique comme avant.

⚠ Le passage OIDC ne marche pas sur le runner du Mac

Le job « Auth with gitea for vault » échoue sur arcodange_laptop_runner : curl sort en 6, puis en 28 une fois le nom résolu, parce que les conteneurs de ce runner n'atteignent pas webapp.arcodange.lab. L'apply est passé runner du Mac en pause (runner.sh down, puis up). Une piste durable : une étiquette propre aux pi pour les workflows qui passent par Vault.

🤖 Generated with Claude Code

## Ce qui a été appliqué (2026-10-08, run 10024, sur le pi3) `Apply complete! Resources: 2 added, 2 changed, 2 destroyed.` Le jeton `cf_arcodange_cms_token` est remplacé par un jeton qui porte en plus `zone:Zone WAF Write`. Le secret Gitea `CLOUDFLARE_API_TOKEN` de `cms` et `kvv1/cloudflare/cms/cf_arcodange_cms_token` ont suivi. Le plan relu avant (run 10015, mode `plan`) ne contenait rien d'autre. Demande du fondateur : « passe par le projet factory pour ajouter la permission manquante », pour la règle qui ferme le registre de la forge sur le nom public (cms, `cloudflare/waf.tf`). ## Le workflow IaC était cassé depuis le 2026-08-26 `dflook/terraform-apply` est une action **conteneur**. Depuis 93e7abf, les conteneurs de job reçoivent `--add-host`, et Docker refuse alors de lancer le conteneur de l'action dans le réseau du job : `conflicting options: custom host-to-IP mapping and the network mode` (run 10014, pi3). Le dernier `apply` réussi datait du 2026-07-24, sur le pi1. - OpenTofu s'installe par `opentofu/setup-opentofu` (une action JavaScript) et tourne dans `ubuntu-latest-ca`. - Un dispatch peut demander `mode: plan` pour lire le plan sans rien appliquer. Un `push` applique comme avant. ## ⚠ Le passage OIDC ne marche pas sur le runner du Mac Le job « Auth with gitea for vault » échoue sur `arcodange_laptop_runner` : `curl` sort en 6, puis en 28 une fois le nom résolu, parce que les conteneurs de ce runner n'atteignent pas `webapp.arcodange.lab`. L'`apply` est passé runner du Mac **en pause** (`runner.sh down`, puis `up`). Une piste durable : une étiquette propre aux pi pour les workflows qui passent par Vault. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
arcodange added 4 commits 2026-10-08 11:46:56 +02:00
La règle forge_registre_ferme (cms/cloudflare/waf.tf, cloudflare_ruleset de phase http_request_firewall_custom) ferme le registre de la forge sur le nom public. Gratuit (5 règles au forfait Free). Ajouter le nom remplace le jeton (replace_triggered_by) : le secret Gitea CLOUDFLARE_API_TOKEN de cms et Vault suivent dans le même apply.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
dflook/terraform-apply est une action CONTENEUR ; depuis 93e7abf (2026-08-26) les conteneurs de job reçoivent --add-host, et Docker refuse de lancer le conteneur de l'action dans le réseau du job (« conflicting options: custom host-to-IP mapping and the network mode », run 10014 sur pi3). Le dernier apply réussi datait du 2026-07-24 (pi1). OpenTofu s'installe désormais par opentofu/setup-opentofu (JavaScript) et tourne dans ubuntu-latest-ca. Un dispatch peut demander mode=plan pour lire le plan sans rien appliquer ; un push applique comme avant.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Le runner du laptop ne résout pas *.arcodange.lab dans ses conteneurs de job (curl sort en 6 sur webapp.arcodange.lab pendant le passage OIDC, run 10015) ; les runners des pi le font par --add-host. Le job pose la même résolution (ingress 192.168.1.201) seulement si elle manque.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This reverts commit 41641e56ad.
arcodange merged commit 04c74495ff into main 2026-10-08 11:48:43 +02:00
arcodange deleted branch arcodange/cms-waf 2026-10-08 11:49:37 +02:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: arcodange-org/factory#66