ansible-角色变量的更改优先级

时间:2018-12-27 15:55:21

标签: ansible

我已经创建了一个角色来安装我的应用。

此角色需要在角色的vars目录中的单独文件中定义的特定变量,具体取决于应用程序(此处为pdt_type),如下所示:

- name: Include pkg list of {{ pdt_type }}
  include_vars:
    file: "{{ pdt_type }}.yml"

一切正常。但是我希望能够通过清单变量来重载我的角色中的那些变量。或者,由include_vars加载的var在清单中的优先级更高。

您知道如何才能更改此行为吗? 如何根据条件定义角色的默认变量?

谢谢

1 个答案:

答案 0 :(得分:0)

我认为您无法更改variable precedence,这很好。

  

许多人可能会问变量如何覆盖另一个变量。归根结底,这是Ansible的理念,那就是更好的是您知道在哪里放置变量,然后您不必再多考虑了。 [...]只有一栋帝国大厦。一个蒙娜丽莎(Mona Lisa)等人。弄清楚在哪里定义变量,不要使它变得复杂。

有关在条件上定义变量的信息,请参见:

有关有条件地从文件中包含变量的信息,请参见: