diff options
author | Christian Segundo | 2024-07-23 21:43:05 +0200 |
---|---|---|
committer | Christian Segundo | 2024-07-23 21:43:05 +0200 |
commit | 362af4e16d7cdfa1512a6f2f154f055907b4d900 (patch) | |
tree | f0e8817df1cad49bd466c60016cdd8b70913690c /src/cron.sh | |
parent | 076b6aefd5b17cccc34cc403b7b4f2ba4f093a57 (diff) | |
download | transmission-hacks-362af4e16d7cdfa1512a6f2f154f055907b4d900.tar.gz |
add ci
Diffstat (limited to 'src/cron.sh')
-rw-r--r-- | src/cron.sh | 46 |
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 |