From 6fac93936303d4dce23c443853ef2ab212d0b776 Mon Sep 17 00:00:00 2001 From: Massaki Archambault Date: Mon, 29 Aug 2022 09:23:19 -0400 Subject: [PATCH] add plex --- hosts | 8 ++++++++ playbook.yml | 6 +++++- roles/common/tasks/main.yml | 1 + roles/plex/defaults/main.yml | 1 + roles/plex/tasks/main.yml | 31 +++++++++++++++++++++++++++++++ 5 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 roles/plex/defaults/main.yml create mode 100644 roles/plex/tasks/main.yml diff --git a/hosts b/hosts index b770dad..8f6b39c 100644 --- a/hosts +++ b/hosts @@ -40,6 +40,13 @@ all: bastion: ansible_host: 192.168.20.10 users_enable_sudo: false + plex: + hosts: + plex: + ansible_host: 192.168.20.31 + nfs_libraries: + - 192.168.20.30:/mnt/pool0/badjware/Videos/Movies + - 192.168.20.30:/mnt/pool0/badjware/Videos/Series k3s: children: k3s-server: @@ -72,5 +79,6 @@ all: proxmox: bastions: k3s: + plex: vars: <<: *user_config \ No newline at end of file diff --git a/playbook.yml b/playbook.yml index ac38250..d6de561 100644 --- a/playbook.yml +++ b/playbook.yml @@ -16,4 +16,8 @@ - k3s-server - hosts: k3s-agent roles: - - k3s-agent \ No newline at end of file + - k3s-agent + +- hosts: plex + roles: + - plex \ No newline at end of file diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml index 6d6d2a4..d9a99ea 100644 --- a/roles/common/tasks/main.yml +++ b/roles/common/tasks/main.yml @@ -10,6 +10,7 @@ - curl - vim - tmux + - gpg - name: Set default editor to vim lineinfile: diff --git a/roles/plex/defaults/main.yml b/roles/plex/defaults/main.yml new file mode 100644 index 0000000..45150a9 --- /dev/null +++ b/roles/plex/defaults/main.yml @@ -0,0 +1 @@ +nfs_libraries: [] \ No newline at end of file diff --git a/roles/plex/tasks/main.yml b/roles/plex/tasks/main.yml new file mode 100644 index 0000000..7d09cfa --- /dev/null +++ b/roles/plex/tasks/main.yml @@ -0,0 +1,31 @@ +- name: Add plex package repository key + ansible.builtin.apt_key: + url: https://downloads.plex.tv/plex-keys/PlexSign.key + +- name: Add plex package repository + apt_repository: + repo: deb https://downloads.plex.tv/repo/deb public main + +- name: Install packages + apt: + update_cache: yes + name: + - gpg + - plexmediaserver + - nfs-common + +- name: Create library mount points + file: + path: "/mnt/{{ item|regex_replace(':','/') }}" + state: directory + loop: '{{ nfs_libraries }}' + +- name: Create library mount points + mount: + boot: yes + path: "/mnt/{{ item|regex_replace(':','/') }}" + src: "{{ item }}" + fstype: nfs + opts: defaults,ro,_netdev + state: mounted + loop: '{{ nfs_libraries }}'