Using conditional "when" with handlers

66 views
Skip to first unread message

rro...@augury.com

unread,
Oct 4, 2015, 9:01:04 AM10/4/15
to Ansible Project
HI
I have a code in my playbook like this : 

  - name: Copy init scripts
    template: src=file-server.conf.j2  dest=/etc/init/file-server.conf
    register: init_script
    notify: restart file-server

- name: Copy env scripts
  template: src=file-server.env.j2  dest=/etc/default/file-server.env
  register: env_script
  notify: restart file-server 

I want to notify the handler  for both tasks in one "handler". I tried : 
  - name: restart file-server 
    service: name=file-server state=restarted
    when: {{ item}}.changed
    with_items:
       - init_script
       - env_script

but it doesn't  work!!
Any ideas ? 
   

David Karban

unread,
Oct 4, 2015, 9:45:27 AM10/4/15
to ansible...@googlegroups.com
Hi, I guess, init_script and env_script are much longer, that you thougth. Try:
- debug: var=env_script to see which part of variable you want to use.

David Karban
Linux server specialist/Specialista na správu linuxových serverů
www.karban.eu

--
You received this message because you are subscribed to the Google Groups "Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ansible-proje...@googlegroups.com.
To post to this group, send email to ansible...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/b674135e-7011-48b6-bd12-1541682a1b35%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Borys Borysenko

unread,
Oct 4, 2015, 4:39:58 PM10/4/15
to Ansible Project
Hi, actually handlers are triggered once at the end of each block of tasks in a playbook, even were notified by multiple different tasks. I might be wrong, but in your case i don't understand why you need to use when statement with handler task.
Reply all
Reply to author
Forward
0 new messages