Я пытаюсь понять, как "удалить" предупреждающее сообщение [WARNING]: Could not match supplied host pattern, ignoring: ps_nodes
, исправив причину root. Причина root для меня в том, что при создании машины Linux у нас останутся пустые хосты ps_nodes. Итак, я пытался добавить block:
+ when: (os_type|capitalize) == "Windows"
, чтобы гарантировать, что Play будет выполняться только тогда, когда os_type - это создание Windows.
Как я могу этого добиться? Потому что я пытаюсь использовать условие when, но похоже, что это невозможно, и я не уверен, что больше искать.
Пример кода:
- name: "Start handling of vm specific delete scripts for Windows machines"
block:
hosts: ps_nodes
any_errors_fatal: false
gather_facts: false
vars:
private_ip_1: "{{ hostvars['localhost']['_private_ip_1']|default('') }}"
scripts: "{{ hostvars['localhost']['scripts'] }}"
sh_script_dir: "{{ hostvars['localhost']['sh_script_dir'] }}"
cred_base_hst: "{{ hostvars['localhost']['cred_base_hst'] }}"
cred_base_gst: "{{ hostvars['localhost']['cred_base_gst'] }}"
newline: "\n"
tasks:
- import_tasks: roles/script/tasks/callWindowsScripts.yml
when: action == 'delete'
when: (os_type|capitalize) == "Windows"
Ошибка при использовании "когда" для игры:
ERROR! 'when' is not a valid attribute for a Play
The error appears to be in '/opt/projectX/playbooks/create_vm.yml': line 265, column 3, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
##############################################################################
- name: \"Start handling of vm specific delete scripts for Windows machines\"
^ here