This PR contains the following updates: | Package | Update | Change | |---|---|---| | [ghcr.io/autobrr/qui](https://github.com/autobrr/qui) | minor | `v1.11.0` → `v1.12.0` | --- ### Release Notes <details> <summary>autobrr/qui (ghcr.io/autobrr/qui)</summary> ### [`v1.12.0`](https://github.com/autobrr/qui/releases/tag/v1.12.0) [Compare Source](https://github.com/autobrr/qui/compare/v1.11.0...v1.12.0) #### Changelog ##### New Features - [`202e950`](202e950ae1): feat(automations): Add `free_space` condition ([#​1061](https://github.com/autobrr/qui/issues/1061)) ([@​Barcode-eng](https://github.com/Barcode-eng)) - [`3b106d6`](3b106d698d): feat(automations): make conditions optional for non-delete rules and add drag reorder ([#​939](https://github.com/autobrr/qui/issues/939)) ([@​s0up4200](https://github.com/s0up4200)) - [`0684d75`](0684d75e9c): feat(config): Add QUI\_\_OIDC\_CLIENT\_SECRET\_FILE env var ([#​841](https://github.com/autobrr/qui/issues/841)) ([@​PedDavid](https://github.com/PedDavid)) - [`dac0173`](dac01738bc): feat(config): allow disabling tracker icon fetching ([#​823](https://github.com/autobrr/qui/issues/823)) ([@​s0up4200](https://github.com/s0up4200)) - [`dc10bad`](dc10badb00): feat(crossseed): add cancel run and opt-in errored torrent recovery ([#​918](https://github.com/autobrr/qui/issues/918)) ([@​s0up4200](https://github.com/s0up4200)) - [`cd1fcc9`](cd1fcc962e): feat(crossseed): add custom category option for cross-seeds ([#​907](https://github.com/autobrr/qui/issues/907)) ([@​s0up4200](https://github.com/s0up4200)) - [`d189fe9`](d189fe92c4): feat(crossseed): add indexerName to webhook apply + fix category mode defaults ([#​916](https://github.com/autobrr/qui/issues/916)) ([@​s0up4200](https://github.com/s0up4200)) - [`03a147e`](03a147e76f): feat(crossseed): add option to skip recheck-required matches ([#​825](https://github.com/autobrr/qui/issues/825)) ([@​s0up4200](https://github.com/s0up4200)) - [`edae00a`](edae00a247): feat(crossseed): add optional hardlink mode for cross-seeding ([#​849](https://github.com/autobrr/qui/issues/849)) ([@​s0up4200](https://github.com/s0up4200)) - [`0938436`](093843661d): feat(crossseed): add source aliasing for WEB/WEB-DL/WEBRip precheck matching ([#​874](https://github.com/autobrr/qui/issues/874)) ([@​s0up4200](https://github.com/s0up4200)) - [`65f6129`](65f6129a1a): feat(crossseed): show failure reasons, prune runs, and add cache cleanup ([#​923](https://github.com/autobrr/qui/issues/923)) ([@​s0up4200](https://github.com/s0up4200)) - [`e10fba8`](e10fba85bf): feat(details): torrent details panel improvements ([#​884](https://github.com/autobrr/qui/issues/884)) ([@​s0up4200](https://github.com/s0up4200)) - [`6921140`](6921140e12): feat(docs): add Docusaurus documentation site ([@​s0up4200](https://github.com/s0up4200)) - [`6a5a66c`](6a5a66ceea): feat(docs): add Icon and webUI variables to the Unraid install guide ([#​942](https://github.com/autobrr/qui/issues/942)) ([@​BaukeZwart](https://github.com/BaukeZwart)) - [`281fce7`](281fce7a25): feat(docs): add local search plugin ([#​1076](https://github.com/autobrr/qui/issues/1076)) ([@​s0up4200](https://github.com/s0up4200)) - [`566de08`](566de08b30): feat(docs): add qui logo, update readme, remove v4 flag ([@​s0up4200](https://github.com/s0up4200)) - [`b83ac5a`](b83ac5a178): feat(docs): apply minimal.css theme to Docusaurus ([@​s0up4200](https://github.com/s0up4200)) - [`fe6a6df`](fe6a6dfa9f): feat(docs): improve documentation pages and add support page ([@​s0up4200](https://github.com/s0up4200)) - [`62a7ad5`](62a7ad5e11): feat(docs): use qui favicon ([@​s0up4200](https://github.com/s0up4200)) - [`5d124c0`](5d124c0771): feat(orphan): add auto cleanup mode ([#​897](https://github.com/autobrr/qui/issues/897)) ([@​s0up4200](https://github.com/s0up4200)) - [`3172ad9`](3172ad9ca3): feat(settings): add log settings + live log stream ([#​876](https://github.com/autobrr/qui/issues/876)) ([@​s0up4200](https://github.com/s0up4200)) - [`3c1b34b`](3c1b34b9dd): feat(torrents): add "torrent introuvable" to unregistered status ([#​836](https://github.com/autobrr/qui/issues/836)) ([@​kephasdev](https://github.com/kephasdev)) - [`afe4d39`](afe4d3932f): feat(torrents): add tracker URL editing for single torrents ([#​848](https://github.com/autobrr/qui/issues/848)) ([@​s0up4200](https://github.com/s0up4200)) - [`76dedd7`](76dedd7aae): feat(torrents): update GeneralTabHorizontal to display limits and improve layout ([#​1078](https://github.com/autobrr/qui/issues/1078)) ([@​martylukyy](https://github.com/martylukyy)) - [`6831c24`](6831c249db): feat(ui): unify payment options into single dialog ([@​s0up4200](https://github.com/s0up4200)) - [`4dcdf7f`](4dcdf7ff63): feat(web): add local file access indicator to instance cards ([#​911](https://github.com/autobrr/qui/issues/911)) ([@​s0up4200](https://github.com/s0up4200)) - [`a560e5e`](a560e5e6cd): feat(web): compact torrent details panel ([#​833](https://github.com/autobrr/qui/issues/833)) ([@​martylukyy](https://github.com/martylukyy)) - [`557e7bd`](557e7bd072): feat: add issue/discussion template ([#​945](https://github.com/autobrr/qui/issues/945)) ([@​s0up4200](https://github.com/s0up4200)) - [`8b93719`](8b93719a2c): feat: add workflow automation system with category actions, orphan scanner, and hardlink detection ([#​818](https://github.com/autobrr/qui/issues/818)) ([@​s0up4200](https://github.com/s0up4200)) ##### Bug Fixes - [`b85ad6b`](b85ad6b8d7): fix(automations): allow delete rules to match incomplete torrents ([#​926](https://github.com/autobrr/qui/issues/926)) ([@​s0up4200](https://github.com/s0up4200)) - [`ae06200`](ae06200e60): fix(automations): make tags field condition operators tag-aware ([#​908](https://github.com/autobrr/qui/issues/908)) ([@​s0up4200](https://github.com/s0up4200)) - [`ace0101`](ace01014e1): fix(crossseed): detect folder mismatch for bare file to folder cross-seeds ([#​846](https://github.com/autobrr/qui/issues/846)) ([@​s0up4200](https://github.com/s0up4200)) - [`1cc1243`](1cc1243958): fix(crossseed): enforce resolution and language matching with sensible defaults ([#​855](https://github.com/autobrr/qui/issues/855)) ([@​s0up4200](https://github.com/s0up4200)) - [`cefb9cd`](cefb9cd20b): fix(crossseed): execute external program reliably after injection ([#​1083](https://github.com/autobrr/qui/issues/1083)) ([@​s0up4200](https://github.com/s0up4200)) - [`867e2da`](867e2da8c4): fix(crossseed): improve matching with size validation and relaxed audio checks ([#​845](https://github.com/autobrr/qui/issues/845)) ([@​s0up4200](https://github.com/s0up4200)) - [`4b5079b`](4b5079b266): fix(crossseed): persist custom category settings in PATCH handler ([#​913](https://github.com/autobrr/qui/issues/913)) ([@​s0up4200](https://github.com/s0up4200)) - [`cfbbc1f`](cfbbc1fd49): fix(crossseed): prevent season packs matching episodes ([#​854](https://github.com/autobrr/qui/issues/854)) ([@​s0up4200](https://github.com/s0up4200)) - [`c7c1706`](c7c1706b70): fix(crossseed): reconcile interrupted runs on startup ([#​1084](https://github.com/autobrr/qui/issues/1084)) ([@​s0up4200](https://github.com/s0up4200)) - [`7d633bd`](7d633bdf50): fix(crossseed): use ContentPath for manually-managed single-file torrents ([#​832](https://github.com/autobrr/qui/issues/832)) ([@​s0up4200](https://github.com/s0up4200)) - [`d5db761`](d5db761a03): fix(database): include arr\_instances in string pool cleanup + remove auto-recovery ([#​898](https://github.com/autobrr/qui/issues/898)) ([@​s0up4200](https://github.com/s0up4200)) - [`c73ec6f`](c73ec6f4e5): fix(database): prevent race between stmt cache access and db close ([#​840](https://github.com/autobrr/qui/issues/840)) ([@​s0up4200](https://github.com/s0up4200)) - [`a40b872`](a40b872bbd): fix(db): drop legacy hardlink columns from cross\_seed\_settings ([#​912](https://github.com/autobrr/qui/issues/912)) ([@​s0up4200](https://github.com/s0up4200)) - [`e400af3`](e400af3d7b): fix(db): recover wedged SQLite writer + stop cross-seed tight loop ([#​890](https://github.com/autobrr/qui/issues/890)) ([@​s0up4200](https://github.com/s0up4200)) - [`90e15b4`](90e15b4aae): fix(deps): update rls to recognize IP as iPlayer ([#​922](https://github.com/autobrr/qui/issues/922)) ([@​s0up4200](https://github.com/s0up4200)) - [`8e81b9f`](8e81b9f396): fix(proxy): honor TLSSkipVerify for proxied requests ([#​1051](https://github.com/autobrr/qui/issues/1051)) ([@​s0up4200](https://github.com/s0up4200)) - [`eb2bee0`](eb2bee0ce3): fix(security): redact sensitive URL parameters in logs ([#​853](https://github.com/autobrr/qui/issues/853)) ([@​s0up4200](https://github.com/s0up4200)) - [`40982bc`](40982bc2e1): fix(themes): prevent reset on license errors, improve switch performance ([#​844](https://github.com/autobrr/qui/issues/844)) ([@​s0up4200](https://github.com/s0up4200)) - [`a8a32f7`](a8a32f7fbe): fix(ui): incomplete torrents aren't "Completed: 1969-12-31" ([#​851](https://github.com/autobrr/qui/issues/851)) ([@​finevan](https://github.com/finevan)) - [`5908bba`](5908bba2c2): fix(ui): preserve category collapse state when toggling incognito mode ([#​834](https://github.com/autobrr/qui/issues/834)) ([@​jabloink](https://github.com/jabloink)) - [`25c847e`](25c847ecf1): fix(ui): torrents with no creation metadata don't display 1969 ([#​873](https://github.com/autobrr/qui/issues/873)) ([@​finevan](https://github.com/finevan)) - [`6403b6a`](6403b6a126): fix(web): column filter status now matches all states in category ([#​880](https://github.com/autobrr/qui/issues/880)) ([@​s0up4200](https://github.com/s0up4200)) - [`eafc4e7`](eafc4e72ef): fix(web): make delete cross-seed check rely on content\_path matches ([#​1080](https://github.com/autobrr/qui/issues/1080)) ([@​s0up4200](https://github.com/s0up4200)) - [`d57c749`](d57c7490ce): fix(web): only show selection checkbox on normal view ([#​830](https://github.com/autobrr/qui/issues/830)) ([@​jabloink](https://github.com/jabloink)) - [`60338f6`](60338f60e9): fix(web): optimize TorrentDetailsPanel for mobile view and make tabs scrollable horizontally ([#​1066](https://github.com/autobrr/qui/issues/1066)) ([@​martylukyy](https://github.com/martylukyy)) - [`aedab87`](aedab87318): fix(web): speed limit input reformatting during typing ([#​881](https://github.com/autobrr/qui/issues/881)) ([@​s0up4200](https://github.com/s0up4200)) - [`df7f3e0`](df7f3e04c4): fix(web): truncate file progress percentage instead of rounding ([#​919](https://github.com/autobrr/qui/issues/919)) ([@​s0up4200](https://github.com/s0up4200)) - [`2fadd01`](2fadd01a9a): fix(web): update eslint config for flat config compatibility ([#​879](https://github.com/autobrr/qui/issues/879)) ([@​s0up4200](https://github.com/s0up4200)) - [`721cedd`](721cedd3e6): fix(web): use fixed heights for mobile torrent cards ([#​812](https://github.com/autobrr/qui/issues/812)) ([@​jabloink](https://github.com/jabloink)) - [`a7db605`](a7db605edb): fix: remove pnpm-workspace.yaml breaking CI ([@​s0up4200](https://github.com/s0up4200)) - [`c0ddc0a`](c0ddc0a931): fix: use prefix matching for allowed bash commands ([@​s0up4200](https://github.com/s0up4200)) ##### Other Changes - [`fff52ce`](fff52cea2f): chore(ci): disable reviewer ([@​s0up4200](https://github.com/s0up4200)) - [`7ef2a38`](7ef2a38b29): chore(ci): fix automated triage and deduplication workflows ([#​1057](https://github.com/autobrr/qui/issues/1057)) ([@​s0up4200](https://github.com/s0up4200)) - [`d84910b`](d84910b1eb): chore(docs): move Tailwind to documentation workspace only ([@​s0up4200](https://github.com/s0up4200)) - [`37ebe05`](37ebe05784): chore(docs): move netlify.toml to documentation directory ([@​s0up4200](https://github.com/s0up4200)) - [`e25de38`](e25de3830a): chore(docs): remove disclaimer ([@​s0up4200](https://github.com/s0up4200)) - [`c59b809`](c59b8098e6): chore(docs): update support sections ([#​1063](https://github.com/autobrr/qui/issues/1063)) ([@​s0up4200](https://github.com/s0up4200)) - [`b723523`](b7235233de): chore(tests): remove dead tests and optimize slow test cases ([#​842](https://github.com/autobrr/qui/issues/842)) ([@​s0up4200](https://github.com/s0up4200)) - [`662a1c6`](662a1c66f0): chore(workflows): update runners from 4vcpu to 2vcpu for all jobs ([#​859](https://github.com/autobrr/qui/issues/859)) ([@​s0up4200](https://github.com/s0up4200)) - [`46f2a1c`](46f2a1ccf5): chore: clean up repo root by moving Docker, scripts, and community docs ([#​1054](https://github.com/autobrr/qui/issues/1054)) ([@​s0up4200](https://github.com/s0up4200)) - [`2f27c0d`](2f27c0d7c5): chore: remove old issue templates ([@​s0up4200](https://github.com/s0up4200)) - [`04f361a`](04f361ad00): ci(triage): add labeling for feature-requests-ideas discussions ([@​s0up4200](https://github.com/s0up4200)) - [`f249c69`](f249c692da): ci(triage): remove needs-triage label after applying labels ([@​s0up4200](https://github.com/s0up4200)) - [`bdda1de`](bdda1debb6): ci(workflows): add self-dispatch workaround for discussion events ([@​s0up4200](https://github.com/s0up4200)) - [`a9732a2`](a9732a2d13): ci(workflows): increase max-turns to 25 for Claude workflows ([@​s0up4200](https://github.com/s0up4200)) - [`d7d830d`](d7d830d1f3): docs(README): add Buy Me a Coffee link ([#​863](https://github.com/autobrr/qui/issues/863)) ([@​s0up4200](https://github.com/s0up4200)) - [`266d92e`](266d92e451): docs(readme): Clarify ignore pattern ([#​878](https://github.com/autobrr/qui/issues/878)) ([@​quorn23](https://github.com/quorn23)) - [`9586084`](95860849e1): docs(readme): add banner linking to stable docs ([#​925](https://github.com/autobrr/qui/issues/925)) ([@​s0up4200](https://github.com/s0up4200)) - [`e36a621`](e36a62120d): docs(readme): use markdown link for Polar URL ([@​s0up4200](https://github.com/s0up4200)) - [`9394676`](9394676fdc): docs: add frontmatter titles and descriptions, remove marketing language ([@​s0up4200](https://github.com/s0up4200)) - [`ba9d45e`](ba9d45ee26): docs: add local filesystem access snippet and swizzle Details component ([@​s0up4200](https://github.com/s0up4200)) - [`4329edd`](4329edd6a0): docs: disclaimer about unreleased features ([#​943](https://github.com/autobrr/qui/issues/943)) ([@​s0up4200](https://github.com/s0up4200)) - [`735d065`](735d065890): docs: improve external programs, orphan scan, reverse proxy, tracker icons documentation ([@​s0up4200](https://github.com/s0up4200)) - [`78faef2`](78faef2c28): docs: remove premature tip and fix stat command ([@​s0up4200](https://github.com/s0up4200)) - [`eaad3bf`](eaad3bfb68): docs: update social card image in Docusaurus configuration ([@​s0up4200](https://github.com/s0up4200)) - [`02a68e5`](02a68e5f36): refactor(crossseed): hardcode ignore patterns for file matching ([#​915](https://github.com/autobrr/qui/issues/915)) ([@​s0up4200](https://github.com/s0up4200)) **Full Changelog**: <https://github.com/autobrr/qui/compare/v1.11.0...v1.12.0> #### Docker images - `docker pull ghcr.io/autobrr/qui:v1.12.0` - `docker pull ghcr.io/autobrr/qui:latest` #### What to do next? - Join our [Discord server](https://discord.autobrr.com/qui) Thank you for using qui! </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0Mi42OS4yIiwidXBkYXRlZEluVmVyIjoiNDIuNjkuMiIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=--> Reviewed-on: https://gitea.alexlebens.dev/alexlebens/infrastructure/pulls/3060 Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net> Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>
488 lines
13 KiB
YAML
488 lines
13 KiB
YAML
qbittorrent:
|
|
controllers:
|
|
main:
|
|
type: deployment
|
|
replicas: 1
|
|
strategy: Recreate
|
|
revisionHistoryLimit: 3
|
|
initContainers:
|
|
init-sysctl:
|
|
image:
|
|
repository: busybox
|
|
tag: 1.37.0
|
|
pullPolicy: IfNotPresent
|
|
securityContext:
|
|
privileged: True
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
command:
|
|
- /bin/sh
|
|
args:
|
|
- -ec
|
|
- |
|
|
sysctl -w net.ipv4.ip_forward=1;
|
|
sysctl -w net.ipv6.conf.all.disable_ipv6=1
|
|
containers:
|
|
qbittorrent:
|
|
image:
|
|
repository: ghcr.io/linuxserver/qbittorrent
|
|
tag: 5.1.4@sha256:c4e1276d9eec06f2520b4cdffcff49aea4215e5ac2d51bf0de81cce9f8aa85d4
|
|
pullPolicy: IfNotPresent
|
|
env:
|
|
- name: TZ
|
|
value: US/Central
|
|
- name: PUID
|
|
value: "1000"
|
|
- name: PGID
|
|
value: "1000"
|
|
- name: UMASK_SET
|
|
value: "002"
|
|
- name: WEBUI_PORT
|
|
value: 8080
|
|
resources:
|
|
requests:
|
|
cpu: 500m
|
|
memory: 1Gi
|
|
gluetun:
|
|
image:
|
|
repository: ghcr.io/qdm12/gluetun
|
|
tag: v3.41.0@sha256:6b54856716d0de56e5bb00a77029b0adea57284cf5a466f23aad5979257d3045
|
|
pullPolicy: IfNotPresent
|
|
lifecycle:
|
|
postStart:
|
|
exec:
|
|
command: ["/bin/sh", "-c", "(ip rule del table 51820; ip -6 rule del table 51820) || true"]
|
|
env:
|
|
- name: VPN_SERVICE_PROVIDER
|
|
value: protonvpn
|
|
- name: VPN_TYPE
|
|
value: wireguard
|
|
- name: WIREGUARD_PRIVATE_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: qbittorrent-wireguard-conf
|
|
key: private-key
|
|
- name: UPDATER_PROTONVPN_EMAIL
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: qbittorrent-wireguard-conf
|
|
key: proton-email
|
|
- name: UPDATER_PROTONVPN_PASSWORD
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: qbittorrent-wireguard-conf
|
|
key: proton-password
|
|
- name: VPN_PORT_FORWARDING
|
|
value: "on"
|
|
- name: VPN_PORT_FORWARDING_UP_COMMAND
|
|
value: '/bin/sh -c "/gluetun/update.sh {{ printf "{{PORTS}}" }}"'
|
|
- name: PORT_FORWARD_ONLY
|
|
value: "on"
|
|
- name: FIREWALL_OUTBOUND_SUBNETS
|
|
value: 192.168.1.0/24,10.244.0.0/16
|
|
- name: FIREWALL_INPUT_PORTS
|
|
value: 8080,9022
|
|
- name: DNS_UPSTREAM_RESOLVER_TYPE
|
|
value: dot
|
|
securityContext:
|
|
privileged: True
|
|
capabilities:
|
|
add:
|
|
- NET_ADMIN
|
|
- SYS_MODULE
|
|
probes:
|
|
liveness:
|
|
enabled: true
|
|
custom: true
|
|
spec:
|
|
exec:
|
|
command:
|
|
- /gluetun-entrypoint
|
|
- healthcheck
|
|
failureThreshold: 5
|
|
initialDelaySeconds: 30
|
|
periodSeconds: 30
|
|
successThreshold: 1
|
|
timeoutSeconds: 15
|
|
resources:
|
|
limits:
|
|
devic.es/tun: "1"
|
|
requests:
|
|
devic.es/tun: "1"
|
|
cpu: 10m
|
|
memory: 64Mi
|
|
exporter:
|
|
image:
|
|
repository: esanchezm/prometheus-qbittorrent-exporter
|
|
tag: v1.6.0
|
|
pullPolicy: IfNotPresent
|
|
env:
|
|
- name: QBITTORRENT_HOST
|
|
value: localhost
|
|
- name: QBITTORRENT_PORT
|
|
value: "8080"
|
|
- name: EXPORTER_PORT
|
|
value: "9022"
|
|
- name: EXPORTER_LOG_LEVEL
|
|
value: INFO
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 64Mi
|
|
qbit-manage:
|
|
type: deployment
|
|
annotations:
|
|
reloader.stakater.com/auto: "true"
|
|
replicas: 1
|
|
strategy: Recreate
|
|
revisionHistoryLimit: 3
|
|
initContainers:
|
|
init-copy-config:
|
|
image:
|
|
repository: busybox
|
|
tag: 1.37.0
|
|
pullPolicy: IfNotPresent
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
command:
|
|
- /bin/sh
|
|
- -ec
|
|
- |
|
|
cp /config/config.yml /app/config/config.yml
|
|
containers:
|
|
qbit-manage:
|
|
image:
|
|
repository: ghcr.io/stuffanthings/qbit_manage
|
|
tag: v4.6.5
|
|
pullPolicy: IfNotPresent
|
|
env:
|
|
- name: TZ
|
|
value: US/Central
|
|
- name: QBT_SCHEDULE
|
|
value: 0 * * * *
|
|
- name: QBT_STARTUP_DELAY
|
|
value: 360
|
|
- name: QBT_CONFIG_DIR
|
|
value: /app/config/
|
|
- name: QBT_LOGFILE
|
|
value: /app/var/activity.log
|
|
- name: QBT_LOG_LEVEL
|
|
value: INFO
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 64Mi
|
|
apprise-api:
|
|
image:
|
|
repository: caronc/apprise
|
|
tag: 1.3.0
|
|
pullPolicy: IfNotPresent
|
|
env:
|
|
- name: TZ
|
|
value: US/Central
|
|
- name: PGID
|
|
value: "1000"
|
|
- name: PUID
|
|
value: "1000"
|
|
- name: APPRISE_STORAGE_MODE
|
|
value: memory
|
|
- name: APPRISE_STATEFUL_MODE
|
|
value: disabled
|
|
- name: APPRISE_WORKER_COUNT
|
|
value: 1
|
|
- name: APPRISE_STATELESS_URLS
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: qbittorrent-qbit-manage-config
|
|
key: ntfy-url
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
qui:
|
|
type: deployment
|
|
replicas: 1
|
|
strategy: Recreate
|
|
revisionHistoryLimit: 3
|
|
containers:
|
|
qui:
|
|
image:
|
|
repository: ghcr.io/autobrr/qui
|
|
tag: v1.12.0
|
|
pullPolicy: IfNotPresent
|
|
env:
|
|
- name: QUI__METRICS_ENABLED
|
|
value: true
|
|
- name: QUI__METRICS_HOST
|
|
value: 0.0.0.0
|
|
- name: QUI__METRICS_PORT
|
|
value: 9074
|
|
- name: QUI__OIDC_ENABLED
|
|
value: true
|
|
- name: QUI__OIDC_ISSUER
|
|
value: https://auth.alexlebens.dev/application/o/qui/
|
|
- name: QUI__OIDC_CLIENT_ID
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: qui-oidc-secret
|
|
key: client
|
|
- name: QUI__OIDC_CLIENT_SECRET
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: qui-oidc-secret
|
|
key: secret
|
|
- name: QUI__OIDC_REDIRECT_URL
|
|
value: https://qui.alexlebens.net/api/auth/oidc/callback
|
|
- name: QUI__OIDC_DISABLE_BUILT_IN_LOGIN
|
|
value: false
|
|
resources:
|
|
requests:
|
|
cpu: 10m
|
|
memory: 128Mi
|
|
service:
|
|
main:
|
|
controller: main
|
|
forceRename: qbittorrent
|
|
ports:
|
|
http:
|
|
port: 8080
|
|
targetPort: 8080
|
|
protocol: HTTP
|
|
health:
|
|
port: 9999
|
|
targetPort: 9999
|
|
protocol: HTTP
|
|
metrics:
|
|
port: 9022
|
|
targetPort: 9022
|
|
protocol: HTTP
|
|
qbit-manage:
|
|
controller: qbit-manage
|
|
ports:
|
|
apprise:
|
|
port: 8000
|
|
targetPort: 8000
|
|
protocol: HTTP
|
|
qui:
|
|
controller: qui
|
|
ports:
|
|
http:
|
|
port: 80
|
|
targetPort: 7476
|
|
protocol: HTTP
|
|
metrics:
|
|
port: 9074
|
|
targetPort: 9074
|
|
protocol: HTTP
|
|
serviceMonitor:
|
|
main:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: qbittorrent
|
|
app.kubernetes.io/instance: qbittorrent
|
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
|
endpoints:
|
|
- port: metrics
|
|
interval: 30s
|
|
scrapeTimeout: 15s
|
|
path: /metrics
|
|
apprise:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: qbittorrent-apprise
|
|
app.kubernetes.io/instance: qbittorrent-apprise
|
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
|
endpoints:
|
|
- port: apprise
|
|
interval: 30s
|
|
scrapeTimeout: 15s
|
|
path: /metrics
|
|
qui:
|
|
selector:
|
|
matchLabels:
|
|
app.kubernetes.io/name: qbittorrent-qui
|
|
app.kubernetes.io/instance: qbittorrent-qui
|
|
serviceName: '{{ include "bjw-s.common.lib.chart.names.fullname" $ }}'
|
|
endpoints:
|
|
- port: metrics
|
|
interval: 30s
|
|
scrapeTimeout: 15s
|
|
path: /metrics
|
|
route:
|
|
main:
|
|
kind: HTTPRoute
|
|
parentRefs:
|
|
- group: gateway.networking.k8s.io
|
|
kind: Gateway
|
|
name: traefik-gateway
|
|
namespace: traefik
|
|
hostnames:
|
|
- qbittorrent.alexlebens.net
|
|
rules:
|
|
- backendRefs:
|
|
- group: ''
|
|
kind: Service
|
|
name: qbittorrent
|
|
port: 8080
|
|
weight: 100
|
|
matches:
|
|
- path:
|
|
type: PathPrefix
|
|
value: /
|
|
qui:
|
|
kind: HTTPRoute
|
|
parentRefs:
|
|
- group: gateway.networking.k8s.io
|
|
kind: Gateway
|
|
name: traefik-gateway
|
|
namespace: traefik
|
|
hostnames:
|
|
- qui.alexlebens.net
|
|
rules:
|
|
- backendRefs:
|
|
- group: ''
|
|
kind: Service
|
|
name: qbittorrent-qui
|
|
port: 80
|
|
weight: 100
|
|
matches:
|
|
- path:
|
|
type: PathPrefix
|
|
value: /
|
|
persistence:
|
|
update-script:
|
|
enabled: true
|
|
type: configMap
|
|
name: glutun-update-script
|
|
defaultMode: 0755
|
|
advancedMounts:
|
|
main:
|
|
gluetun:
|
|
- path: /gluetun/update.sh
|
|
subPath: update.sh
|
|
qbit-manage-config:
|
|
enabled: true
|
|
type: configMap
|
|
name: qbit-manage-config
|
|
advancedMounts:
|
|
qbit-manage:
|
|
init-copy-config:
|
|
- path: /config/config.yml
|
|
readOnly: true
|
|
mountPropagation: None
|
|
subPath: config.yml
|
|
qbit-manage:
|
|
- path: /config/config.yml
|
|
readOnly: true
|
|
mountPropagation: None
|
|
subPath: config.yml
|
|
config-data:
|
|
forceRename: qbittorrent-config-data
|
|
storageClass: ceph-filesystem
|
|
accessMode: ReadWriteMany
|
|
size: 1Gi
|
|
retain: true
|
|
advancedMounts:
|
|
main:
|
|
qbittorrent:
|
|
- path: /config/qBittorrent
|
|
readOnly: false
|
|
qbit-manage:
|
|
qbit-manage:
|
|
- path: /qbittorrent/qBittorrent
|
|
readOnly: false
|
|
qbit-manage-config-data:
|
|
forceRename: qbittorrent-qbit-manage-config-data
|
|
storageClass: ceph-block
|
|
accessMode: ReadWriteOnce
|
|
size: 1Gi
|
|
retain: true
|
|
advancedMounts:
|
|
qbit-manage:
|
|
init-copy-config:
|
|
- path: /app/config
|
|
readOnly: false
|
|
qbit-manage:
|
|
- path: /app/config
|
|
readOnly: false
|
|
qui-config-data:
|
|
forceRename: qbittorrent-qui-config-data
|
|
storageClass: ceph-block
|
|
accessMode: ReadWriteOnce
|
|
size: 1Gi
|
|
retain: true
|
|
advancedMounts:
|
|
qui:
|
|
qui:
|
|
- path: /config
|
|
readOnly: false
|
|
qbit-manage-config-var:
|
|
type: emptyDir
|
|
advancedMounts:
|
|
qbit-manage:
|
|
qbit-manage:
|
|
- path: /app/var
|
|
readOnly: false
|
|
storage:
|
|
type: persistentVolumeClaim
|
|
existingClaim: qbittorrent-nfs-storage
|
|
advancedMounts:
|
|
main:
|
|
qbittorrent:
|
|
- path: /mnt/store
|
|
readOnly: false
|
|
qbit-manage:
|
|
qbit-manage:
|
|
- path: /mnt/store
|
|
readOnly: false
|
|
volsync-target-config:
|
|
pvcTarget: qbittorrent-config-data
|
|
moverSecurityContext:
|
|
runAsUser: 1000
|
|
runAsGroup: 1000
|
|
fsGroup: 1000
|
|
fsGroupChangePolicy: OnRootMismatch
|
|
local:
|
|
enabled: true
|
|
schedule: 2 11 * * *
|
|
restic:
|
|
copyMethod: Snapshot
|
|
storageClassName: ceph-filesystem
|
|
volumeSnapshotClassName: ceph-filesystem-snapshot
|
|
remote:
|
|
restic:
|
|
copyMethod: Snapshot
|
|
storageClassName: ceph-filesystem
|
|
volumeSnapshotClassName: ceph-filesystem-snapshot
|
|
external:
|
|
enabled: true
|
|
schedule: 2 12 * * *
|
|
restic:
|
|
copyMethod: Snapshot
|
|
storageClassName: ceph-filesystem
|
|
volumeSnapshotClassName: ceph-filesystem-snapshot
|
|
volsync-target-qbit-manage-config:
|
|
pvcTarget: qbittorrent-qbit-manage-config-data
|
|
local:
|
|
enabled: true
|
|
schedule: 4 11 * * *
|
|
remote:
|
|
enabled: false
|
|
external:
|
|
enabled: true
|
|
schedule: 4 12 * * *
|
|
volsync-target-qui-config:
|
|
pvcTarget: qbittorrent-qui-config-data
|
|
local:
|
|
enabled: true
|
|
schedule: 6 11 * * *
|
|
remote:
|
|
enabled: false
|
|
external:
|
|
enabled: true
|
|
schedule: 6 12 * * *
|