From 9dc365c9c627662b742910bb693bb89c37b9e83d Mon Sep 17 00:00:00 2001 From: rcourtman Date: Tue, 16 Dec 2025 20:25:56 +0000 Subject: [PATCH] fix: OIDC env vars ignored when no oidc.enc file exists When OIDC_* environment variables were set but no oidc.enc config file existed, cfg.OIDC was nil and MergeFromEnv would silently return without applying the env vars (due to nil receiver check). Fix: Initialize cfg.OIDC to default values before merging env vars if it's nil. This ensures OIDC can be configured purely through environment variables without requiring a pre-existing config file. Related to #853 --- internal/config/config.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/internal/config/config.go b/internal/config/config.go index bf75083..8ccff30 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -1163,6 +1163,10 @@ func Load() (*Config, error) { oidcEnv["OIDC_CA_BUNDLE"] = val } if len(oidcEnv) > 0 { + // Ensure cfg.OIDC is initialized before merging env vars + if cfg.OIDC == nil { + cfg.OIDC = NewOIDCConfig() + } cfg.OIDC.MergeFromEnv(oidcEnv) } if authUser := os.Getenv("PULSE_AUTH_USER"); authUser != "" {