83. pepsi-config

Inspecter et modifier la configuration effective partagée par tous les composants.

83.1. Rôle

pepsi-config consulte, développe, affiche et modifie la configuration Pepsi fusionnée. Chaque composant lit le même fichier de configuration au format INI et la même surcouche en base de données (pepsi.config_override), de sorte qu’un seul outil les sert tous et qu’aucun autre binaire n’a de sous-commande config. C’est une CLI d’opérateur, pas une étape. Référence : pepsi-config(1).

Les commandes de lecture rapportent la configuration effective — le fichier amendé par la surcouche. Une base de données injoignable n’est pas une erreur : la configuration du fichier est rapportée avec un avertissement à la place, car une base de données injoignable est souvent précisément le moment où un opérateur se saisit de cet outil. Les commandes d’écriture ne modifient que la surcouche ; elles ne touchent jamais au fichier de configuration, qui reste celui de l’opérateur. Les écritures se connectent sous le rôle PostgreSQL pepsi-config (adopté automatiquement lorsque le démarrage se fait en root), de sorte que la question de savoir qui peut modifier la configuration est une autorisation de base de données plutôt qu’un contrôle dans ce programme.

83.2. Fonctionnalités

  • get SECTION OPTION — imprimer la valeur d’une option dans une section ; avec --filename la valeur est traitée comme un chemin et subit l’expansion $.

  • pathsub PATH_EXPR — substituer les marqueurs ${VAR}/$VAR dans une expression de chemin depuis la section [PATHS] et l’environnement.

  • dump — imprimer la configuration fusionnée ; --diagnostics y ajoute la sortie supplémentaire de l’analyseur, --origin annote chaque valeur avec la couche dont elle provient (file, ou la portée de base de données qui l’a posée en dernier) et --scope résout la chaîne pour une portée autre que global.

  • set SECTION OPTION VALUE / unset SECTION [OPTION] — écrire ou retirer une surcharge (ou, pour unset sans option, une section entière) dans la surcouche en base de données à la portée --scope (global par défaut, ou domain:<d> ou address:<a>). Les sections lues depuis le seul fichier sont refusées.

  • list — imprimer les surcharges stockées, éventuellement restreintes par --scope et en incluant les lignes préparées avec --drafts.

  • export FICHIER / import FICHIER — écrire et restaurer une archive chiffrée par mot de passe du répertoire de configuration (- pour l’entrée/sortie standard ; --from/--into choisissent le répertoire, --password-file évite la question, --force écrase les fichiers existants). C’est la moitié d’une sauvegarde que les outils propres à PostgreSQL ne peuvent pas couvrir : le fichier de configuration et les fragments secrets.d.

Les valeurs qui sont des secrets sont masquées dans la sortie de dump, de sorte qu’un dump peut être joint à un rapport de bogue. Un set proposé est validé avant d’être stocké, en construisant la configuration que le changement produirait et en exécutant dessus l’analyseur propre à l’étape propriétaire : une valeur qui empêcherait un programme de démarrer est refusée plutôt qu’écrite.

83.3. Validation

pepsi-config dump s’associe au check de pepsi-setup(1) lors de la validation d’une installation : check interroge le DNS en service, tandis que dump montre les valeurs effectives que les composants verront réellement.

83.4. Voir aussi

pepsi-setup, Configuration, pepsi-config(1), pepsi.conf(5).