--- - name: Set up the arrstack hosts: streaming vars: apps: - sonarr configs: - src: '../assets/arrstack/sonarr/config.xml' dest: '/home/docker/sonarr/config.xml' - src: '../assets/arrstack/prowlarr/config.xml' dest: '/home/docker/prowlarr/config.xml' - src: '../assets/arrstack/radarr/config.xml' dest: '/home/docker/radarr/config.xml' - src: '../assets/arrstack/readarr/config.xml' dest: '/home/docker/readarr/config.xml' - src: '../assets/arrstack/qbittorrent/qBittorrent.conf' dest: '/home/docker/qbittorrent/qBittorrent.conf' dbs: - arrstack_sonarr_main - arrstack_sonarr_log - arrstack_radarr_main - arrstack_radarr_log - arrstack_prowlarr_main - arrstack_prowlarr_log - arrstack_readarr_main - arrstack_readarr_log - arrstack_readarr_cache tasks: - name: Mount the media share to the VM ansible.builtin.include_tasks: file: ../tasks/mount_nfs.yml vars: mount_path: "/home/docker/media" mount_source: "10.89.0.15:/mnt/main/media" - name: Create arrstack user on postgres ansible.builtin.include_tasks: file: '../tasks/postgres/create_user.yml' vars: user: arrstack password: password - name: Create app databases on postgres ansible.builtin.include_tasks: file: '../tasks/postgres/create_database.yml' vars: database: "{{ item }}" loop: "{{ dbs }}" - name: Give the arrstack user full privs on the databases ansible.builtin.include_tasks: file: '../tasks/postgres/give_user_full_privs.yml' vars: user: arrstack database: "{{ item }}" loop: "{{ dbs }}" - name: Ensure config directories exist ansible.builtin.file: path: "{{ item.dest | dirname }}" state: directory mode: '0777' become: true loop: "{{ configs }}" - name: Copy configuration files ansible.builtin.copy: src: "{{ item.src }}" dest: "{{ item.dest }}" owner: javi group: javi mode: '0777' loop: "{{ configs }}" - name: Ensure docker compose folder exists ansible.builtin.file: path: /home/javi/docker/arrstack state: directory mode: '0777' become: true - name: Copy docker-compose.yml to server ansible.builtin.copy: src: '../docker/arrstack/docker-compose.yml' dest: '/home/javi/docker/arrstack/docker-compose.yml' owner: javi group: javi mode: '0777' - name: Copy docker .env to server ansible.builtin.copy: src: '../docker/arrstack/.env' dest: '/home/javi/docker/arrstack/.env' owner: javi group: javi mode: '0777' - name: Start up the containers ansible.builtin.command: docker compose up -d args: chdir: /home/javi/docker/arrstack become: true # - name: Restart just in case # ansible.builtin.command: docker compose restart # args: # chdir: /home/javi/docker/arrstack # become: true