Document the env-var contract for the HA features #11

Open
opened 2026-09-13 13:33:17 +10:00 by unkin-agent · 0 comments
Member

Problem

The manifests in this repo set bare Jellyfin__TranscodeStore__RedisConnectionString, which never reaches the application. CoreAppHost reads a configuration whose only environment source is .AddEnvironmentVariables("JELLYFIN_") (Jellyfin.Server/Program.cs ~line 394 in the source fork), so the double-underscore form is ignored.

An end-to-end test found the Redis transcode store had been silently replaced by the Null store, with zero connections to valkey. abortConnect=false plus a fail-open catch means a misconfiguration produces no error and no log line — the deployment looks healthy while the HA feature is off.

A code fix is in flight in the source fork (unkin/jellyfin-ha-src PR #9). This issue is for this repo's documentation.

Proposal

Document the env-var contract for the HA features in the README: the exact accepted variable names (prefix and separator), which feature each one drives, and a note that a misnamed variable falls back to a no-op store instead of failing. Include a verification step operators can run from outside the pod (valkey connection count, or expected keys present).

Acceptance

  • README lists the required variable names for each HA feature, matching what the code actually reads.
  • README states the silent fail-open behaviour and gives the verification step.
  • Manifests in this repo use the documented names.
## Problem The manifests in this repo set bare `Jellyfin__TranscodeStore__RedisConnectionString`, which never reaches the application. `CoreAppHost` reads a configuration whose only environment source is `.AddEnvironmentVariables("JELLYFIN_")` (`Jellyfin.Server/Program.cs` ~line 394 in the source fork), so the double-underscore form is ignored. An end-to-end test found the Redis transcode store had been silently replaced by the Null store, with zero connections to valkey. `abortConnect=false` plus a fail-open catch means a misconfiguration produces no error and no log line — the deployment looks healthy while the HA feature is off. A code fix is in flight in the source fork (unkin/jellyfin-ha-src PR #9). This issue is for this repo's documentation. ## Proposal Document the env-var contract for the HA features in the README: the exact accepted variable names (prefix and separator), which feature each one drives, and a note that a misnamed variable falls back to a no-op store instead of failing. Include a verification step operators can run from outside the pod (valkey connection count, or expected keys present). ## Acceptance - README lists the required variable names for each HA feature, matching what the code actually reads. - README states the silent fail-open behaviour and gives the verification step. - Manifests in this repo use the documented names.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: unkin/jellyfin-ha#11