Одним из способов может быть сохранение переменных хранилища в файле или шифрование строки. Я покажу использование файла:
ansible-vault create vault_vars.yml
(вам будет предложено создать пароль) - В
vault_vars.yml
вы создадите обычную переменную, содержащую public_key: pub_key: "rsa..."
- Включите файл в свою пьесу:
vars_files:
- vault_vars.yml
Вы можете получить доступ к переменной из хранилища так же, как и с переменной, определяемой внутри книги воспроизведения. : {{ pub_key }}
Пример печати переменной из хранилища:
- hosts: server
vars_files:
- vault_vars.yml
tasks:
- debug: msg="{{pub_key}}"
Запуск playbook: ansible-playbook playbook.yml --ask-vault-pass
Вы можете использовать --ask-vault-pass
(при запросе пароля) или --vault-password-file
(сохраняя ваш пароль хранилища в файле)
РЕДАКТИРОВАТЬ
После повторного прочтения вопроса вы заявили, что не хотите использовать файл, то есть решение будет таким, как предложено ниже : Encrypt the string.
Лично я не большой поклонник шифрования строк, а затем помещаю их прямо в книгу. Вместо этого я предпочитаю шифровать файл, чтобы при необходимости было проще добавлять / изменять значения.