0
我存儲所有ansible變量YAML文件(過濾掉那些以「ansible_」)這個劇本:如何使所有ansible變量YML文件,ansible 2.3
- hosts: localhost
tasks:
- set_fact:
all_vars: "{{all_vars | default({}) |combine({item.key: item.value})}}"
when: "{{not item.key.startswith('ansible_')}}"
with_dict: "{{vars}}"
- copy:
content: "{{ all_vars }}"
dest: "/tmp/tmp.yml"
這是group_vars/all/defaults.yml
SOME_FACT1: "some-fact"
SOME_FACT2: "{{ SOME_FACT1 }}"
SOME_FACT3: "{{ SOME_FACT2 }}"
這與理論2.2完美結合。但是在2.3(2.3.1.0)中,變量不會被渲染。 我得到的結果是這樣的:
... "SOME_FACT1": "some-fact", "SOME_FACT3": "{{ SOME_FACT2 }}", "SOME_FACT2": "{{ SOME_FACT1 }}" ...
我怎麼能強迫ansible 2.3渲染變量?
我編輯了問題以獲得更多清晰度 – Nathan
'vars'是內部對象,並以特殊方式模板化(更好地說是_not_模板)。你爲什麼需要做這個任務? –
我想執行一個可以訪問所有可變變量的python腳本(用對流層創建一個cloudformation文件)。 – Nathan