Должно быть что-то еще, что вы не показываете, потому что ваш код выглядит нормально и должен работать. Я подозреваю, что проблема в файле, который вы импортируете.
Между тем, если не проблема переключиться на include_tasks
, вы можете значительно сократить приведенное выше с помощью одной задачи:
---
- hosts: localhost
tasks:
- name: "{{ new_server_type }} template"
include_tasks: "./../vsphere-client/{{ new_server_type }}/template_to_vm.yml"
Если вам действительно нужен чек, чтобы убедиться, что new_server_type
имеет правильное значение, это все еще возможно.
---
- hosts: localhost
vars:
allowed_types:
- perforce
- gitlab-pgbouncer
- gitlab-postgres
- build-api
tasks:
- name: "{{ new_server_type }} template"
include_tasks: "./../vsphere-client/{{ new_server_type }}/template_to_vm.yml"
when: new_server_type in allowed_types