Ansible jinja2 в vars.yml group_vars

Мы создаем Ansible playbook для подготовки виртуальных машин в инфраструктуре OVM. Сборка будет клонировать образ Windows или Linux на основе переменной «Операционные системы», переданной в playbook через файл внешних переменных.

ansible-playbook -i inventory.yml create_vm.yml -e @variables.yml

Оба образа (Windows и Linux) имеют исправленный IP-адрес для Ansible (192.168.100.100).

Мы ищем способ динамического выбора типа ansible_connection (ssh или winrm) на основе переменной «Операционные системы», я пробовал в group_vars / staging_machines / vars.yml:

ansible_connection: | 
 {% if os == 'Microsoft Windows Server 2016' or os == 'Microsoft Windows Server 2012' -%}winrm{% else -%}ssh{% endif -%}

Но попадается: fatal: [192.168.100.100]: FAILED! => {"msg": "the connection plugin 'ssh\n' was not found"}

inventory.yml - это:

staging_machines:
  hosts:
    192.168.100.100:

@techraf Я уже пробовал | и>, чтобы безуспешно сломать команду, я все еще получаю ту же ошибку. Приведенные вами ответы не имеют отношения к моему вопросу.

Wafi 10.08.2018 16:38

Конечно актуальны, нужно только читать дальше.

techraf 10.08.2018 16:40
0
2
276
0

Другие вопросы по теме