如何在组中的第一台主机上制作 Ansible 剧本 运行?
How to make Ansible playbook run on first host in the group?
我如何才能 运行 仅在组中的第一个主机上使用剧本?
我期待这样的事情:
---
- name: playbook that only run on first host in the group
hosts: "{{ groups[group_name] | first }}"
tasks:
- debug:
msg: "on {{ inventory_hostname }}"
但这行不通,报错:
'groups' is undefined
我怎样才能让它发挥作用?
您可以使用:
hosts: group_name[0]
清单主机值(在 hosts
指令中指定)使用自定义解析器处理,它不允许像常规模板引擎那样使用 Jinja2 表达式。
了解 Patterns。
我如何才能 运行 仅在组中的第一个主机上使用剧本?
我期待这样的事情:
---
- name: playbook that only run on first host in the group
hosts: "{{ groups[group_name] | first }}"
tasks:
- debug:
msg: "on {{ inventory_hostname }}"
但这行不通,报错:
'groups' is undefined
我怎样才能让它发挥作用?
您可以使用:
hosts: group_name[0]
清单主机值(在 hosts
指令中指定)使用自定义解析器处理,它不允许像常规模板引擎那样使用 Jinja2 表达式。
了解 Patterns。