包含和标签在 ansible 中不起作用

Include & tags don't work in ansible

我对 Ansible-Playbook 感到困惑,如果我在 main.yml(任务)中使用 include 和标签,它就不起作用。

命令: ansible-playbook -i digitalocean/inventory.ini ans-graylog.yml --tags "insglog"

PLAY [Setup Graylog] **************************

TASK [Gathering Facts] ************************
ok: [xxx.xxx.xxx.xxx]

PLAY RECAP ************************************
xxx.xxx.xxx.xxx            : ok=1    changed=0    unreachable=0    failed=0

如果我删除--tags "inslog",它就会成功。所有任务都会运行正常。

main.yml (Tasks)

---
- include: gray.yml tags=insglog
- include: fbeat.yml tags=insfbeat

当我在ansible-playbook命令中使用--tags="inslog"时,gray.yml没有被执行。

我试过include_taskimportimport_task。但是,我得到了相同的结果。

你能帮我更正一下吗?

tags不是模块的参数,是任务的参数

您应该在任务级别指定 tags

---
- include: gray.yml
  tags: insglog
- include: fbeat.yml
  tags: insfbeat

说明

您的示例使用 Ansible 表示法(带等号)将 YAML 转录为:

- include: gray.yml
    tags: insglog
- include: fbeat.yml
    tags: insfbeat

这是不正确的; tags 声明将被忽略。