diff --git a/roles/music/defaults/main.yaml b/roles/music/defaults/main.yaml new file mode 100644 index 0000000..3b9e2b6 --- /dev/null +++ b/roles/music/defaults/main.yaml @@ -0,0 +1 @@ +music_audio_user: audio diff --git a/roles/music/tasks/main.yaml b/roles/music/tasks/main.yaml index f239de7..5bb042b 100644 --- a/roles/music/tasks/main.yaml +++ b/roles/music/tasks/main.yaml @@ -1,3 +1,6 @@ --- +- tags: music_mpd + include_tasks: mpd.yaml + - tags: music_trollibox include_tasks: trollibox.yaml diff --git a/roles/music/tasks/mpd.yaml b/roles/music/tasks/mpd.yaml new file mode 100644 index 0000000..78c9581 --- /dev/null +++ b/roles/music/tasks/mpd.yaml @@ -0,0 +1,7 @@ +--- +- name: Install MPD + apt: + name: + - jackd + - mpd + state: present diff --git a/roles/music/tasks/trollibox.yaml b/roles/music/tasks/trollibox.yaml index 1e094eb..f707b26 100644 --- a/roles/music/tasks/trollibox.yaml +++ b/roles/music/tasks/trollibox.yaml @@ -11,3 +11,19 @@ - name: Initial build meta: flush_handlers + +- name: Install service file + template: + src: trollibox.service + dest: /etc/systemd/system/trollibox.service + owner: root + group: root + mode: 0644 + notify: restart trollibox + +- name: Enable Trollibox + systemd: + name: trollibox + state: started + enabled: true + daemon_reload: true diff --git a/roles/music/templates/trollibox.service b/roles/music/templates/trollibox.service new file mode 100644 index 0000000..6dd9041 --- /dev/null +++ b/roles/music/templates/trollibox.service @@ -0,0 +1,19 @@ +# +# Managed by Ansible +# + +[Unit] +Description=Trollibox +After=mpd.service network.target +Requires=mpd.service + +[Service] +Type=simple +Restart=always +RestartSec=2s +ExecStart=/opt/trollibox/bin/trollibox -conf /etc/trollibox.yaml +User={{ music_audio_user }} +Group={{ music_audio_user }} + +[Install] +WantedBy=multi-user.target