2017-02-16 59 views
0

你好,我有一個以前從我以前工作過的IT人員那裏獲得的任務結構。Will Ansible任務是否運行?

- hosts: "{{env}}" 
    vars: 
    workspace: "{{ hostvars[localhost]['workspace'] }}" 
    post_build: false 
    tasks: 
- name: Delete log module folder on remote 
    file: blabla 
    state=absent 
    when: post_build 

- name: Copy login folder to remote 
    copy:src='blabla' 
    when: post_build 

任務是否會運行?因爲在開始時post_build變量設置爲false。但是這些任務只能在post_build爲真的情況下運行。在這種情況下爲什麼我們需要這些任務?

回答

2

如果只在播放中設置變量,任務將不會運行。

但是,可以通過在不同級別定義變量來覆蓋遊戲中定義的值,例如在執行行中使用--extra-vars參數。

閱讀關於variable precedence

該劇本的作者可能希望任務只有在明確指定的地方運行。


此外,請注意縮進和決定一個約定,即不Ansible符號(parameter=value)混合純YAML(parameter: value)。

+0

清除。謝謝。 – GergA