aboutsummaryrefslogtreecommitdiffstats
path: root/roles
diff options
context:
space:
mode:
Diffstat (limited to 'roles')
-rw-r--r--roles/jails/16_dl/defaults/main.yml1
-rw-r--r--roles/jails/16_dl/files/fix-library-permissions.sh10
-rw-r--r--roles/jails/16_dl/tasks/main.yml8
-rw-r--r--roles/jails/16_dl/templates/etc_crontab.j23
4 files changed, 22 insertions, 0 deletions
diff --git a/roles/jails/16_dl/defaults/main.yml b/roles/jails/16_dl/defaults/main.yml
index 6ecca6d..c6ae55d 100644
--- a/roles/jails/16_dl/defaults/main.yml
+++ b/roles/jails/16_dl/defaults/main.yml
@@ -42,6 +42,7 @@ pkg:
- wireguard-tools
- git
- bash
+ - fd-find
- shntool
- cuetools
- vorbisgain
diff --git a/roles/jails/16_dl/files/fix-library-permissions.sh b/roles/jails/16_dl/files/fix-library-permissions.sh
new file mode 100644
index 0000000..852dca6
--- /dev/null
+++ b/roles/jails/16_dl/files/fix-library-permissions.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+set -eu
+
+DIRS="/mnt/storage/media /mnt/storage/downloads"
+
+for d in $DIRS; do
+ chown -R storage:storage $d
+ chmod -R u=rwX,g=rX,o=rX $d
+done
diff --git a/roles/jails/16_dl/tasks/main.yml b/roles/jails/16_dl/tasks/main.yml
index 0b26313..9651a3b 100644
--- a/roles/jails/16_dl/tasks/main.yml
+++ b/roles/jails/16_dl/tasks/main.yml
@@ -157,6 +157,14 @@
mode: "0755"
notify: Get random wireguard tunnel
+- name: Deploy fix-library-permissions script
+ copy:
+ src: "{{ jail_role_dir }}/files/fix-library-permissions.sh"
+ dest: /usr/local/bin/fix-library-permissions.sh
+ owner: root
+ group: wheel
+ mode: "0755"
+
- name: Deploy crontab
template:
src: "{{ jail_role_dir }}/templates/etc_crontab.j2"
diff --git a/roles/jails/16_dl/templates/etc_crontab.j2 b/roles/jails/16_dl/templates/etc_crontab.j2
index 1faae3d..01a7720 100644
--- a/roles/jails/16_dl/templates/etc_crontab.j2
+++ b/roles/jails/16_dl/templates/etc_crontab.j2
@@ -3,3 +3,6 @@ PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin
# Change tunnel every hour
0 * * * * root /usr/local/bin/wg_random_tunnel >> /var/log/random_tunnel.log 2>&1
+
+# Fix library permissions periodically
+*/5 * * * * root /usr/local/bin/fix-library-permissions.sh