added a arrs atalled failled handler

This commit is contained in:
2026-04-22 18:22:29 -04:00
parent 3b08aa30c1
commit 39f2525d0f
3 changed files with 375 additions and 6 deletions
+33 -4
View File
@@ -818,7 +818,7 @@ NETWORK_CONNECT_CONTAINERS=(
)
NETWORK_CONNECT_NETWORKS=(
"high-availability" # Docker network name — must exist before array start
"nextcloud-aio" # Docker network name — must exist before array start
)
# ==============================================================================================
@@ -948,9 +948,9 @@ MEDIA_MAINTENANCE_JOBS=(
"Media/media_shares_permissions.sh" # apply permissions first
"Media/media_cleaner.sh anime" # remove junk from anime shares
"Media/media_cleaner.sh media" # remove junk from media shares
# "Media/lidarr_cleanup.sh" # remove orphaned music files
# "Media/sonarr_cleanup.sh" # remove orphaned TV files
# "Media/radarr_cleanup.sh" # remove orphaned movie files
"Media/lidarr_cleanup.sh" # remove orphaned music files
"Media/sonarr_cleanup.sh" # remove orphaned TV files
"Media/radarr_cleanup.sh" # remove orphaned movie files
)
# ━━━ Arr Cleanup ━━━
@@ -1020,6 +1020,35 @@ RADARR_ORPHAN_AGE=7
RADARR_EXTENSIONS=("mkv" "mp4" "avi" "m4v" "wmv" "mov")
RADARR_PROTECTED_PATTERNS=("*.jpg" "*.jpeg" "*.png" "*.nfo" "*.srt" "*.sub" "*.ass" "*.ssa")
# ━━━ Arr Import Recovery ━━━
# Automatically blocklists and re-searches failed imports and stalled downloads.
# Runs daily at 5am — by this time overnight downloads are complete and any
# failures have had time to surface. Items under ARR_IMPORT_RECOVERY_AGE are
# skipped — gives the arr time to retry on its own before we intervene.
#
# Targets two problem types from the queue API:
# importFailed — downloaded successfully but arr couldn't import it
# stalled — download stuck with no connections or progress
#
# Action: blocklist the release + remove from queue + trigger new search
# Blocklist prevents the same bad release being grabbed again
# New search finds a different release automatically
# If all releases are bad → arr will exhaust options, manual check needed
# Notification tells you what was actioned so you can monitor
#
# Per-arr toggles — disable temporarily if an arr is having issues
# detect_hosts() selects correct URL and API key per server at runtime
# Lidarr runs on HOST1 only — exits cleanly on HOST2
ARR_IMPORT_RECOVERY_AGE=12 # hours — skip items newer than this, give arr time to retry
# Per-arr enable/disable
HOST1_SONARR_RECOVERY=true # Tv_Shows import recovery
HOST1_RADARR_RECOVERY=true # Movies import recovery
HOST1_LIDARR_RECOVERY=true # Music import recovery — HOST1 only
HOST2_SONARR_RECOVERY=true # Anime_Shows import recovery
HOST2_RADARR_RECOVERY=true # Anime_Movies import recovery
# ==============================================================================================
# ── TRANSCODES ────────────────────────────────────────────────────────────────────────────────
# ==============================================================================================