diff --git a/roles/sonarr/handlers/main.yml b/roles/sonarr/handlers/main.yml new file mode 100644 index 0000000..8341255 --- /dev/null +++ b/roles/sonarr/handlers/main.yml @@ -0,0 +1,7 @@ +--- +- name: Restart sonarr + ansible.builtin.systemd_service: + name: sonarr + daemon_reload: true + enabled: true + state: restarted diff --git a/roles/sonarr/tasks/main.yml b/roles/sonarr/tasks/main.yml new file mode 100644 index 0000000..157cd03 --- /dev/null +++ b/roles/sonarr/tasks/main.yml @@ -0,0 +1,50 @@ +--- + +- name: Put NFS client on fstab + ansible.posix.mount: + path: /net + src: nfs.mateu.be:/mnt/tank/nfs + fstype: nfs + opts: auto,x-systemd.automount,_netdev,nofail,noatime,nolock,tcp,actimeo=1800,bg,retry=10 + state: present + +- name: Create cron for NFS client + ansible.builtin.cron: + name: "mount /net" + special_time: reboot + job: "mount -a" + +- name: Install prerequisites + ansible.builtin.package: + name: + - curl + - sqlite3 + - wget + - libicu72 + state: present + update_cache: true + +- name: Create sonarr user + ansible.builtin.user: + comment: sonarr + home: "{{ sonarr_home }}" + name: sonarr + password: '!' + shell: /bin/bash + state: present + +- name: Unarchive sonarr + ansible.builtin.unarchive: + src: "{{ sonarr_download_url }}" + remote_src: true + dest: "/opt" + owner: sonarr + group: sonarr + notify: Restart sonarr + +- name: Install sonarr systemd file + ansible.builtin.template: + src: sonarr.service.j2 + dest: /etc/systemd/system/sonarr.service + mode: "0o644" + notify: Restart sonarr diff --git a/roles/sonarr/templates/sonarr.service.j2 b/roles/sonarr/templates/sonarr.service.j2 new file mode 100644 index 0000000..4e288dc --- /dev/null +++ b/roles/sonarr/templates/sonarr.service.j2 @@ -0,0 +1,14 @@ +[Unit] +Description=Sonarr Daemon +After=syslog.target network.target +[Service] +User=sonarr +Group=sonarr +UMask=0002 +Type=simple +ExecStart={{ sonarr_home }}/Sonarr -nobrowser +TimeoutStopSec=20 +KillMode=process +Restart=on-failure +[Install] +WantedBy=multi-user.target diff --git a/roles/sonarr/vars/main.yml b/roles/sonarr/vars/main.yml new file mode 100644 index 0000000..56f80d9 --- /dev/null +++ b/roles/sonarr/vars/main.yml @@ -0,0 +1,5 @@ +--- + +sonarr_version: "4.0.10.2544" +sonarr_download_url: "https://github.com/Sonarr/Sonarr/releases/download/v{{ sonarr_version }}/Sonarr.main.{{ sonarr_version }}.linux-x64.tar.gz" +sonarr_home: "/opt/Sonarr"