Guest User

Qbit Manage Yaml

a guest
May 22nd, 2024
144
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
YAML 15.53 KB | None | 0 0
  1. # This is an example configuration file that documents all the options.
  2. # It will need to be modified for your specific use case.
  3. # Please refer to the link below for more details on how to set up the configuration file
  4. # https://github.com/StuffAnThings/qbit_manage/wiki/Config-Setup
  5.  
  6. commands:
  7.  # The commands defined below will IGNORE any commands used in command line and docker env variables.
  8.   dry_run: true
  9.   cross_seed: false
  10.   recheck: false
  11.   cat_update: false
  12.   tag_update: false
  13.   rem_unregistered: false
  14.   tag_tracker_error: false
  15.   rem_orphaned: false
  16.   tag_nohardlinks: false
  17.   share_limits: false
  18.   skip_qb_version_check: false
  19.   skip_cleanup: false
  20.  
  21. settings:
  22.   force_auto_tmm: false # Will force qBittorrent to enable Automatic Torrent Management for each torrent.
  23.   tracker_error_tag: issue # Will set the tag of any torrents that do not have a working tracker.
  24.   nohardlinks_tag: noHL # Will set the tag of any torrents with no hardlinks.
  25.   share_limits_tag: ~share_limit # Will add this tag when applying share limits to provide an easy way to filter torrents by share limit group/priority for each torrent
  26.   share_limits_min_seeding_time_tag: MinSeedTimeNotReached # Tag to be added to torrents that have not yet reached the minimum seeding time
  27.   share_limits_min_num_seeds_tag: MinSeedsNotMet # Tag to be added to torrents that have not yet reached the minimum number of seeds
  28.   share_limits_last_active_tag: LastActiveLimitNotReached # Tag to be added to torrents that have not yet reached the last active limit
  29.   cross_seed_tag: cross-seed # Will set the tag of any torrents that are added by cross-seed command
  30.   cat_filter_completed: true # Filters for completed torrents only when running cat_update command
  31.   share_limits_filter_completed: true # Filters for completed torrents only when running share_limits command
  32.   tag_nohardlinks_filter_completed: true # Filters for completed torrents only when running tag_nohardlinks command
  33. directory:
  34.  # Do not remove these
  35.   # Cross-seed var: </your/path/here/>  # Output directory of cross-seed
  36.   # root_dir var: </your/path/here/>  # Root downloads directory used to check for orphaned files, noHL, and RecycleBin.
  37.   # <OPTIONAL> remote_dir var: </your/path/here/>  # Path of docker host mapping of root_dir.
  38.   # remote_dir must be set if you're running qbit_manage locally and qBittorrent/cross_seed is in a docker
  39.   # remote_dir should not be set if qbit_manage is running in a container
  40.   # <OPTIONAL> recycle_bin var: </your/path/here/>   # Path of the RecycleBin folder. Default location is set to remote_dir/.RecycleBin
  41.   # <OPTIONAL> torrents_dir var: </your/path/here/>  # Path of the your qbittorrent torrents directory. Required for `save_torrents` attribute in recyclebin
  42.   # <OPTIONAL> orphaned_dir var: </your/path/here/>  # Path of the the Orphaned Data folder. This is similar to RecycleBin, but only for orphaned data.
  43.   cross_seed: /data/torrents/crossseed/
  44.   root_dir: /data/torrents/
  45.   remote_dir: /mnt/user/data/torrents/
  46.   recycle_bin: /mnt/user/data/torrents/.RecycleBin
  47.   torrents_dir: /data/torrents/BT_backup
  48.   orphaned_dir: /data/torrents/orphaned_data
  49. cat:
  50.  # Category & Path Parameters
  51.   # <Category Name> : <save_path>  # Path of your save directory.
  52.   movies: /data/torrents/movies
  53.   movies-uhd: /data/torrents/movies-uhd
  54.   tv: /data/torrents/tv
  55.   books: /data/torrents/books
  56.  
  57. cat_change:
  58.  # This moves all the torrents from one category to another category. This executes on --cat-update
  59.   # WARNING: if the paths are different and Default Torrent Management Mode is set to automatic the files could be moved !!!
  60.   # <Old Category Name> : <New Category>
  61.   Radarr-HD.cross-seed: movies-hd
  62.   Radarr-UHD.cross-seed: movies-uhd
  63.   movies-hd.cross-seed: movies-hd
  64.   movies-uhd.cross-seed: movies-uhd
  65.  
  66. tracker:
  67.  # Mandatory
  68.   # Tag Parameters
  69.   # <Tracker URL Keyword>:    # <MANDATORY> This is the keyword in the tracker url. You can define multiple tracker urls by splitting with `|` delimiter
  70.   # <MANDATORY> Set tag name. Can be a list of tags or a single tag
  71.   #   tag: <Tag Name>
  72.   # <OPTIONAL> Set the category based on tracker URL. This category option takes priority over the category defined by save directory
  73.   #   cat: <Category Name>
  74.   # <OPTIONAL> Set this to the notifiarr react name. This is used to add indexer reactions to the notifications sent by Notifiarr
  75.   #   notifiarr: <notifiarr indexer>
  76.   animebytes.tv:
  77.     tag: AnimeBytes
  78.     notifiarr: animebytes
  79.   avistaz:
  80.     tag:
  81.    - Avistaz
  82.     - tag2
  83.     - tag3
  84.     notifiarr: avistaz
  85.   beyond-hd:
  86.     tag: [Beyond-HD, tag2, tag3]
  87.     cat: movies
  88.     notifiarr: beyondhd
  89.   blutopia:
  90.     tag: Blutopia
  91.     notifiarr: blutopia
  92.   cartoonchaos:
  93.     tag: CartoonChaos
  94.   digitalcore:
  95.     tag: DigitalCore
  96.     notifiarr: digitalcore
  97.   gazellegames:
  98.     tag: GGn
  99.   hdts:
  100.     tag: HDTorrents
  101.   landof.tv:
  102.     tag: BroadcasTheNet
  103.     notifiarr: broadcasthenet
  104.   myanonamouse:
  105.     tag: MaM
  106.   passthepopcorn:
  107.     tag: PassThePopcorn
  108.     notifiarr: passthepopcorn
  109.   privatehd:
  110.     tag: PrivateHD
  111.     notifiarr:
  112.   torrentdb:
  113.     tag: TorrentDB
  114.     notifiarr: torrentdb
  115.   torrentleech|tleechreload:
  116.     tag: TorrentLeech
  117.     notifiarr: torrentleech
  118.   tv-vault:
  119.     tag: TV-Vault
  120.   # The "other" key is a special keyword and if defined will tag any other trackers that don't match the above trackers into this tag
  121.   other:
  122.     tag: other
  123.  
  124. nohardlinks:
  125.  # Tag Movies/Series that are not hard linked outside the root directory
  126.   # Mandatory to fill out directory parameter above to use this function (root_dir/remote_dir)
  127.   # This variable should be set to your category name of your completed movies/completed series in qbit. Acceptable variable can be any category you would like to tag if there are no hardlinks found
  128.   movies-completed-4k:
  129.   series-completed-4k:
  130.   movies-completed:
  131.    # <OPTIONAL> exclude_tags var: Will exclude torrents with any of the following tags when searching through the category.
  132.     exclude_tags:
  133.    # <OPTIONAL> ignore_root_dir var: Will ignore any hardlinks detected in the same root_dir (Default True).
  134.     ignore_root_dir: true
  135.   # Can have additional categories set with separate ratio/seeding times defined.
  136.   series-completed:
  137.    # <OPTIONAL> exclude_tags var: Will exclude torrents with any of the following tags when searching through the category.
  138.     exclude_tags:
  139.    # <OPTIONAL> ignore_root_dir var: Will ignore any hardlinks detected in the same root_dir (Default True).
  140.     ignore_root_dir: true
  141.  
  142. share_limits:
  143.  # Control how torrent share limits are set depending on the priority of your grouping
  144.   # Each torrent will be matched with the share limit group with the highest priority that meets the group filter criteria.
  145.   # Each torrent can only be matched with one share limit group
  146.   # This variable is mandatory and is a text defining the name of your grouping. This can be any string you want
  147.   noHL:
  148.    # <MANDATORY> priority: <int/float> # This is the priority of your grouping. The lower the number the higher the priority
  149.     priority: 1
  150.     # <OPTIONAL> include_all_tags: <list> # Filter the group based on one or more tags. Multiple include_all_tags are checked with an AND condition
  151.     # All tags defined here must be present in the torrent for it to be included in this group
  152.     include_all_tags:
  153.    - noHL
  154.     # <OPTIONAL> include_any_tags: <list> # Filter the group based on one or more tags. Multiple include_any_tags are checked with an OR condition
  155.     # Any tags defined here must be present in the torrent for it to be included in this group
  156.     include_any_tags:
  157.    - noHL
  158.     # <OPTIONAL> exclude_all_tags: <list> # Filter by excluding one or more tags. Multiple exclude_all_tags are checked with an AND condition
  159.     # This is useful to combine with the category filter to exclude one or more tags from an entire category
  160.     # All tags defined here must be present in the torrent for it to be excluded in this group
  161.     exclude_all_tags:
  162.    - Beyond-HD
  163.     # <OPTIONAL> exclude_any_tags: <list> # Filter by excluding one or more tags. Multiple exclude_any_tags are checked with an OR condition
  164.     # This is useful to combine with the category filter to exclude one or more tags from an entire category
  165.     # Any tags defined here must be present in the torrent for it to be excluded in this group
  166.     exclude_any_tags:
  167.    - Beyond-HD
  168.     # <OPTIONAL> categories: <list> # Filter by including one or more categories. Multiple categories are checked with an OR condition
  169.     # Since one torrent can only be associated with a single category, multiple categories are checked with an OR condition
  170.     categories:
  171.    - RadarrComplete
  172.     - SonarrComplete
  173.     # <OPTIONAL> max_ratio <float>: Will set the torrent Maximum share ratio until torrent is stopped from seeding/uploading and may be cleaned up / removed if the minimums have been met.
  174.     # Will default to -1 (no limit) if not specified for the group.
  175.     max_ratio: 5.0
  176.     # <OPTIONAL> max_seeding_time <str>: Will set the torrent Maximum seeding time until torrent is stopped from seeding/uploading and may be cleaned up / removed if the minimums have been met.
  177.     # See Some examples of valid time expressions (https://github.com/onegreyonewhite/pytimeparse2)
  178.     # 32m, 2h32m, 3d2h32m, 1w3d2h32m
  179.     # Will default to -1 (no limit) if not specified for the group.
  180.     max_seeding_time: 90d
  181.     # <OPTIONAL> min_seeding_time <str>: Will prevent torrent deletion by cleanup variable if torrent has not yet minimum seeding time (minutes).
  182.     # This should only be set if you are using this in conjunction with max_seeding_time and max_ratio. If you are not setting a max_ratio, then use max_seeding_time instead.
  183.     # If the torrent has not yet reached this minimum seeding time, it will change the share limits back to no limits and resume the torrent to continue seeding.
  184.     # See Some examples of valid time expressions (https://github.com/onegreyonewhite/pytimeparse2)
  185.     # 32m, 2h32m, 3d2h32m, 1w3d2h32m
  186.     # Will default to 0 if not specified for the group.
  187.     min_seeding_time: 30d
  188.     # <OPTIONAL> last_active <str>: Will prevent torrent deletion by cleanup variable if torrent has been active within the last x minutes.
  189.     # If the torrent has been active within the last x minutes, it will change the share limits back to no limits and resume the torrent to continue seeding.
  190.     # See Some examples of valid time expressions (https://github.com/onegreyonewhite/pytimeparse2)
  191.     # 32m, 2h32m, 3d2h32m, 1w3d2h32m
  192.     # Will default to 0 if not specified for the group.
  193.     last_active: 30d
  194.     # <OPTIONAL> Limit Upload Speed <int>: Will limit the upload speed KiB/s (KiloBytes/second) (`-1` : No Limit)
  195.     limit_upload_speed: 0
  196.     # <OPTIONAL> Enable Group Upload Speed <bool>: Upload speed limits are applied at the group level. This will take limit_upload_speed defined and divide it equally among the number of torrents in the group.
  197.     enable_group_upload_speed: false
  198.     # <OPTIONAL> cleanup <bool>: WARNING!! Setting this as true Will remove and delete contents of any torrents that satisfies the share limits (max time OR max ratio)
  199.     cleanup: false
  200.     # <OPTIONAL> resume_torrent_after_change <bool>: This variable will resume your torrent after changing share limits. Default is true
  201.     resume_torrent_after_change: true
  202.     # <OPTIONAL> add_group_to_tag <bool>: This adds your grouping as a tag with a prefix defined in settings . Default is true
  203.     # Example: A grouping defined as noHL will have a tag set to ~share_limit.noHL (if using the default prefix)
  204.     add_group_to_tag: true
  205.     # <OPTIONAL> min_num_seeds <int>: Will prevent torrent deletion by cleanup variable if the number of seeds is less than the value set here.
  206.     # If the torrent has less number of seeds than the min_num_seeds, the share limits will be changed back to no limits and resume the torrent to continue seeding.
  207.     # Will default to 0 if not specified for the group.
  208.     min_num_seeds: 0
  209.   cross-seed:
  210.     priority: 2
  211.     include_all_tags:
  212.    - cross-seed
  213.     max_seeding_time: 7d
  214.     cleanup: false
  215.   PTP:
  216.     priority: 3
  217.     include_all_tags:
  218.    - PassThePopcorn
  219.     max_ratio: 2.0
  220.     max_seeding_time: 90d
  221.     cleanup: false
  222.   default:
  223.     priority: 999
  224.     max_ratio: -1
  225.     max_seeding_time: -1
  226.     cleanup: false
  227.  
  228. recyclebin:
  229.  # Recycle Bin method of deletion will move files into the recycle bin (Located in /root_dir/.RecycleBin) instead of directly deleting them in qbit
  230.   # By default the Recycle Bin will be emptied on every run of the qbit_manage script if empty_after_x_days is defined.
  231.   enabled: true
  232.   # <OPTIONAL> empty_after_x_days var:
  233.   # Will automatically remove all files and folders in recycle bin after x days. (Checks every script run)
  234.   # If this variable is not defined it, the RecycleBin will never be emptied.
  235.   # WARNING: Setting this variable to 0 will delete all files immediately upon script run!
  236.   empty_after_x_days: 60
  237.   # <OPTIONAL> save_torrents var:
  238.   # If this option is set to true you MUST fill out the torrents_dir in the directory attribute.
  239.   # This will save a copy of your .torrent and .fastresume file in the recycle bin before deleting it from qbittorrent
  240.   save_torrents: true
  241.   # <OPTIONAL> split_by_category var:
  242.   # This will split the recycle bin folder by the save path defined in the `cat` attribute
  243.   # and add the base folder name of the recycle bin that was defined in the `recycle_bin` sub-attribute under directory.
  244.   split_by_category: false
  245.  
  246. orphaned:
  247.  # Orphaned files are those in the root_dir download directory that are not referenced by any active torrents.
  248.   # Will automatically remove all files and folders in orphaned data after x days. (Checks every script run)
  249.   # If this variable is not defined it, the orphaned data will never be emptied.
  250.   # WARNING: Setting this variable to 0 will delete all files immediately upon script run!
  251.   empty_after_x_days: 60
  252.   # File patterns that will not be considered orphaned files. Handy for generated files that aren't part of the torrent but belong with the torrent's files
  253.   exclude_patterns:
  254.  - '**/.DS_Store'
  255.   - '**/Thumbs.db'
  256.   - '**/@eaDir'
  257.   - /data/torrents/temp/**
  258.   - '**/*.!qB'
  259.   - '**/*_unpackerred'
  260.  
  261. apprise:
  262.  # Apprise integration with webhooks
  263.   # Leave Empty/Blank to disable
  264.   # Mandatory to fill out the url of your apprise API endpoint
  265.   api_url: http://apprise-api:8000
  266.   # Mandatory to fill out the notification url/urls based on the notification services provided by apprise. https://github.com/caronc/apprise/wiki
  267.   notify_url:
  268. notifiarr:
  269.  # Notifiarr integration with webhooks
  270.   # Leave Empty/Blank to disable
  271.   # Mandatory to fill out API Key
  272.   apikey: ####################################
  273.   # <OPTIONAL> Set to a unique value (could be your username on notifiarr for example)
  274.   instance:
  275. webhooks:
  276.  # Webhook notifications:
  277.   # Possible values:
  278.   # Set value to notifiarr if using notifiarr integration
  279.   # Set value to apprise if using apprise integration
  280.   # Set value to a valid webhook URL
  281.   # Set value to nothing (leave Empty/Blank) to disable
  282.   error: https://mywebhookurl.com/qbt_manage
  283.   run_start: notifiarr
  284.   run_end: apprise
  285.   function:
  286.     cross_seed: https://mywebhookurl.com/qbt_manage
  287.     recheck: notifiarr
  288.     cat_update: apprise
  289.     tag_update: notifiarr
  290.     rem_unregistered: notifiarr
  291.     tag_tracker_error: notifiarr
  292.     rem_orphaned: notifiarr
  293.     tag_nohardlinks: notifiarr
  294.     share_limits: notifiarr
  295.     cleanup_dirs: notifiarr
  296.  
  297. bhd:
  298.  # BHD Integration used for checking unregistered torrents
  299.   apikey:
Add Comment
Please, Sign In to add comment