2016-07-28 54 views
0

我想將相同的Ansible模板寫入兩個不同的文件,一個文件中的值設置爲True,另一個值設置爲False。將相同的模板寫入兩個不同的文件,更改一個值

什麼是做到這一點的最好方法是什麼?我的直覺是試圖通過template:指令中的一個值。但是,it seems like this is frowned upon

一種方法是將兩個不同的jinja文件的內容幾乎完全相同;一個值設置爲True,另一個False。

另一種方法是定義一個變量,編寫一個模板,然後使用set_fact來更改變量的值,然後編寫第二個文件。這似乎也有點麻煩。

另一種方法是讓模板檢測它被渲染爲什麼文件名,不知何故?並在該模板分支基礎上。

我必須錯過一些明顯的東西。

+0

的可能的複製(http://stackoverflow.com/questions/31142369 /如何使用的模板模塊與 - 不同的設置-的變量) –

回答

0

隨着Ansible 2.x中,您可以使用vars:與任務:[?如何使用模板模塊不同的變量集]

--- 
- hosts: localhost 
    tasks: 
    - template: src=my_template.j2 dest=out1.txt 
     vars: 
     name: John 
    - template: src=my_template.j2 dest=out2.txt 
     vars: 
     name: Jane 
相關問題