--- - name: WebDAV Freigabe einbinden hosts: webdav_testserver become: true vars: webdav_url: "https://www.kommsafe.de/webdav/Stadt%20K%C3%B6nigsbrunn/IuK/Schilling" webdav_user: "tim.schilling@koenigsbrunn.de" webdav_password: "HgdKS-P2004!" mount_point: "/mnt/webdav" tasks: - name: Installiere rclone apt: name: rclone state: present when: ansible_facts['os_family'] == 'Debian' - name: Verschlüssele das WebDAV-Passwort mit rclone obscure command: rclone obscure "{{ webdav_password }}" register: obscure_output - name: WebDAV-Konfigurationsdatei erstellen copy: dest: /root/.config/rclone/rclone.conf content: | [webdav] type = webdav url = {{ webdav_url }} vendor = other user = {{ webdav_user }} pass = {{ obscure_output.stdout }} owner: root group: root mode: "0600" - name: Mount-Punkt erstellen file: path: "{{ mount_point }}" state: directory mode: "0755" - name: WebDAV Freigabe mounten command: > rclone mount webdav: {{ mount_point }} --daemon --allow-other args: creates: "{{ mount_point }}/.mounted" - name: Docker Backupcontainer Starten hosts: dockerhost gather_facts: false module_defaults: tasks: - name: Start container community.docker.docker_container: command: python detach: false name: my-python-container output_logs: true - name: Erstelle Test Datein file: path: /home/tim/export/data/testfile.json state: touch owner: tim group: tim mode: '0644' - name: Datein Transferieren hosts: backuptransfer vars: mount_point: "/mnt/webdav" tasks: - name: Datei von Dockerhost auf Master übertragen run_once: true fetch: src=/home/tim/extport/data/testfile.json dest=buffer/ flat=true when: ansible_facts[inventory_hostname] == 'Tim-tt-02.kitl.bayern' - name: Datei von Master auf Webdav übertragen copy: src=buffer/ dest="{{ mount_point }}" when: ansible_facts[inventory_hostname] == 'Tim-tt-01.kitl.bayern'