diff --git a/roles/navidrome/tasks/main.yml b/roles/navidrome/tasks/main.yml new file mode 100644 index 0000000..9868c63 --- /dev/null +++ b/roles/navidrome/tasks/main.yml @@ -0,0 +1,53 @@ +--- +- name: Create service base directory + file: + path: "{{ service_config_base }}" + state: directory + mode: 0755 + +- name: Create Navidrome directories + file: + path: "{{ item }}" + state: directory + mode: 0755 + loop: + - "{{ navidrome_data_dir }}" + - "{{ navidrome_plugins_dir }}" + - "{{ navidrome_music_folder }}" + +- name: Set correct ownership for Navidrome directories + file: + path: "{{ item }}" + owner: 1000 + group: 1000 + recurse: yes + loop: + - "{{ navidrome_data_dir }}" + - "{{ navidrome_plugins_dir }}" + ignore_errors: yes + +- name: Deploy Navidrome docker-compose.yml + template: + src: docker-compose.yml.j2 + dest: "{{ navidrome_base_dir }}/docker-compose.yml" + mode: 0644 + +- name: Start Navidrome services + shell: | + cd {{ navidrome_base_dir }} + docker compose up -d + args: + executable: /bin/bash + +- name: Wait for services to start + pause: + seconds: 15 + +- name: Check Navidrome container status + shell: docker ps --filter name=navidrome + register: navidrome_status + changed_when: false + +- name: Show Navidrome status + debug: + var: navidrome_status.stdout \ No newline at end of file