Vault
ansible-vault encrypt_string 'jn2bS7#E4U' --name 'aams_db_password' --vault-id prod@prompt
To decrypt prepare the string in text editor and remove spaces at the begining of rows
echo '$ANSIBLE_VAULT;1.2;AES256;stage
66333762363161336138633730363961363635373561336430396433613361353961333430633166
6364663766626464373839383639363964353762646364620a646138666335633265646461323261
66333363393064663262653430316439636363633238613938383866316536313730373938396433
3435326266393165610a616638346362353761646563333633643761323930343631363436303436
3233' | ansible-vault decrypt
Run
ansible-playbook sb2db_jobs.yml -i inventory/stage/s002/s002.ini --vault-id stage@prompt --vault-id stage-infra@prompt --tags aams_database_scripts
Encrypt file
ansible-vault encrypt roles/nginx/files/ssl.mango-office.ru.key
ansible-vault encrypt foo.yml bar.yml baz.yml
To encrypt existing files with the ‘project’ ID and be prompted for the password:
ansible-vault encrypt --vault-id project@prompt foo.yml bar.yml baz.yml
View encrypted file
ansible-vault view roles/nginx/files/ssl.mango-office.ru.key
Editing encrypted files
ansible-vault edit foo.yml
Legacy
ansible-vault encrypt_string
ansible-playbook --ask-vault-pass -i inventory_file some_playabook.yml
#Use a Vault File
echo "secret_password" > vault_password
ansible-playbook --vault-password-file=vault_password -i inventory_file some_playabook.yml
#or
ansible-vault --vault-id ./vault_password_file edit defaults/main.yml
#You can also ask it to prompt you:
ansible-vault --vault-id @prompt edit defaults/main.yml
#
чтобы работало, нужно создать папку group_vars, в ней папку с таким же именем как группа в файле inventory
|-- group_vars
| |-- vld1
В папке vld1 создается два файла vars.yml и vault.yml
vars.yml
---
cli:
host: "{{ inventory_hostname }}"
username: cisco
password: "{{ vault_passwd }}"
vault.yml
ansible-vault create vault.yml
#в файле пишем строчку
vault_passwd: Cisco6o66o6
в самом плейбуке ника не нужно объявлять отдельно переменные, они автоматически подтянутся
Last updated
Was this helpful?