Skip to content

Instantly share code, notes, and snippets.

@omgjlk
Created January 2, 2015 18:55
Show Gist options
  • Save omgjlk/f112c20a46e44dfc52dc to your computer and use it in GitHub Desktop.
Save omgjlk/f112c20a46e44dfc52dc to your computer and use it in GitHub Desktop.
~/src/derp> cat boo.yaml
---
- name: test something
hosts: localhost
gather_facts: false
tasks:
- debug: msg="hi"
changed_when: true
notify: a handler
- meta: flush_handlers
- debug: msg="after flush"
changed_when: true
notify: a handler
handlers:
- name: a handler
debug: msg="I am a handler"
- name: b handler
debug: msg="I am b handler"
~/src/derp> ansible-playbook -i derp, boo.yaml -vv
PLAY [test something] *********************************************************
TASK: [debug msg="hi"] ********************************************************
changed: [localhost] => {
"changed": true,
"msg": "hi"
}
NOTIFIED: [a handler] *********************************************************
ok: [localhost] => {
"msg": "I am a handler"
}
TASK: [debug msg="after flush"] ***********************************************
changed: [localhost] => {
"changed": true,
"msg": "after flush"
}
NOTIFIED: [a handler] *********************************************************
ok: [localhost] => {
"msg": "I am a handler"
}
PLAY RECAP ********************************************************************
localhost : ok=4 changed=2 unreachable=0 failed=0
@masteinhauser
Copy link

I still disagree, see below:

[13:57:19][myles@myles-mbp ~]$ cat boo.yaml 

---
- name: test something
  hosts: localhost
  gather_facts: false
  tasks:
    - debug: msg="hi1"
      changed_when: true
      notify: a handler

    - debug: msg="hi2"
      changed_when: true
      notify: a handler

    - meta: flush_handlers

    - debug: msg="after flush"
      changed_when: true
      notify: b handler

  handlers:
    - name: a handler
      debug: msg="I am a handler"

    - name: b handler
      debug: msg="I am b handler"
[13:57:35][myles@myles-mbp ~]$ ansible-playbook -i derp, boo.yaml -vv

PLAY [test something] ********************************************************* 

TASK: [debug msg="hi1"] ******************************************************* 
changed: [localhost] => {
    "changed": true, 
    "msg": "hi1"
}

TASK: [debug msg="hi2"] ******************************************************* 
changed: [localhost] => {
    "changed": true, 
    "msg": "hi2"
}

NOTIFIED: [a handler] ********************************************************* 
ok: [localhost] => {
    "msg": "I am a handler"
}

TASK: [debug msg="after flush"] *********************************************** 
changed: [localhost] => {
    "changed": true, 
    "msg": "after flush"
}

NOTIFIED: [b handler] ********************************************************* 
ok: [localhost] => {
    "msg": "I am b handler"
}

PLAY RECAP ******************************************************************** 
localhost                  : ok=5    changed=3    unreachable=0    failed=0   

[13:57:37][myles@myles-mbp ~]$ 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment