Ansible:import#u角色不';不要将变量暴露在剧本中
我的最终目标是加载一些散列(或字典),并将变量用作常量。一个专门的角色似乎非常适合这个目的,因为它可以在许多剧本中重复使用。Ansible docs中的一章说:Ansible:import#u角色不';不要将变量暴露在剧本中,ansible,ansible-2.x,ansible-role,Ansible,Ansible 2.x,Ansible Role,我的最终目标是加载一些散列(或字典),并将变量用作常量。一个专门的角色似乎非常适合这个目的,因为它可以在许多剧本中重复使用。Ansible docs中的一章说: 如果roles/x/vars/main.yml存在,其中列出的变量将添加到剧本中 这意味着通过导入角色加载的变量应在后续任务/角色的播放范围内可用。一切都很完美 但我无法使其按预期工作(Ansible 2.4.2): 我做错了什么 注意:我确实向角色添加了一个任务,只是为了检查变量是否在角色内部定义。对于我的场景,我不需要任何任务,
- 如果roles/x/vars/main.yml存在,其中列出的变量将添加到剧本中
import\u role
和include\u role
当前的工作方式如下:
使用“遗留”角色声明:
- hosts: local
roles:
- constants
tasks:
- debug:
var: myvar
我做错了什么
没有问题,Ansibleimport\u role
和include\u role
当前的工作方式如下:
使用“遗留”角色声明:
- hosts: local
roles:
- constants
tasks:
- debug:
var: myvar
的确没有想过检查“遗产”的方式。谢谢的确没有想过检查“遗产”的方式。谢谢