package config import "os" type Config struct { AppEnv string HTTPAddr string DatabaseURL string RedisURL string AuthUsername string AuthPassword string MattermostBaseURL string MattermostToken string PlaneBaseURL string PlaneToken string } func Load() Config { return Config{ AppEnv: getEnv("APP_ENV", "local"), HTTPAddr: getEnv("HTTP_ADDR", ":8080"), DatabaseURL: os.Getenv("DATABASE_URL"), RedisURL: os.Getenv("REDIS_URL"), AuthUsername: getEnv("AUTH_USERNAME", "nomadcode"), AuthPassword: os.Getenv("AUTH_PASSWORD"), MattermostBaseURL: os.Getenv("MATTERMOST_BASE_URL"), MattermostToken: os.Getenv("MATTERMOST_TOKEN"), PlaneBaseURL: os.Getenv("PLANE_BASE_URL"), PlaneToken: os.Getenv("PLANE_TOKEN"), } } func getEnv(key, fallback string) string { value := os.Getenv(key) if value == "" { return fallback } return value }