📅  最后修改于: 2023-12-03 15:29:24.569000             🧑  作者: Mango
在 Ansible Playbook 中,可以使用标签来指定运行特定的任务或剧本。 有时,您可能希望执行除了标签外的所有任务/剧本,而不是一个一个地将所有标签都列出来。 Ansible 允许您向 Playbook 中添加一些通用标签,以便在运行 Playbook 时可以不指定任何标签。
要向 Ansible Playbook 中添加通用标签,您可以按以下方式使用 meta
模块:
- name: Playbook Name
hosts: all
gather_facts: true
# 给这个 Playbook 下的所有 tasks/roles 设置通用标签
vars:
common_tags:
- always
- linux
# 运行 tasks/roles 并执行这些通用标签
tasks:
- name: Task Name
shell: echo "Hello World"
tags:
- "{{ common_tags }}"
如果您想要省略特定标签并运行 Playbook 中的所有任务/剧本,您可以使用 --skip-tags
参数。 以下命令将运行 Playbook 中未被标记为 "test" 的所有任务/剧本:
ansible-playbook playbook.yml --skip-tags test
使用通用标签和 --skip-tags
参数可以使 Playbook 运行变得更加灵活和简单。 如果您有多个任务/剧本需要在一起运行,但是不想一一列出所有标签,这将特别有用。