我有一个ansible playbooks,应该用不同的库存运行。
playbook group_vars定义了一些默认值的变量。例如:
MY_VAR: my_value
现在,我希望能够在库存group_vars中覆盖这些变量。但是因为库存group_vars的优先级较低,它不会覆盖它。
我试图在playbook group_vars中定义这样的变量:
MY_VAR: {{ MY_VAR | default('my_value') }}
但这也行不通。
我可以以某种方式使库存group_vars覆盖playbook group_vars吗?
答案 0 :(得分:2)
如何在pre_tasks中使用set_fact? Playbook vars会尽早评估。运行播放时的set_fact。我在想这样的事情:
pre_tasks:
- name: Override variables
set_fact:
MY_VAR: "{{ MY_VAR | default('my_value') }}"