Follow-up zu diesen Fragen und Antworten .
Gemäß dieser und dieser Dokumentation sollte es möglich sein, eine Standard-Tresorkennwortdatei zu definieren, indem vault_password_file = ~/.vault_pass.txt
in einer der folgenden Dateien angegeben wird:
* ANSIBLE_CONFIG (an environment variable) * ansible.cfg (in the current directory) * .ansible.cfg (in the home directory) * /etc/ansible/ansible.cfg
Obwohl die Kennwortdatei vorhanden ist und das Protokoll angibt, dass die Datei ansible.cfg verwendet wird, die die Definition enthält, schlägt die Entschlüsselung fehl:
user@host$
Using /etc/ansible/ansible.cfg as config file
ERROR! Decryption failed on /path/to/ansible/group_vars/production/vault
Diskussion
Ist der Pass für dieses Gewölbe korrekt?
Ja. Wenn ansible ausgeführt wird, ist --vault-password-file=~/.vault_pass.txt
die Entschlüsselung erfolgreich.
Nur damit wir klar sind - der Name der Umgebungsvariablen ist
ANSIBLE_VAULT_PASSWORD_FILE
richtig?
Nein. Wenn diese Variable verwendet wird, funktioniert sie, aber das Ziel ist es, sie durch Setzen in der ansible.cfg festzulegen /etc/ansible/ansible.cfg
.
Welche Ansible-Version wird verwendet?
user@host:/dir$ ansible --version ansible 2.2.2.0 config file = /etc/ansible/ansible.cfg configured module search path = Default w/o overrides
Funktioniert die Verwendung eines vollständigen Pfads in der Konfiguration?
Die Entschlüsselung failes auch wenn der vollständige Pfad statt ~
, dh /home/user/.vault_pass.txt
angegeben wurde.
quelle
ANSIBLE_VAULT_PASSWORD_FILE
richtig?echo $ANSIBLE_VAULT_PASSWORD_FILE
?vault_password_file = ~/.vault_pass.txt
Antworten:
Es ist unklar , warum es gescheitert, aber Einstellung
vault_password_file = ~/.vault_pass.txt
in/etc/ansible/ansible.cfg
ausreichend.quelle
Ich habe ein Problem mit Ansible / Python gefunden, bei dem die Entschlüsselung fehlgeschlagen ist.
Insbesondere würden Ansible 2.7.10 und 2.7.13 unter Python 3.6.8 unter Ubuntu 18.04 keine Tresordatei entschlüsseln (verwenden
ansible-vault edit -vvvvv
), die mit der Datei identisch ist, die unter macOS 10.13 mit Python 3.7.2 mit denselben Ansible-Versionen OK entschlüsselt wurde.Ein Upgrade auf Python 3.7.3 unter Ubuntu (unter Verwendung
apt-get install python3.7
von 18.04) hat dies behoben.Ihr Problem mag anders sein, aber wenn Sie Python 3.6 oder niedriger verwenden, würde ich versuchen, ein Upgrade auf 3.7 durchzuführen.
quelle
Laut den Dokumenten ,
Stellt sicher, dass Sie genau den gleichen Fall verwenden.
quelle