我有一个包含任务文件的目录,我想循环遍历这些任务文件并将它们包含在我的剧本中。我怎么能这样做?
我尝试了以下但这似乎不起作用,
- include: "{{ item }}"
with_items: export.stdout_lines
这给了我一个错误,
ERROR: [DEPRECATED]: include + with_items is a removed deprecated feature. Please update your playbooks.
我查看了有关特定错误和解决方法的stackoverflow上的其他帖子,但它似乎与我的问题无关。
我使用的是ansible 1.9.4。
答案 0 :(得分:4)
您使用的Ansible版本没有解决方法。在您的版本中,包含在任何任务执行之前被解析等。因此,您不能依赖其他任务的变量或结果来包含文件。
如果需要,需要将Ansible更新到版本2.x,其中重新引入了此功能。此功能也在早期版本中工作,但只是偶然发生并且具有无法控制的副作用,因此被删除了。
使用Ansible 2,理想情况下你会使用with_fileglob:
- include: "{{ item }}"
with_fileglob:
- path/to/your/tasks/*.yml