0
在Ansible,如果我有一個列表變量與下面的混合結構:Ansible變換混合列表結構,結構均勻
input_items:
- mainkey: 'main.value.1'
subkey: 'subvalue_1.1'
- mainkey: 'main.value.2'
group:
- subkey: 'subvalue_2.1'
- subkey: 'subvalue_2.2'
有沒有辦法把它轉變成這樣一個平面結構:
transformed:
- mainkey: 'main.value.1'
subkey: 'subvalue_1.1'
- mainkey: 'main.value.2'
subkey: 'subvalue_2.1'
- mainkey: 'main.value.2'
subkey: 'subvalue_2.2'
這個想法是允許一個更緊湊的結構來定義列表,然後將其轉換爲一個簡單的扁平結構,使用with_items
即可將其輸入到模塊中。
我已經用盡了每個形狀的循環,包括,set_fact和jinja過濾器我可以召集,但我確定必須有一種方法。
非常不可能在Ansible內解決。你應該看看創建一個自定義過濾器插件。 http://docs.ansible.com/ansible/developing_plugins.html#filter-plugins – udondan