---
- name: Setup crontab
  hosts: servers
  gather_facts: false
  tasks:
    - name: Cron - Docker system prune
      ansible.builtin.cron:
        name: docker system prune
        minute: 0
        hour: 4
        weekday: SUN
        job: /mnt/data/bin/healthcheck docker-system-prune /mnt/data/bin/docker-system-prune
    - name: Cron - Dump manuels
      ansible.builtin.cron:
        name: Dump manuels
        minute: 45
        job: /mnt/data/bin/healthcheck dump-manuels /mnt/data/bin/dump-manuels
    - name: Cron - Dump paperless
      ansible.builtin.cron:
        name: Dump paperless
        minute: 47
        job: /mnt/data/bin/healthcheck dump-paperless /mnt/data/bin/dump-paperless
    - name: Cron - Dump miniflux
      ansible.builtin.cron:
        name: Dump miniflux
        minute: 50
        job: /mnt/data/bin/healthcheck dump-miniflux /mnt/data/bin/dump-miniflux
    - name: Cron - Dump voyages.coccomagnard.fr
      ansible.builtin.cron:
        name: Dump voyages.coccomagnard.fr
        minute: 55
        job: /mnt/data/bin/healthcheck dump-voyages-coccomagnard-fr /mnt/data/bin/dump-voyages.coccomagnard.fr
    - name: Cron - Dump gabnotes.org
      ansible.builtin.cron:
        name: Dump gabnotes.org
        minute: 56
        job: /mnt/data/bin/healthcheck dump-gabnotes-org /mnt/data/bin/dump-gabnotes.org
    - name: Cron - Dump voyages-lois.augendre.info
      ansible.builtin.cron:
        name: Dump voyages-lois.augendre.info
        minute: 57
        job: /mnt/data/bin/healthcheck dump-voyages-lois-augendre-info /mnt/data/bin/dump-voyages-lois.augendre.info
    - name: Cron - Download Freebox invoice
      ansible.builtin.cron:
        name: Download Freebox invoice
        minute: 0
        hour: 13
        day: 5
        job: /mnt/data/bin/healthcheck downloader /mnt/data/bin/download-freebox
    - name: Cron - Download Free Mobile invoice
      ansible.builtin.cron:
        name: Download Free Mobile invoice
        minute: 0
        hour: 13
        day: 2
        job: /mnt/data/bin/healthcheck downloader /mnt/data/bin/download-free-mobile
    - name: Cron - Download Eau du Grand Lyon invoice
      ansible.builtin.cron:
        name: Download Eau du Grand Lyon invoice
        minute: 0
        hour: 13
        day: 10
        month: "6,12"
        job: /mnt/data/bin/healthcheck downloader /mnt/data/bin/download-eau-du-grand-lyon
    - name: Cron - Download Shiva payslip
      ansible.builtin.cron:
        name: Download Shiva payslip
        minute: 0
        hour: 13
        day: 10
        job: /mnt/data/bin/healthcheck downloader /mnt/data/bin/download-shiva
    - name: Cron - Download LCL bank statement
      ansible.builtin.cron:
        name: Download LCL bank statement
        minute: 0
        hour: 13
        day: 10
        job: /mnt/data/bin/healthcheck downloader /mnt/data/bin/download-lcl-checking
    - name: Cron - Restart plex container for auto version check
      ansible.builtin.cron:
        name: Restart plex container for auto version check
        minute: 0
        hour: 8
        job: /usr/bin/docker compose -f /mnt/data/media/docker-compose.yaml restart plex
    - name: Cron - Backup pCloud to Backblaze
      ansible.builtin.cron:
        name: Backup pCloud to Backblaze
        minute: 0
        hour: 4
        job: /mnt/data/bin/healthcheck pcloud-to-backblaze /mnt/data/bin/pcloud-to-backblaze