add mpd role completed

This commit is contained in:
vincent 2019-01-07 21:12:48 +01:00
commit a5a49113f3
6 changed files with 110 additions and 0 deletions

3
defaults/main.yml Normal file
View File

@ -0,0 +1,3 @@
---
# defaults file for mpd
music_directory: "/home/{{username}}/Music"

5
handlers/main.yml Normal file
View File

@ -0,0 +1,5 @@
---
# handlers file for mpd
- name: start_mpd
become: yes
service: name=mpd.service state=started enabled=yes

60
meta/main.yml Normal file
View File

@ -0,0 +1,60 @@
galaxy_info:
author: your name
description: your description
company: your company (optional)
# If the issue tracker for your role is not on github, uncomment the
# next line and provide a value
# issue_tracker_url: http://example.com/issue/tracker
# Some suggested licenses:
# - BSD (default)
# - MIT
# - GPLv2
# - GPLv3
# - Apache
# - CC-BY
license: license (GPLv2, CC-BY, etc)
min_ansible_version: 2.4
# If this a Container Enabled role, provide the minimum Ansible Container version.
# min_ansible_container_version:
# Optionally specify the branch Galaxy will use when accessing the GitHub
# repo for this role. During role install, if no tags are available,
# Galaxy will use this branch. During import Galaxy will access files on
# this branch. If Travis integration is configured, only notifications for this
# branch will be accepted. Otherwise, in all cases, the repo's default branch
# (usually master) will be used.
#github_branch:
#
# Provide a list of supported platforms, and for each platform a list of versions.
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
# To view available platforms and versions (or releases), visit:
# https://galaxy.ansible.com/api/v1/platforms/
#
# platforms:
# - name: Fedora
# versions:
# - all
# - 25
# - name: SomePlatform
# versions:
# - all
# - 1.0
# - 7
# - 99.99
galaxy_tags: []
# List tags for your role here, one per line. A tag is a keyword that describes
# and categorizes the role. Users find roles by searching for tags. Be sure to
# remove the '[]' above, if you add tags to this list.
#
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
# Maximum 20 tags per role.
dependencies: []
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
# if you add dependencies to this list.

14
tasks/main.yml Normal file
View File

@ -0,0 +1,14 @@
---
# tasks file for mpd
- name: install mpd
pacman:
state: present # not required. choices: absent;latest;present. Desired state of the package.
name: ['mpd' , 'mpc' , 'ncmpcpp' ] # not required. Name or list of names of the packages to install, upgrade, or remove.
become: yes
- name: apply mpd.conf template
become: yes
template:
dest: /etc/mpd.conf # required. Location to render the template to on the remote machine.
src: ../templates/mpd.conf.j2 # required. Path of a Jinja2 formatted template on the Ansible controller. This can be a relative or absolute path.
notify: start_mpd

26
templates/mpd.conf.j2 Normal file
View File

@ -0,0 +1,26 @@
# See: /usr/share/doc/mpd/mpdconf.example
mixer_type "software"
music_directory "{{music_directory}}"
audio_output {
type "alsa"
name "Sound Card"
options "dev=dmixer"
device "plug:dmix"
}
audio_output {
type "pulse"
name "pulse audio"
server "localhost"
}
audio_output {
type "fifo"
name "my_fifo"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
pid_file "/run/mpd/mpd.pid"
db_file "/var/lib/mpd/mpd.db"
state_file "/var/lib/mpd/mpdstate"
playlist_directory "/var/lib/mpd/playlists"
max_output_buffer_size "16384"

2
vars/main.yml Normal file
View File

@ -0,0 +1,2 @@
---
# vars file for mpd