This repository has been archived on 2026-06-26. You can view files and clone it, but cannot push or open issues or pull requests.
Set-OPS/instance/plan/bases-donnees.yml
Daniel Allaire 17f65efb18 Decouplage moteur/instance Phase 2a : sortir le plan
Les 5 registres (serveurs/applications/bases-donnees/domaines/nomenclature)
quittent docs/ pour instance/plan/. Localisation :
- scripts : variable d'env SETOPS_INSTANCE (defaut <depot>/instance) ;
- roles/playbooks : variable setops_plan_dir (group_vars d'instance).

docs/ ne garde que les guides .md + dependances-groupes.yml (moteur).
.ansible-lint exclut instance/plan/ (registres de donnees).

Non destructif : diff vide, ansible-lint 0 echec, include_vars via
setops_plan_dir teste. (Phase 2b : l'inventaire.)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 09:10:49 -04:00

56 lines
2 KiB
YAML

---
# Registre des bases de donnees applicatives Set-OPS.
#
# Niveaux :
# serveurs_bd : les serveurs de base de donnees (un ou plusieurs), nommes.
# "groupe" relie un serveur nomme au groupe Ansible qui l'heberge.
# bases_donnees: une base = un identifiant unique -> serveur, base, proprietaire, secret.
# consommateur : QUI utilise la base. Interprete selon "portee" :
# portee=application : consommateur = id d'une application (docs/applications.yml)
# portee=groupe : consommateur = groupe operationnel (base PARTAGEE)
# portee=hote : consommateur = hote de l'inventaire
# Defaut : groupe (retrocompatible).
# usage : etiquette libre (principale, partagee, ...). Une appli peut avoir
# plusieurs bases (portee/usage differents).
#
# Une application A (groupe G, hote H) recoit les bases ou :
# (portee=application ET consommateur=A) OU (portee=groupe ET consommateur=G)
# OU (portee=hote ET consommateur=H). Plusieurs DSN par application sont possibles.
#
# La chaine de connexion (DSN) se derive : <type>://<proprietaire>:<secret>@<hote>:<port>/<base>
# C'est le DSN qui lie la bonne instanciation d'application a sa base.
#
# "secret" nomme une variable Ansible Vault (jamais le mot de passe en clair).
serveurs_bd:
pg-principal:
type: postgres
hote: "10.1.13.11"
port: 5432
groupe: serveur_postgresql
bases_donnees:
keycloak:
serveur: pg-principal
base: keycloak
proprietaire: keycloak
secret: vault_bd_keycloak
consommateur: serveur_keycloak
portee: groupe
usage: principale
icingadb:
serveur: pg-principal
base: icingadb
proprietaire: icingadb
secret: vault_bd_icingadb
consommateur: serveur_icinga
portee: groupe
usage: principale
forgejo:
serveur: pg-principal
base: forgejo
proprietaire: forgejo
secret: vault_bd_forgejo
consommateur: serveur_forgejo
portee: groupe
usage: principale