--- - name: Deploy Plex service block: - name: Set Plex directories ansible.builtin.set_fact: plex_data_dir: "/mnt/services/plex" plex_service_dir: "{{ ansible_env.HOME }}/.services/plex" - name: Create Plex directories ansible.builtin.file: path: "{{ plex_dir }}" state: directory mode: "0755" loop: - "{{ plex_data_dir }}" - "{{ plex_service_dir }}" loop_control: loop_var: plex_dir - name: Deploy Plex docker-compose.yml ansible.builtin.template: src: docker-compose.yml.j2 dest: "{{ plex_service_dir }}/docker-compose.yml" mode: "0644" register: plex_compose - name: Stop Plex service ansible.builtin.command: docker compose -f "{{ plex_service_dir }}/docker-compose.yml" down --remove-orphans when: plex_compose.changed - name: Start Plex service ansible.builtin.command: docker compose -f "{{ plex_service_dir }}/docker-compose.yml" up -d when: plex_compose.changed tags: - services - plex