在剧本中,我以这种方式使用角色:
- { role: project, project_name: "{{project_name}}" }
在“项目”角色中,我实际上有一个依赖项,想要使用“项目”角色的 project_name 变量:
---
dependencies:
- {
role: users,
users: [
{
name: "{{project_name}}",
home: "/home/{{project_name}}",
shell: "/bin/bash",
group: "{{project_name}}",
}
]
}
但我收到一个错误:
recursive loop detected in template string: {{project_name}}
更改“project_name”变量的名称是唯一的解决方案吗?
谢谢
最佳答案
外部变量会自动继承到角色中,所以 project_name: "{{ project_name }}"
没有必要。将您的角色声明更改为:
- project
... 和
{{ project_name }}
变量将按原样在您的角色中可用。
关于ansible:在模板字符串中检测到递归循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21738661/