1
我使用ansible進行自動部署。在不存在的情況下使用本地事實(`ansible_local`)
我需要的某個軟件包的安裝是一個漫長的,非標準的和無聊的操作。我只想在必要時運行相應的任務,也就是說,如果它之前沒有執行過。
我的計劃包括在具有這樣安裝的最後一步,創建一個本地的事實:
的mypackage.fact
文件是這樣的:
[general]
installed=yes
在這一點上,我想使用例如有條件的地方事實,所以我可以避免兩次運行無聊過程:
- include: install_boring
when: not(ansible_local.mypackage.general.installed | bool)
顯然這是因爲ansible_local
未定義。我知道default
過濾器存在,但對ansible_local
,mypackage
,general
和installed
中的每一個都執行多級缺省設置感覺很不舒服。
有沒有一種優雅的方式來實現這一目標?
沒有,沒有。 – techraf