Есть удобная утилитка ansible-vault, но она шифрует сразу весь файл. Если это файл с переменными - удобнее когда шифрованы только значения ключей, в том числе при контроле гитом - любое изменение локализуется легко, в случае волта меняется весь файл.
Дешифрование строки
Вот с расшифровкой такого файла беда, ansible-vault уже не понимает что от него хотят (будет ERROR! input is not vault encrypted data. (file) is not a vault encrypted file for (file)), поэтому есть несколько вариантов посмотреть:
1) копируем строку после !vault в файл и далее ansible-vault view ...
2) через дешифровальную буку
- hosts: localhost
tasks:
- debug:
msg: "{{ secret_value }}"
3) через ansible -m debug, но оно работало до 2.8, там синтаксис будет такой
ansible localhost -m debug -a var="some_var" -e "@file.yml" --ask-vault-pass
Вместо ask можно использовать --vault-password-file (file)
Шифрование строки
А как же зашифровать эту строку?
ansible-vault encrypt_string --ask-vault-pass --stdin-name some_var
спросит два раза пароль волта.
!!! Потом вводим значение и не нажимая энтер нажимаем два раза ctrl-d