我试图根据操作系统应用任务,但似乎变量无法使用include
:
我尝试了什么
- include: {{ ansible_distribution }}_mongodb.yml
同样适用于调试模式。 ansible版本:1.8.2
答案 0 :(得分:3)
对于ansible 1.7.2,变量不会在include
语句中展开。
您可以使用:
- include: ubuntu_mongodb.yml
when: ansible_distribution == 'Ubuntu'
或者:
- include: ubuntu_mongodb.yml
when: ansible_distribution in ['Ubuntu']
请注意,使用ansible_os_family
变量可以更通用。对于一个ubuntu框,这些变量的内容是:
ansible_os_family
:" Debian" ansible_distribution
:" Ubuntu"