aboutsummaryrefslogtreecommitdiff
path: root/src/cron.sh
diff options
context:
space:
mode:
authorChristian Segundo2024-07-23 21:43:05 +0200
committerChristian Segundo2024-07-23 21:43:05 +0200
commit362af4e16d7cdfa1512a6f2f154f055907b4d900 (patch)
treef0e8817df1cad49bd466c60016cdd8b70913690c /src/cron.sh
parent076b6aefd5b17cccc34cc403b7b4f2ba4f093a57 (diff)
downloadtransmission-hacks-362af4e16d7cdfa1512a6f2f154f055907b4d900.tar.gz
add ci
Diffstat (limited to 'src/cron.sh')
-rw-r--r--src/cron.sh46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/cron.sh b/src/cron.sh
new file mode 100644
index 0000000..1ce9e65
--- /dev/null
+++ b/src/cron.sh
@@ -0,0 +1,46 @@
+#!/bin/bash
+set -euo pipefail
+
+declare -A tag_age
+i=0
+while true; do
+ key="DELETE_TAG_${i}"
+ val="DELETE_AGE_${i}"
+ if [ -z "${!key:-}" ]; then
+ break
+ fi
+ tag_age["${!key}"]="${!val}"
+ i=$((i + 1))
+done
+
+declare -A unlinked_tag_age
+i=0
+while true; do
+ key="DELETE_UNLINKED_TAG_${i}"
+ val="DELETE_UNLINKED_AGE_${i}"
+ if [ -z "${!key:-}" ]; then
+ break
+ fi
+ unlinked_tag_age["${!key}"]="${!val}"
+ i=$((i + 1))
+done
+
+timeout "${SCRIPT_TIMEOUT}" "${PYTHON_PATH}" "${SCRIPT_PREFIX}"/tag-based-on-dir.py \
+ --host "${TRANSMISSION_HOST}"
+
+timeout "${SCRIPT_TIMEOUT}" "${PYTHON_PATH}" "${SCRIPT_PREFIX}"/ask-tracker-for-more-peers.py \
+ --host "${TRANSMISSION_HOST}"
+
+for key in "${!tag_age[@]}"; do
+ timeout "${SCRIPT_TIMEOUT}" "${PYTHON_PATH}" "${SCRIPT_PREFIX}"/delete-based-on-tag.py \
+ --host "${TRANSMISSION_HOST}" \
+ --tag "${key}" \
+ --age "${tag_age[$key]}"
+done
+
+for key in "${!unlinked_tag_age[@]}"; do
+ timeout "${SCRIPT_TIMEOUT}" "${PYTHON_PATH}" "${SCRIPT_PREFIX}"/delete-if-unlinked.py \
+ --host "${TRANSMISSION_HOST}" \
+ --tag "${key}" \
+ --min-age "${unlinked_tag_age[$key]}"
+done