在Ansible中,可以使用include_tasks模块来实现任务嵌套任务的功能。下面是一个示例:
main.yml文件:
- name: Include nested tasks
include_tasks: nested_tasks.yml
nested_tasks.yml文件:
- name: Task 1
debug:
msg: "This is task 1"
- name: Task 2
debug:
msg: "This is task 2"
在上面的示例中,main.yml文件使用include_tasks模块来包含nested_tasks.yml文件中的任务。当运行main.yml文件时,会顺序执行nested_tasks.yml文件中的任务。
可以通过运行以下命令来执行main.yml文件:
ansible-playbook main.yml
执行结果将会输出:
PLAY [Playbook for nested tasks] ***********************************************
TASK [Include nested tasks] ***************************************************
included: /path/to/nested_tasks.yml
TASK [Task 1] *****************************************************************
ok: [localhost] => {
"msg": "This is task 1"
}
TASK [Task 2] *****************************************************************
ok: [localhost] => {
"msg": "This is task 2"
}
PLAY RECAP *********************************************************************
localhost : ok=3 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
从上面的输出中可以看到,nested_tasks.yml文件中的任务被成功地嵌套到了main.yml文件中,并按顺序执行了。