ansible:在模板字符串中检测到递归循环

时间:2014-02-12 20:15:07

标签: ansible ansible-playbook

在剧本中,我以这种方式使用角色:

- { role: project, project_name: "{{project_name}}" }

在“project”角色中,我实际上有一个想要使用“project”角色的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”变量的名称是唯一的解决方案吗?

由于

1 个答案:

答案 0 :(得分:9)

外部变量会自动继承到角色中,因此不需要project_name: "{{ project_name }}"。将您的角色声明更改为:

- project

... {{ project_name }}变量将在您的角色中按原样使用。