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.

Reply via email to