Files
Cleanuparr/variables.md
2025-02-24 23:21:44 +02:00

15 KiB

Table of contents

General settings

TZ

  • The time zone to use.
  • Type: String.
  • Possible values: Any valid timezone.
  • Default: UTC.
  • Required: No.

DRY_RUN

  • When enabled, simulates irreversible operations (like deletions and notifications) without making actual changes.
  • Type: Boolean.
  • Possible values: true, false.
  • Default: false.
  • Required: No.

LOGGING__LOGLEVEL

  • Controls the detail level of application logs.
  • Type: String.
  • Possible values: Verbose, Debug, Information, Warning, Error, Fatal.
  • Default: Information.
  • Required: No.

LOGGING__FILE__ENABLED

  • Enables logging to a file.
  • Type: Boolean.
  • Possible values: true, false.
  • Default: false.
  • Required: No.

LOGGING__FILE__PATH

  • Directory where log files will be saved.
  • Type: String.
  • Default: Empty.
  • Required: No.

LOGGING__ENHANCED

  • Provides more detailed descriptions in logs whenever possible.
  • Type: Boolean.
  • Possible values: true, false.
  • Default: true.
  • Required: No.

Queue Cleaner settings

TRIGGERS__QUEUECLEANER

  • Cron schedule for the queue cleaner job.
  • Type: String - Quartz cron format.
  • Default: 0 0/5 * * * ? (every 5 minutes).
  • Required: Yes if queue cleaner is enabled.

Note

  • Maximum interval is 6 hours.
  • Ignored if QUEUECLEANER__RUNSEQUENTIALLY=true and CONTENTBLOCKER__ENABLED=true.

QUEUECLEANER__ENABLED

  • Enables or disables the queue cleaning functionality.
  • When enabled, processes all items in the *arr queue.
  • Type: Boolean
  • Possible values: true, false
  • Default: true
  • Required: No.

QUEUECLEANER__RUNSEQUENTIALLY

  • Controls whether queue cleaner runs after content blocker instead of in parallel.
  • When true, streamlines the cleaning process by running immediately after content blocker.
  • Type: Boolean
  • Possible values: true, false
  • Default: true
  • Required: No.

QUEUECLEANER__IMPORT_FAILED_MAX_STRIKES

  • Number of strikes before removing a failed import.
  • Set to 0 to never remove failed imports.
  • A strike is given when an item is stalled, stuck in metadata downloading, or failed to be imported.
  • Type: Integer
  • Possible values: 0 or greater
  • Default: 0
  • Required: No.

QUEUECLEANER__IMPORT_FAILED_IGNORE_PRIVATE

  • Controls whether to ignore failed imports from private trackers.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

QUEUECLEANER__IMPORT_FAILED_DELETE_PRIVATE

  • Controls whether to delete failed imports from private trackers from the download client.
  • Has no effect if QUEUECLEANER__IMPORT_FAILED_IGNORE_PRIVATE is true.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

Warning

Setting QUEUECLEANER__IMPORT_FAILED_DELETE_PRIVATE=true means you don't care about seeding, ratio, H&R and potentially losing your tracker account.

QUEUECLEANER__IMPORT_FAILED_IGNORE_PATTERNS

  • Patterns to look for in failed import messages that should be ignored.
  • Multiple patterns can be specified using incrementing numbers starting from 0.
  • Type: String array
  • Default: Empty.
  • Required: No.
  • Example:
QUEUECLEANER__IMPORT_FAILED_IGNORE_PATTERNS__0: "title mismatch"
QUEUECLEANER__IMPORT_FAILED_IGNORE_PATTERNS__1: "manual import required"

QUEUECLEANER__STALLED_MAX_STRIKES

  • Number of strikes before removing a stalled download.
  • Set to 0 to never remove stalled downloads.
  • A strike is given when download speed is 0.
  • Type: Integer
  • Possible values: 0 or greater
  • Default: 0
  • Required: No.

QUEUECLEANER__STALLED_RESET_STRIKES_ON_PROGRESS

  • Controls whether to remove strikes if any download progress was made since last checked.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

QUEUECLEANER__STALLED_IGNORE_PRIVATE

  • Controls whether to ignore stalled downloads from private trackers.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

QUEUECLEANER__STALLED_DELETE_PRIVATE

  • Controls whether to delete stalled private downloads from the download client.
  • Has no effect if QUEUECLEANER__STALLED_IGNORE_PRIVATE is true.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

Warning

Setting QUEUECLEANER__STALLED_DELETE_PRIVATE=true means you don't care about seeding, ratio, H&R and potentially losing your tracker account.

Content Blocker settings

TRIGGERS__CONTENTBLOCKER

  • Cron schedule for the content blocker job.
  • Type: String - Quartz cron format.
  • Default: 0 0/5 * * * ? (every 5 minutes).
  • Required: No.

