Theo dõi Q & A này .
Theo tài liệu này và tài liệu này, có thể xác định tệp mật khẩu vault mặc định bằng cách chỉ định vault_password_file = ~/.vault_pass.txt
một trong các tệp sau:
* ANSIBLE_CONFIG (an environment variable) * ansible.cfg (in the current directory) * .ansible.cfg (in the home directory) * /etc/ansible/ansible.cfg
Mặc dù tệp mật khẩu tồn tại và nhật ký chỉ ra rằng ansible.cfg được sử dụng có chứa định nghĩa, quá trình giải mã thất bại:
user@host$
Using /etc/ansible/ansible.cfg as config file
ERROR! Decryption failed on /path/to/ansible/group_vars/production/vault
Thảo luận
Là vượt qua chính xác cho hầm này?
Đúng. Khi ansible được chạy bằng cách --vault-password-file=~/.vault_pass.txt
giải mã thành công.
Để chúng ta rõ ràng - tên của biến môi trường là
ANSIBLE_VAULT_PASSWORD_FILE
, đúng không?
Không. Khi biến này được sử dụng, nó hoạt động, nhưng mục đích là đặt nó trong ansible.cfg bằng cách cài đặt /etc/ansible/ansible.cfg
.
Phiên bản Ansible nào được sử dụng?
user@host:/dir$ ansible --version ansible 2.2.2.0 config file = /etc/ansible/ansible.cfg configured module search path = Default w/o overrides
Liệu sử dụng một đường dẫn đầy đủ trong cấu hình hoạt động?
Việc giải mã cũng thất bại khi đường dẫn đầy đủ thay vì ~
, /home/user/.vault_pass.txt
được chỉ định.
echo $ANSIBLE_VAULT_PASSWORD_FILE
cái gì?
vault_password_file = ~/.vault_pass.txt
ANSIBLE_VAULT_PASSWORD_FILE
, đúng không?