17 votes

Impossible de trouver le fichier de configuration dans "/etc/ansible/" sur Mac OS X

J'utilise Mac OS X et je suis nouveau dans le domaine de la santé. Ansible . J'ai oublié comment je l'ai installé. Je pense que c'est par pip :

$ pip freeze
altgraph==0.12
ansible==1.9.2

En tout cas, d'après ce que je lis, il devrait y avoir un fichier de configuration dans le répertoire /etc/ansible/ mais le contenu de ce répertoire est juste :

$ ls -a /etc/ansible/
.       ..      .hosts.swp  hosts       roles

Il ne semble pas non plus qu'il y ait une variable d'environnement définie :

$ echo $ANSIBLE_CONFIG
# blank line

Ansible fonctionne pour autant que je puisse dire (sans un local ansible.cfg et il n'y a rien dans le ansible dans le répertoire de l'utilisateur), mais je suis perplexe.

Quelqu'un peut-il m'expliquer ce que je ne comprends pas ici ?

16voto

Giacomo1968 Points 48326

D'après ce que je sais, le Ansible fichier de configuration ( ansible.cfg ) peut se trouver ici pour les paramètres de configuration de niveau utilisateur :

~/.ansible.cfg

Ainsi que la configuration du système située ici, où vous déclarez ne pas trouver un tel fichier :

 /etc/ansible/ansible.cfg

Si, d'une manière ou d'une autre, vous avez plusieurs utilisateurs sur votre système, peut-être y a-t-il une ~/.ansible.cfg flottant dans un de leurs répertoires d'utilisateurs que vous avez oublié ?

Vous dites que vous l'avez peut-être installé en utilisant pip mais en vérifiant la formule Homebrew pour Ansible c'était qui n'est passé que récemment de la version 1.9.2 à la version 1.9.3, le 4 septembre. . Alors peut-être l'avez-vous installé via Homebrew ?

Et votre principale préoccupation semble être de savoir si le ansible.cfg est nécessaire :

Ansible fonctionne pour autant que je puisse dire (sans un local ansible.cfg et il n'y a rien dans le ansible dans le répertoire de l'utilisateur), mais je suis mais je suis perplexe.

Quelqu'un peut-il m'expliquer ce que je ne comprends pas ici ?

Oui, cela devrait fonctionner sans configuration. Pour la plupart des logiciels, un fichier de configuration ne fait que remplacer les valeurs par défaut du système de base. Ainsi, si ansible.cfg est manquante, Ansible fonctionnera toujours mais en utilisant uniquement les valeurs par défaut du système de base. Comme expliqué dans Documentation officielle d'Ansible :

Certains paramètres dans Ansible sont réglables via un fichier de configuration. La configuration de base devrait être suffisante pour la plupart des utilisateurs, mais il mais il peut y avoir des raisons pour lesquelles vous souhaitez les modifier.

Les modifications peuvent être effectuées et utilisées dans un fichier de configuration qui sera traité dans l'ordre suivant :

* ANSIBLE_CONFIG (an environment variable)
* ansible.cfg (in the current directory)
* .ansible.cfg (in the home directory)
* /etc/ansible/ansible.cfg

16voto

Mr. Smith Points 3224

En homebrew remplace la chaîne de caractères /etc/ansible en constants.py con /usr/local/etc/ansible . Ça ressemble à un mauvais grigri pour moi.

Je n'avais pas /usr/local/etc/ansible après brew install ansible . Cependant, j'ai confirmé que si vous mettez un nom de famille valide ansible.cfg là, il sera honoré (pour l'instant).

Mes recommandations :

  1. N'utilisez pas brew pour installer Ansible .
  2. Soyez explicite sur votre configuration ne dépendez pas des globales de l'environnement système, telles que /etc/ansible/ansible.cfg .

Code Refs :

remplacement de la formule de brassage ansible #475 : https://github.com/Homebrew/homebrew/blob/master/Library/Formula/ansible.rb#L475

ansible constants.py #61 : https://github.com/ansible/ansible/blob/v1.9.3-1/lib/ansible/constants.py#L61

5voto

vaichidrewar Points 1038

Sur OSX, j'avais installé ansible en utilisant pip et j'ai constaté que ansible.cfg n'est pas présent dans /etc/ansible ou dans mon répertoire personnel.

Source : https://github.com/ansible/ansible/issues/18512

pip n'installe généralement pas de fichiers de configuration et pip avec ansible n'est pas différent. Si vous voulez juste essayer ansible, il fonctionne généralement sans fichier ansible.cfg. (Vous devez spécifier un certain inventaire mais vous pouvez le faire en ligne de commande plutôt que dans un fichier si vous le souhaitez). Si vous voulez obtenir un exemple de fichier de configuration à adapter, vous pouvez l'obtenir à partir du tarball ou du dépôt de sources ici : https://github.com/ansible/ansible/blob/devel/examples/ansible.cfg

Les fichiers d'inventaire sont expliqués ici : http://docs.ansible.com/ansible/intro_inventory.html Pour spécifier les hôtes à inventorier sur la ligne de commande, il suffit de faire quelque chose comme ceci :

ansible -i 'host1,host2,host3'  all -m command -a 'hostname'

Si vous souhaitez spécifier un seul hôte via la ligne de commande, utilisez une virgule de fin dans la chaîne d'inventaire :

ansible -i 'host1,' all -m command -a 'hostname'

4voto

Jason Points 79

J'ai découvert que Homebrew ne créera pas un fichier /etc/ansible et ne créera pas non plus de fichier de configuration ou d'hôte. Cependant, si vous créez le fichier /etc/ansible et copier la configuration du dépôt github dans le répertoire /etc/ansible il le reconnaîtra comme une configuration.

Vous pouvez également aller dans cette configuration et décommenter la ligne qui spécifie l'emplacement de l'inventaire :

inventaire = /etc/ansible/hosts

En faisant cela, ansible fonctionnera de la même manière avec une installation homebrew qu'avec n'importe quelle autre installation et la documentation que vous trouverez en ligne pourra être utilisée avec la version homebrew.

0voto

d_roge Points 1

J'utilise macOS Big Sur. J'ai installé Ansible en utilisant pip. Il n'y a pas un tel chemin /etc/ansible . J'ai fini par créer un fichier de configuration Ansible ( .ansible.cfg ) dans mon répertoire personnel, puis la prochaine fois que je lance ansible, il utilise mes paramètres personnalisés dans le fichier de configuration.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X