Development #21725
Faciliter la personnalisation des variables de configurations
100%
Description
Actuellement essentiellement déclarées dans inventory.cfg
, fichier versionné donc pas fait pour être modifié.
Créer un local_inventory.exemple
en exemple, dans .gitignore
ignorer local_inventory.yml
, update du README
pour décrire l'utilisation de la chose.
Fichiers
Sous-tâches
Révisions associées
Historique
Mis à jour par Emmanuel Cazenave il y a environ 6 ans
Passé une heure sur la stratégie suivante : déplacer toutes les variables de configuration de inventory.yml vers group_vars/all.yml.
Dans l'idée que ça permettrait de redéfinir uniquement les variables qu'on veut modifier dans un local_inventory.yml
Mais pas moyen d'obtenir un merge la variable apps
même en utilisant hash_behaviour=merge
dans ansible.cfg
Bref échec.
Mis à jour par Christophe Siraut il y a presque 6 ans
- Fichier 0001-copy-varibles-from-inventory-to-group_vars-for-provi.patch 0001-copy-varibles-from-inventory-to-group_vars-for-provi.patch ajouté
- Patch proposed changé de Non à Oui
Le patch attaché sort quelques variables de inventory.yaml, afin de pouvoir les surcharger ou de spécifier un inventaire à la vollée.
Mis à jour par Emmanuel Cazenave il y a presque 6 ans
ça marche chez toi ?
Chez moi ça fait ça :
TASK [app-setup : set ansible server variables] ********************************************************* fatal: [localhost]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: {{apps['hobo']['project_name']}}: 'dict object' has no attribute 'hobo'\n\nThe error appears to have been in '/home/cazino/src/publik-devinst/roles/app-setup/tasks/main.yml': line 1, column 3, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n- name: set ansible server variables\n ^ here\n\nexception type: <class 'ansible.errors.AnsibleUndefinedVariable'>\nexception: {{apps['hobo']['project_name']}}: 'dict object' has no attribute 'hobo'"}
Je crois que j'étais tombé sur ce problème à ma première tentative sur ce ticket.
Mis à jour par Emmanuel Cazenave il y a presque 6 ans
En fait j'ai compris, je vais revenir avec une version de ton patch très légèrement modifiée.
Mis à jour par Emmanuel Cazenave il y a presque 6 ans
- Fichier 0001-move-variables-from-inventory-to-group-vars-all-2172.patch 0001-move-variables-from-inventory-to-group-vars-all-2172.patch ajouté
Par rapport à ton patch :
- ajout des variables pour corbo et bijoe qui étaient manquantes.
* ajout du
ansible.cfg
avechash_behaviour = merge
qui permet à l'utilisateur de surcharger certaines valeurs de la sectionapps
dans son inventory (sans lehash_behaviour = merge
, il faut redéfinir toute la section apps) * ajout detenants-inventory.yml.example
que je mentionnerai dans la doc, qui sert de modèle pour pouvoir déployer d'autres tenants que les
tenants par défaut de group_vars/all
Mis à jour par Christophe Siraut il y a presque 6 ans
ok pour moi (et déso pour les variables manquantes, j'aurais du recréer le patch depuis la branche wip)
Mis à jour par Emmanuel Cazenave il y a presque 6 ans
- Statut changé de Nouveau à Solution déployée
commit 162cf06b01e56bf1895682908bfbff8b84017026 Author: Christophe Siraut <csiraut@entrouvert.com> Date: Tue Apr 10 13:32:14 2018 +0200 move variables from inventory to group-vars/all (#21725)
move variables from inventory to group-vars/all (#21725)