Files
kandev/apps/backend/internal/launcher/env.go
T
2026-06-20 19:40:15 +01:00

33 lines
854 B
Go

package launcher
import (
"fmt"
"os"
)
func backendEnv(ports portConfig, logLevel string, debug bool) []string {
env := os.Environ()
env = upsertEnv(env, "KANDEV_SERVER_PORT", fmt.Sprint(ports.BackendPort))
env = upsertEnv(env, "KANDEV_AGENT_STANDALONE_PORT", fmt.Sprint(ports.AgentctlPort))
env = upsertEnv(env, "KANDEV_DATABASE_PATH", resolveDatabasePath())
if logLevel != "" {
env = upsertEnv(env, "KANDEV_LOG_LEVEL", logLevel)
}
if debug {
env = upsertEnv(env, "KANDEV_DEBUG_AGENT_MESSAGES", "true")
env = upsertEnv(env, "KANDEV_DEBUG_PPROF_ENABLED", "true")
}
return env
}
func upsertEnv(env []string, key, value string) []string {
prefix := key + "="
for i, item := range env {
if len(item) >= len(prefix) && item[:len(prefix)] == prefix {
env[i] = prefix + value
return env
}
}
return append(env, prefix+value)
}