Note

  • Maximum interval is 6 hours.

CONTENTBLOCKER__ENABLED

  • Enables or disables the content blocker functionality.
  • When enabled, processes all items in the *arr queue and marks unwanted files.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

CONTENTBLOCKER__IGNORE_PRIVATE

  • Controls whether to ignore downloads from private trackers.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

CONTENTBLOCKER__DELETE_PRIVATE

  • Controls whether to delete private downloads that have all files blocked from the download client.
  • Has no effect if CONTENTBLOCKER__IGNORE_PRIVATE is true.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

Warning

Setting CONTENTBLOCKER__DELETE_PRIVATE=true means you don't care about seeding, ratio, H&R and potentially losing your tracker account.

Download Cleaner settings

TRIGGERS__DOWNLOADCLEANER

  • Cron schedule for the download cleaner job.
  • Type: String - Quartz cron format.
  • Default: 0 0 * * * ? (every hour).
  • Required: No.

Note

  • Maximum interval is 6 hours.

DOWNLOADCLEANER__ENABLED

  • Enables or disables the download cleaner functionality.
  • When enabled, automatically cleans up downloads that have been seeding for a certain amount of time.
  • Type: Boolean.
  • Possible values: true, false
  • Default: false
  • Required: No.

DOWNLOADCLEANER__DELETE_PRIVATE

  • Controls whether to delete private downloads.
  • Type: Boolean.
  • Possible values: true, false
  • Default: false
  • Required: No.

Warning

Setting DOWNLOADCLEANER__DELETE_PRIVATE=true means you don't care about seeding, ratio, H&R and potentially losing your tracker account.

DOWNLOADCLEANER__CATEGORIES__0__NAME

  • Name of the category to clean.
  • Type: String.
  • Default: Empty.
  • Required: No.

Note

The category name must match the category that was set in the *arr. For qBittorrent, the category name is the name of the download category. For Deluge, the category name is the name of the label. For Transmission, the category name is the name of the download location.

DOWNLOADCLEANER__CATEGORIES__0__MAX_RATIO

  • Maximum ratio to reach before removing a download.
  • Type: Decimal.
  • Possible values: -1 or greater (-1 means no limit or disabled).
  • Default: -1
  • Required: No.

DOWNLOADCLEANER__CATEGORIES__0__MIN_SEED_TIME

  • Minimum number of hours to seed before removing a download, if the ratio has been met.
  • Used with MAX_RATIO to ensure a minimum seed time.
  • Type: Decimal.
  • Possible values: 0 or greater.
  • Default: 0
  • Required: No.

DOWNLOADCLEANER__CATEGORIES__0__MAX_SEED_TIME

  • Maximum number of hours to seed before removing a download.
  • Type: Decimal.
  • Possible values: -1 or greater (-1 means no limit or disabled).
  • Default: -1
  • Required: No.

Note

A download is cleaned when any of (MAX_RATIO & MIN_SEED_TIME) or MAX_SEED_TIME is reached.

Note

Multiple categories can be specified using this format, where <NUMBER> starts from 0:

DOWNLOADCLEANER__CATEGORIES__<NUMBER>__NAME
DOWNLOADCLEANER__CATEGORIES__<NUMBER>__MAX_RATIO
DOWNLOADCLEANER__CATEGORIES__<NUMBER>__MIN_SEED_TIME
DOWNLOADCLEANER__CATEGORIES__<NUMBER>__MAX_SEED_TIME

Download Client settings

DOWNLOAD_CLIENT

  • Specifies which download client is used by *arrs.
  • Type: String.
  • Possible values: none, qbittorrent, deluge, transmission.
  • Default: none
  • Required: No.

Note

Only one download client can be enabled at a time. If you have more than one download client, you should deploy multiple instances of cleanuperr.

QBITTORRENT__URL

  • URL of the qBittorrent instance.
  • Type: String.
  • Default: http://localhost:8080.
  • Required: No.

QBITTORRENT__USERNAME

  • Username for qBittorrent authentication.
  • Type: String.
  • Default: Empty.
  • Required: No.

QBITTORRENT__PASSWORD

  • Password for qBittorrent authentication.
  • Type: String.
  • Default: Empty.
  • Required: No.

DELUGE__URL

  • URL of the Deluge instance.
  • Type: String.
  • Default: http://localhost:8112.
  • Required: No.

DELUGE__PASSWORD

  • Password for Deluge authentication.
  • Type: String.
  • Default: Empty.
  • Required: No.

TRANSMISSION__URL

  • URL of the Transmission instance.
  • Type: String.
  • Default: http://localhost:9091.
  • Required: No.

TRANSMISSION__USERNAME

  • Username for Transmission authentication.
  • Type: String.
  • Default: Empty.
  • Required: No.

