2017-02-22 64 views
0

我有一個可靠的劇本,它應該與不同的庫存一起運行。Ansible:使庫存變量group_vars具有比playbook group_vars更高的優先級

playbook group_vars定義了一些變量,它們是默認值。例如:

MY_VAR: my_value 

現在,我希望能夠覆蓋庫存group_vars中的這些變量。但是,因爲庫存group_vars的優先級較低,所以不會覆蓋它。

我試圖在劇本group_vars這樣定義變量:

MY_VAR: {{ MY_VAR | default('my_value') }} 

但是,這也不起作用。

我可以以某種方式讓庫存group_vars覆蓋playbook group_vars嗎?

回答

2

如何在pre_tasks中使用set_fact? Playbook vars會盡早評估。運行播放時的set_fact。我在想這樣的事情:

pre_tasks: 
    - name: Override variables 
    set_fact: 
     MY_VAR: "{{ MY_VAR | default('my_value') }}" 
相關問題