Set-OPS-Public/roles/serveur_forgejo
Daniel Allaire e214dcf4ed Forgejo au SSO OIDC (2e app SSO) — éprouvé sur forge-01
serveur_forgejo (10.0.0) : PostgreSQL via registre, exposé par l'edge
(auto-dérivé), source OAuth2 vers Keycloak (add-oauth idempotent), client
OIDC forgejo via serveur_keycloak_clients, auto-enregistrement OIDC
(identités depuis l'annuaire seulement).

Prouvé : testmail (LDAP) → « Se connecter avec Chezlepro » → compte
auto-créé, connecté au tableau de bord.

5 bugs de 1er déploiement corrigés : dépendance sendmail→postfix ;
app.ini propriété git (persiste secrets) ; ordre admin/migrations
(flush_handlers + wait_for) ; HTTP_ADDR 0.0.0.0 (edge distant) ;
auto-enregistrement OIDC.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-03 15:52:38 -04:00
..
defaults Forgejo au SSO OIDC (2e app SSO) — éprouvé sur forge-01 2026-07-03 15:52:38 -04:00
handlers Rendre le dry-run (--check) fiable sur les rôles applicatifs 2026-07-01 21:01:53 -04:00
meta Dimensionner les ressources VM depuis les logiciels hébergés 2026-06-30 10:07:04 -04:00
tasks Forgejo au SSO OIDC (2e app SSO) — éprouvé sur forge-01 2026-07-03 15:52:38 -04:00
templates Forgejo au SSO OIDC (2e app SSO) — éprouvé sur forge-01 2026-07-03 15:52:38 -04:00
README.md Set-OPS — moteur d'ecosystemes numeriques souverains (Alliance Boreale) 2026-06-24 20:17:46 -04:00

serveur_forgejo

Forge Git Forgejo (binaire officiel) — dépôts Git, CI, revue de code.

Rôle

  • Installe le binaire Forgejo (version épinglée, lien symbolique courant), utilisateur git.
  • Crée l'arborescence (/var/lib/forgejo, /etc/forgejo).
  • Base PostgreSQL via le registre (instance/plan/bases-donnees.yml, entrée forgejo).
  • app.ini : serveur derrière nginx (HTTP_ADDR=127.0.0.1, ROOT_URL https), DB, secrets, mailer vers serveur_sendmail, inscription désactivée, INSTALL_LOCK (pas d'assistant web).
  • Service systemd + création du compte administrateur initial (une fois).

Secrets requis (Vault)

serveur_forgejo_secret_key: "{{ vault_forgejo_secret_key }}"        # forgejo generate secret SECRET_KEY
serveur_forgejo_internal_token: "{{ vault_forgejo_internal_token }}" # forgejo generate secret INTERNAL_TOKEN
serveur_forgejo_admin_password: "{{ vault_forgejo_admin }}"
vault_bd_forgejo: "..."   # mot de passe BD (partage avec serveur_postgresql)

Variables principales

Variable Défaut Rôle
serveur_forgejo_version 10.0.0 Version (à vérifier/bumper)
serveur_forgejo_hostname forge.exemple.internal Domaine (via nginx)
serveur_forgejo_db_host 10.0.13.11 data-01

Notes / limites

  • Version à confirmer sur forgejo.org/download ; l'URL suit le motif officiel des releases.
  • Le site nginx publiant Forgejo se déclare côté serveur_nginx.
  • Mailer en SMTP simple vers le relais interne (sans TLS pour l'instant).
  • Non testé live (forge-01 planifié).

Prérequis

  • Dépendances serveur_postgresql, serveur_nginx, serveur_sendmail (cf. docs/dependances-groupes.yml).