I have this task in a play for group 'dbservers':
name: test
debug: msg='{{ is_master }}'
sudo: true
sudo_user: postgres
when: is_master
with_items: groups['dbservers'][1::]
I wrote this because I wanted only master ( which is groups['dbservers'][0]
with hostname 'pgserver-1' ) to show the message for every slave.
is_master is evaluated before based on the hostname.
With 1 master and 1 slave it doesn't work:
TASK: [database | test]
*******************************************************
<....> ESTABLISH CONNECTION FOR USER: root
<....> ESTABLISH CONNECTION FOR USER: root
ok: [pgserver-2] => (item=pgserver-2) => {
"item": "pgserver-2",
"msg": "False"
}
ok: [pgserver-1] => (item=pgserver-2) => {
"item": "pgserver-2",
"msg": "True"
}
The first message shouldn't be shown but be skipped. It's like 'when' isn't
working but is_master is correctly evaluated. what am I doing wrong?
--
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 [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/ba7edb61-9699-4199-ab0d-9e7f7303f165%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.