the beginning of the idiots
This commit is contained in:
41
qwen/go/config/config.go
Normal file
41
qwen/go/config/config.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"os"
|
||||
)
|
||||
|
||||
// Config holds the application configuration
|
||||
type Config struct {
|
||||
Port string
|
||||
DatabaseURL string
|
||||
RedisURL string
|
||||
JWTSecret string
|
||||
OIDCIssuer string
|
||||
OIDCClientID string
|
||||
OIDCClientSecret string
|
||||
Audience string
|
||||
Issuer string
|
||||
}
|
||||
|
||||
// LoadConfig loads the application configuration from environment variables
|
||||
func LoadConfig() *Config {
|
||||
return &Config{
|
||||
Port: getEnv("PORT", "17000"),
|
||||
DatabaseURL: getEnv("DATABASE_URL", "postgresql://mohportal:password@localhost:5432/mohportal"),
|
||||
RedisURL: getEnv("REDIS_URL", "localhost:6379"),
|
||||
JWTSecret: getEnv("JWT_SECRET", "supersecretkeyforjwt"),
|
||||
OIDCIssuer: getEnv("OIDC_ISSUER", "http://localhost:8080/realms/master"),
|
||||
OIDCClientID: getEnv("OIDC_CLIENT_ID", "mohportal-client"),
|
||||
OIDCClientSecret: getEnv("OIDC_CLIENT_SECRET", "mohportal-secret"),
|
||||
Audience: getEnv("AUDIENCE", "mohportal-api"),
|
||||
Issuer: getEnv("ISSUER", "mohportal"),
|
||||
}
|
||||
}
|
||||
|
||||
// getEnv gets an environment variable or returns a default value
|
||||
func getEnv(key, defaultValue string) string {
|
||||
if value := os.Getenv(key); value != "" {
|
||||
return value
|
||||
}
|
||||
return defaultValue
|
||||
}
|
||||
Reference in New Issue
Block a user