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

Nic*_*uff 1 ansible ansible-2.x

我对Ansible-Playbook感到困惑,如果我在main.yml(tasks)中使用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
Run Code Online (Sandbox Code Playgroud)

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

main.yml (Tasks)

---
- include: gray.yml tags=insglog
- include: fbeat.yml tags=insfbeat
Run Code Online (Sandbox Code Playgroud)

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

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

您能帮我解决这个问题吗?

tec*_*raf 5

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

您应该tags在任务级别指定:

---
- include: gray.yml
  tags: insglog
- include: fbeat.yml
  tags: insfbeat
Run Code Online (Sandbox Code Playgroud)

说明

您的示例使用Ansible表示法(等号)将其翻译为YAML:

- include: gray.yml
    tags: insglog
- include: fbeat.yml
    tags: insfbeat
Run Code Online (Sandbox Code Playgroud)

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