--- - name: make the server known to the client lineinfile: line: "{{ borg_server }} ecdsa-sha2-nistp256 {{ hostvars[borg_server]['ansible_ssh_host_key_ecdsa_public'] }}" path: /root/.ssh/known_hosts create: yes - name: create borg client repo on server shell: "borg init --rsh \"ssh -i /root/.ssh/borg\" --encryption=none borg@{{ borg_server }}:/srv/borg/repos/{{ inventory_hostname }}" when: hostvars[borg_server]['ansible_local']['borg']['repos'][inventory_hostname] is not defined - name: reload ansible_local setup: filter=ansible_local delegate_to: "{{ borg_server }}" delegate_facts: True when: hostvars[borg_server]['ansible_local']['borg']['repos'][inventory_hostname] is not defined - name: deploy borg backup script template: dest: /usr/local/bin/adyxax_backup.sh src: backup.sh.j2 owner: root mode: 0500 - name: Run OS specific tasks include_tasks: "roles/borg/tasks/client_{{ ansible_distribution }}.yml" ...