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.
echo $ANSIBLE_VAULT_PASSWORD_FILE
?
vault_password_file = ~/.vault_pass.txt
ANSIBLE_VAULT_PASSWORD_FILE
richtig?