Ansible任务是否会运行?

时间:2017-02-16 09:00:51

标签: ansible

您好我有一个以前的任务结构,我从之前在我身边工作的IT人员那里得到了。

- 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成立才能运行任务。在这种情况下,为什么我们需要这些任务?

1 个答案:

答案 0 :(得分:2)

如果变量仅在游戏中设置,则任务将不会运行。

但是在play中定义的值可以通过在不同级别定义变量来覆盖,例如在执行行中使用--extra-vars参数。

了解variable precedence

该剧本的作者可能希望仅在其他地方明确指定时才能运行任务。

此外,请注意缩进并决定单一约定,即不要将纯YAML(parameter: value)与Ansible符号(parameter=value)混合。