Manage a PodDisruptionBudget based on a actively streaming Jellyfin server.
Find a file
Renovate Bot 738ed4146c
All checks were successful
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/push/build Pipeline was successful
ci/woodpecker/cron/build Pipeline was successful
chore(deps): update docker.io/library/rust:1.91.1-alpine docker digest to fbcca3e
2025-11-11 01:15:44 +00:00
.woodpecker chore(deps): update woodpeckerci/plugin-kaniko docker tag to v2.1.1 2025-11-08 20:32:22 +00:00
src Initial commit 2025-06-19 16:23:03 -04:00
.gitignore Initial commit 2025-06-19 16:23:03 -04:00
Cargo.lock chore(deps): update rust crate openssl to v0.10.75 2025-11-07 18:38:27 +00:00
Cargo.toml fix(deps): update rust crate schemars to 1.1.x 2025-11-05 20:01:29 +00:00
Containerfile chore(deps): update docker.io/library/rust:1.91.1-alpine docker digest to fbcca3e 2025-11-11 01:15:44 +00:00
LICENSE.md Initial commit 2025-06-19 16:23:03 -04:00
Makefile Use fuwafuwalabs project for container 2025-06-27 11:18:19 -04:00
README.md Initial commit 2025-06-19 16:23:03 -04:00
renovate.json chore(config): migrate renovate config 2025-09-18 17:01:30 -04:00

jellyfin-pdb-mgr-rs

jellyfin-db-pgr watches a Jellyfin server for actively playing items and updates a Kubernetes PodDisruptionBudget to prevent server shutdowns.

How?

Deploy jellyfin-pdb-mgr to your cluster (only one replica is needed) and set the following environment variables:

  • POD_NAMESPACE - the namespace the pod runs in. You should use valueFrom.fieldRef.fieldPath: metadata.namespace for this.
  • RUST_LOG (optional) - the log level (i.e. info, debug,, warn, error)
  • UPDATE_INTERVAL - how often in seconds to check for players and to patch the PDB. The default value is 10.
  • PDB_NAME - the name of the PBB object in the same namespace as the pod to update. You need to create this PDB yourself.
  • JELLYFIN_URL - the URL to your Jellyfin instance.
  • JELLYFIN_API_KEY - the Jellyfin API key to use.
  • MIN_STREAMS - the minimum number of now playing items to consider when updating the PDB. Default is 1.

License

See LICENSE.md.