TRANSMISSION__PASSWORD

  • Password for Transmission authentication.
  • Type: String.
  • Default: Empty.
  • Required: No.

Arr settings

SONARR__ENABLED

  • Enables or disables Sonarr cleanup.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

SONARR__BLOCK__TYPE

  • Determines how file blocking works for Sonarr.
  • Type: String
  • Possible values: blacklist, whitelist
  • Default: blacklist
  • Required: No.

SONARR__BLOCK__PATH

  • Path to the blocklist file (local file or URL).
  • Must be JSON compatible.
  • Type: String
  • Default: Empty.
  • Required: No.

SONARR__SEARCHTYPE

  • Determines what to search for after removing a queue item.
  • Type: String
  • Possible values: Episode, Season, Series
  • Default: Episode
  • Required: No.

SONARR__INSTANCES__0__URL

  • URL of the Sonarr instance.
  • Type: String
  • Default: http://localhost:8989
  • Required: No.

SONARR__INSTANCES__0__APIKEY

  • API key for the Sonarr instance.
  • Type: String
  • Default: Empty.
  • Required: No.

RADARR__ENABLED

  • Enables or disables Radarr cleanup.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

RADARR__BLOCK__TYPE

  • Determines how file blocking works for Radarr.
  • Type: String
  • Possible values: blacklist, whitelist
  • Default: blacklist
  • Required: No.

RADARR__BLOCK__PATH

  • Path to the blocklist file (local file or URL).
  • Must be JSON compatible.
  • Type: String
  • Default: Empty.
  • Required: No.

RADARR__INSTANCES__0__URL

  • URL of the Radarr instance.
  • Type: String
  • Default: http://localhost:7878
  • Required: No.

RADARR__INSTANCES__0__APIKEY

  • API key for the Radarr instance.
  • Type: String
  • Default: Empty.
  • Required: No.

LIDARR__ENABLED

  • Enables or disables Lidarr cleanup.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

LIDARR__BLOCK__TYPE

  • Determines how file blocking works for Lidarr.
  • Type: String
  • Possible values: blacklist, whitelist
  • Default: blacklist
  • Required: No.

LIDARR__BLOCK__PATH

  • Path to the blocklist file (local file or URL).
  • Must be JSON compatible.
  • Type: String
  • Default: Empty.
  • Required: No.

LIDARR__INSTANCES__0__URL

  • URL of the Lidarr instance.
  • Type: String
  • Default: http://localhost:8686
  • Required: No.

LIDARR__INSTANCES__0__APIKEY

  • API key for the Lidarr instance.
  • Type: String
  • Default: Empty.
  • Required: No.

Note

Multiple instances can be specified for each *arr using this format, where <NUMBER> starts from 0:

<ARR>__INSTANCES__<NUMBER>__URL
<ARR>__INSTANCES__<NUMBER>__APIKEY

Note

The blocklists (blacklist/whitelist) support the following patterns:

*example            // file name ends with "example"
example*            // file name starts with "example"
*example*           // file name has "example" in the name
example             // file name is exactly the word "example"
regex:<ANY_REGEX>   // regex that needs to be marked at the start of the line with "regex:"

Note

This blacklist and this whitelist can be used for Sonarr and Radarr, but they are not suitable for other *arrs.

Notification settings

NOTIFIARR__API_KEY

  • Notifiarr API key for sending notifications.
  • Requires Notifiarr's Passthrough integration to work.
  • Type: String
  • Default: Empty.
  • Required: No.

NOTIFIARR__CHANNEL_ID

  • Discord channel ID where notifications will be sent.
  • Type: String
  • Default: Empty.
  • Required: No.

NOTIFIARR__ON_IMPORT_FAILED_STRIKE

  • Controls whether to notify when an item receives a failed import strike.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

NOTIFIARR__ON_STALLED_STRIKE

  • Controls whether to notify when an item receives a stalled download strike.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

NOTIFIARR__ON_QUEUE_ITEM_DELETED

  • Controls whether to notify when a queue item is deleted.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

NOTIFIARR__ON_DOWNLOAD_CLEANED

  • Controls whether to notify when a download is cleaned.
  • Type: Boolean
  • Possible values: true, false
  • Default: false
  • Required: No.

Advanced settings

HTTP_MAX_RETRIES

  • The number of times to retry a failed HTTP call.
  • Applies to calls to *arrs, download clients, and other services.
  • Type: Integer
  • Possible values: 0 or greater
  • Default: 0
  • Required: No.

HTTP_TIMEOUT

  • The number of seconds to wait before failing an HTTP call.
  • Applies to calls to *arrs, download clients, and other services.
  • Type: Integer
  • Possible values: Greater than 0
  • Default: 100
  • Required: No.