From a6e5a24a771541cc723da23cb5fa66dc8d916ca9 Mon Sep 17 00:00:00 2001 From: rcourtman Date: Wed, 1 Oct 2025 14:45:52 +0000 Subject: [PATCH] fix: load mock.env files during config initialization Ensures PULSE_MOCK_MODE environment variable is set before the mock package's init() function runs. This allows mock mode to work correctly when enabled via mock.env or mock.env.local files without requiring an explicit environment variable to be set at startup. --- internal/config/config.go | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/internal/config/config.go b/internal/config/config.go index 362181301..d8d0b60f1 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -202,6 +202,24 @@ func Load() (*Config, error) { log.Info().Msg("Loaded configuration from .env in current directory") } + // Load mock.env and mock.env.local for mock mode configuration + mockEnv := "mock.env" + mockEnvLocal := "mock.env.local" + if _, err := os.Stat(mockEnv); err == nil { + if err := godotenv.Load(mockEnv); err != nil { + log.Warn().Err(err).Str("file", mockEnv).Msg("Failed to load mock.env file") + } else { + log.Info().Str("file", mockEnv).Msg("Loaded mock mode configuration") + } + } + if _, err := os.Stat(mockEnvLocal); err == nil { + if err := godotenv.Load(mockEnvLocal); err != nil { + log.Warn().Err(err).Str("file", mockEnvLocal).Msg("Failed to load mock.env.local file") + } else { + log.Info().Str("file", mockEnvLocal).Msg("Loaded local mock mode overrides") + } + } + // Initialize config with defaults cfg := &Config{ BackendHost: "0.0.0.0",