upsies.trackers.bhd.config

Concrete TrackerConfigBase subclass for BHD

Classes

class upsies.trackers.bhd.config.BhdTrackerConfig(*, exclude: ListOfRegex, ~pydantic.functional_validators.BeforeValidator(func=~upsies.utils.types.ListOfRegex, json_schema_input_type=PydanticUndefined)] = ('\\.(?i:sfv|md5)$', '(?i: /extras/|/.+[\\. ]extras[\\. ]|/.+[\\. ]extra[\\. ]?\\d+[\\.])', '/(?: \\.fuse_hidden\\d+|\\.Trash/.*|\\.Trash-\\d+/.*|\\.DS_Store|\\.Trashes/.*|desktop\\.ini|Thumbs\\.db|@eaDir/.*|.*@SynoEAStream|.*@SynoResource|.*\\.miniso|.*dvdid\\.xml|.*\\.nzb|.*\\.par2|.*\\.srr|.*\\.srs|.*\\.torrent)$', '(?i: ^(?!.*/(BDMV|VIDEO_TS)/).*\\.(png|jpg|jpeg)$)', '\\.(?i: nfo)$', '(?i: /[!_0-]?sample/|[^/][\\.\\-_ ]sample\\.mkv|/sample[\\!\\-_].+\\.mkv|[\\.\\-_!]?sample-[a-zA-Z0-9]+\\.mkv|/[!#$%&*+\\-\\.]?sample\\.mkv)', '\\.(?i: srt|idx|sub)$'), add_to: str = '', copy_to: str = '', upload_url: str = 'https://beyond-hd.me/api/upload', announce_url: str = 'https://tracker.beyond-hd.me:2053/announce', announce_passkey: SecretStr = '', apikey: SecretStr = '', anonymous: Bool, ~pydantic.functional_validators.BeforeValidator(func=~upsies.utils.types.Bool, json_schema_input_type=PydanticUndefined)] = 'no', draft: Bool, ~pydantic.functional_validators.BeforeValidator(func=~upsies.utils.types.Bool, json_schema_input_type=PydanticUndefined)] = 'no', image_host: ListOfImagehost, ~pydantic.functional_validators.BeforeValidator(func=~upsies.utils.types.ListOfImagehost, json_schema_input_type=PydanticUndefined)] = ('imgbox', ), screenshots_count: Integer, ~pydantic.functional_validators.BeforeValidator(func=~upsies.utils.types.Integer.<locals>.Integer, json_schema_input_type=PydanticUndefined)] = 4, confirm: Bool, ~pydantic.functional_validators.BeforeValidator(func=~upsies.utils.types.Bool, json_schema_input_type=PydanticUndefined)] = 'no')[source]

Bases: TrackerConfigBase

defaults = BhdTrackerConfigDefaults(exclude=ListOfRegex((Regex('\\.(?i:sfv|md5)$'), Regex('(?i:/extras/|/.+[\\. ]extras[\\. ]|/.+[\\. ]extra[\\. ]?\\d+[\\.])'), Regex('/(?:\\.fuse_hidden\\d+|\\.Trash/.*|\\.Trash-\\d+/.*|\\.DS_Store|\\.Trashes/.*|desktop\\.ini|Thumbs\\.db|@eaDir/.*|.*@SynoEAStream|.*@SynoResource|.*\\.miniso|.*dvdid\\.xml|.*\\.nzb|.*\\.par2|.*\\.srr|.*\\.srs|.*\\.torrent)$'), Regex('(?i:^(?!.*/(BDMV|VIDEO_TS)/).*\\.(png|jpg|jpeg)$)'), Regex('\\.(?i:nfo)$'), Regex('(?i:/[!_0-]?sample/|[^/][\\.\\-_ ]sample\\.mkv|/sample[\\!\\-_].+\\.mkv|[\\.\\-_!]?sample-[a-zA-Z0-9]+\\.mkv|/[!#$%&*+\\-\\.]?sample\\.mkv)'), Regex('\\.(?i:srt|idx|sub)$'))), add_to='', copy_to='', upload_url='https://beyond-hd.me/api/upload', announce_url='https://tracker.beyond-hd.me:2053/announce', announce_passkey=SecretStr(''), apikey=SecretStr(''), anonymous=Bool('no'), draft=Bool('no'), image_host=ListOfImagehost((Imagehost('imgbox', options=('imgbb', 'imgbox', 'pixhost', 'ptpimg')),)), screenshots_count=Integer(4, min=3, max=10), confirm=Bool('no'))

Class property that holds an instance of this class with default values

See _CreateDefaults.

model_config = {'arbitrary_types_allowed': True, 'extra': 'forbid', 'validate_assignment': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].