技术解析
我使用 include_role 指明了要执行的 tags, 但结果却是目标 role 中的所有 task 都执行了
ansible 2.9.10, 我有两个 role, 叫 apple 和 cat
apple
- name: Exec `cccc` tasks
include_role:
name: cat
apply:
tags:
- cccc # 设置 cccc, 我理解是执行目标 role 下设置了 cccc 的 task
cat
- name: task1
# ...
- name: task2
# ...
- name: task3
include_tasks: cat_fish.yaml # 执行另一文件中的 task
loop:
- a
- b
loop_control:
loop_var: out_item
tags:
- cccc # 设置了 cccc, 我希望只执行这个 task3
- name: task4
# ...
结果却是 cat 中的所有 task 都执行了一遍, 这是怎么回事? 是我对 apply.tags
理解错了吗?