У меня проблемы со встроенными зашифрованными строками в Ansible/Ansible-vault.
Я храню пароль Ansible Vault в файле и имею локальный файл конфигурации, который объявляет его:
[по умолчанию]
файл_пароля_хранилища = ./мой_пароль_хранилища
Поскольку у меня уже есть определенный файл vault_password_file, я создаю свою зашифрованную переменную с помощью следующей команды:
ansible-vault encrypt_string --stdin-name 'имя пользователя'
При появлении запроса я ввожу значение, которое хочу зашифровать, и дважды нажимаю CTRL-D, не нажимая клавишу ввода. Затем я беру вывод этой команды и заменяю им определение переменной.
Мой файл tasks/main.yml заканчивается вот так [отредактировано]
---
- имя: Клонировать шаблон
vmware_guest:
имя хоста: 1.2.3.4
имя пользователя: !хранилище |
$ANSIBLE_VAULT;1.1;AES256
63353665383934386565306639633734366666303465306364323761323938383433643133313933
3939356663626465303465646265653731626463386261610a306361343436613030336639303533
64613337326332353933313931303537653833623863343435623730316266643636373831363937
6231643937376665620a326465343239643237366465353965376532336365346631653466623038
35636135303233623733306632333833663535646230393335303261633535353636
пароль: 'мой_пароль'
validate_certs: Ложь
имя: testvm_2
шаблон: 'имя-шаблона'
центр обработки данных: DC1
папка: /Тест
состояние: включено
ожидание_для_ip_адреса: да
Однако с имя пользователя:
изменение является единственным изменением, теперь я получаю сообщение об ошибке:
ИГРАТЬ [localhost] **************************************************** ******************************************************* *************
ЗАДАНИЕ [Сбор фактов] *************************************************** ******************************************************* ********
хорошо: [локальный хост]
ЗАДАЧА [общая: Клонировать шаблон] ********************************************** ****************************************************
фатальный: [localhost]: FAILED! => {"msg": "Невозможно передать параметры модулю, они должны быть сериализуемыми в формате JSON: объект типа AnsibleVaultEncryptedUnicode не является сериализуемым в формате JSON"}
ОБЗОР ИГРЫ ******************************************************* ******************************************************* *****************
localhost: ok=1 изменено=0 недостижимо=0 не удалось=1 пропущено=0 спасено=0 проигнорировано=0