是否可以动态地将Ansible中的vars文件包含到另一个vars文件中?
即我有vars文件:
---
definitions:
- { product: web_v2, suite: mysuite, include: default_step.yml }
- { product: prod2, suite: mysuite2, include: default_step.yml }
Run Code Online (Sandbox Code Playgroud)
我希望将内容default_step.yml添加到字典中.请注意,这是在vars文件中,因此有关如何从任务中包含vars文件的文档似乎不适用.
我能想到的是用jinja模板化这个文件并使用它的{% include %}功能,然后include_vars从主要任务中使用,但这似乎很复杂......
jon*_*tan 55
不幸的是,vars文件没有include语句.
您可以将所有变量放入definitions字典中,也可以将变量作为另一个字典添加到同一文件中.
如果您不想将它们放在同一个文件中,可以通过在播放开始时添加vars文件将它们包含在playbook级别:
---
- hosts: myhosts
vars_files:
- default_step.yml
Run Code Online (Sandbox Code Playgroud)
或在任务中:
---
- hosts: myhosts
tasks:
- name: include default step variables
include_vars: default_step.yml
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
81378 次 |
| 最近记录: |