Giới thiệu
Trên các kho lưu trữ kiểm soát nguồn và CI riêng như Gitlab-ce, có thể sao chép ~ / .vault_pass.txt vào máy chủ và cho phép CI sử dụng để giải mã các tệp bằng Ansible.
Vấn đề
Trên các kho lưu trữ kiểm soát nguồn và kiểm soát nguồn công cộng như Bitbucket, không thể sao chép một ~ / .vault_pass.txt vào máy chủ CI.
Thảo luận
Trong Bitbucket nó có thể định nghĩa các biến mã hóa, nhưng khi này tập tin sẽ được kiểm tra các biến có liên quan chỉ VAULT là:
ANSIBLE_ASK_VAULT_PASS
ANSIBLE_VAULT_PASSWORD_FILE
Các biến này không phải là một tùy chọn để giải quyết vấn đề như khi ANSIBLE_ASK_VAULT_PASS
được đặt ansible-vault
vẫn nhắc:
user@host $
Vault password:
Khi nhập cùng một mật khẩu, nó có thể mở tệp được mã hóa, nhưng mục đích là để mở tệp mà không cần tệp hoặc nhập mật khẩu trong lời nhắc.
Một nỗ lực khác để giải quyết vấn đề đang chạy export ANSIBLE_ASK_VAULT_PASS=<ansible-vault-password>
, nhưng chế độ tương tác vẫn tồn tại.
Một tùy chọn khác là export ANSIBLE_VAULT_PASSWORD_FILE=~/.vault_pass.txt
, nhưng sau đó tệp này cần được đẩy vào kho lưu trữ, nhưng kho Điều khiển nguồn không được chứa mật khẩu.