Hello,
I am a newbie to Ansible and trying to figure out how to synchronize
between 3 hosts based on condition. Below are details:
There are 3 nodes and based on which node is primary (I was able to get a
custom fact set for it) need to delegate to that host (which runs
synchronize from that host to other two hosts).
Custom fact basically is value 1 or 0 (1 means Primary/Master and 0 means
not).
I am unable to get the hostname (primary hostname) value to include into
the synchronize steps. Below is the playbook I have. How do I make
synchronize read the "primary" hostname value to run the next steps.
---
- name: Playbook for rsync
become: yes
hosts: clients
gather_facts: True
tasks:
- name: Task to rsync from Primary server
synchronize:
src: "{{ item.source }}"
dest: "{{ item.dest }}"
with_items:
- { source: '/rsynctest/', dest: '/rsynctest/' }
- { source: '/rsynctest1/', dest: '/rsynctest1/' }
delegate_to: "{{ ansible_hostname }}"
when:
- ansible_local.determine.isprimary == "1"
Thanks
-Raj
--
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 view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/8db34741-fc8b-43b6-90e4-5ff78d6b8e9c%40googlegroups.com.