--- - name: Stop systemd mpd service become: true ansible.builtin.systemd: name: mpd state: stopped enabled: false - name: Stop systemd mpd socket become: true ansible.builtin.systemd: name: mpd.socket state: stopped enabled: false - name: Remove previous configurations become: true ansible.builtin.file: path: "{{ item.path }}" state: absent loop: - path: "/etc/systemd/system/mpd.service.d" - path: "/etc/systemd/system/mpd.socket.d" - name: Create mpd directories become: true ansible.builtin.file: path: "{{ item.path }}" owner: "{{ item.owner }}" group: "{{ item.group }}" mode: "0755" state: directory loop: - path: "{{ mpd_config_dir }}" owner: sonny group: sonny - path: "{{ mpd_playlist_dir }}" owner: sonny group: sonny - path: "{{ mpd_state_dir }}" owner: sonny group: sonny - path: "{{ mpd_app_dir }}" owner: root group: root - name: Copy mpd templates become: true ansible.builtin.template: src: "{{ item.src }}" dest: "{{ item.dest }}" mode: "{{ item.mode }}" owner: "{{ item.owner }}" group: "{{ item.group }}" loop: - src: templates/mpd/config.j2 dest: "{{ mpd_config_dir }}/mpd.conf" mode: "0640" owner: sonny group: sonny - src: templates/mpd/dockerfile.j2 dest: "{{ mpd_app_dir }}/Dockerfile" mode: "0755" owner: sonny group: sonny - src: templates/mpd/docker-compose.j2 dest: "{{ mpd_app_dir }}/docker-compose.yml" mode: "0755" owner: sonny group: sonny - name: Create mpd files ansible.builtin.file: path: "{{ item }}" mode: "0755" state: touch loop: - "{{ mpd_config_dir }}/db" - "{{ mpd_config_dir }}/sticker.sql" - "{{ mpd_state_dir }}/state" - name: Stop current containers community.docker.docker_compose_v2: project_src: "{{ mpd_app_dir }}" state: stopped - name: Build image community.docker.docker_compose_v2: project_src: "{{ mpd_app_dir }}" build: always state: stopped - name: Remove dangling containers community.docker.docker_compose_v2: project_src: "{{ mpd_app_dir }}" remove_orphans: true state: stopped - name: Start container community.docker.docker_compose_v2: project_src: "{{ mpd_app_dir }}" state: present