Système de variables spécifiques dans ansible
Ansible attend python 2. Sur mon système (Arch Linux), "python" Python 3, donc je dois passer -e "ansible_python_interpreter=/usr/bin/python2"
avec chaque commande.
ansible-playbook my-playbook.yml -e "ansible_python_interpreter=/usr/bin/python2"
Est-il loin de définir ansible_python_interpreter
globalement sur mon système, donc je n'ai pas à le transmettre à chaque commande? Je ne veux pas de l'ajouter à ma tablettes playbook, comme tous les systèmes qui exécute le playbook a une configuration similaire à la mienne.
Vous devez vous connecter pour publier un commentaire.
Eh bien, vous pouvez définir de trois façons
ansible_python_interpreter=/usr/bin/python2
cela va régler ça par hôteansible_python_interpreter: "/usr/bin/python2"
cela va régler ça par hôtegroup_vars/all
(vous devrez peut-être créer le répertoiregroup_vars
et le fichierall
) commeansible_python_interpreter: "/usr/bin/python2"
Espère que ça aide
J'ai opté pour l'utilisation d'Ansible la capacité de la source de l'inventaire à partir d'un répertoire. De cette manière j'ai pu définir les
ansible_python_interpreter
pour localhost seulement pour la machine localeinventory_dir/local
Puis il suffit d'utiliser le répertoire que vous le feriez pour un fichier d'inventaire.
ansible-playbook -i inventory_dir playbook.yml
inventory
(vous n'avez pas d'appellocal
local_file
) 😀Pour qui veux utiliser local activé virtualenv de l'interpréteur python
dans
inventory
jeu de fichiers