package config import ( "github.com/joho/godotenv" "github.com/kos-v/dsnparser" ) func InitConfig() { envPath := GetEnvFilePath() _ = godotenv.Load(envPath) Config.DB.DSN = GetEnv("DB_DSN") Config.DB.Driver = "postgres" Config.Redis.Addr = GetEnv("REDIS_ADDR") Config.Redis.Pass = GetEnv("REDIS_PASS") Config.ListenAddr.GRPC = GetEnv("GRPC_LISTEN_ADDR") Config.ListenAddr.HTTP = GetEnv("HTTP_LISTEN_ADDR") Config.JWKS.Url = GetEnv("JWKS_URL") Config.DebugMode.Enable = GetEnv("DEBUG", "false") == "true" dsn := dsnparser.Parse(Config.DB.DSN) var dsn2 = "" dsn2 += "user=" + dsn.GetUser() dsn2 += " password=" + dsn.GetPassword() dsn2 += " dbname=" + dsn.GetPath() if dsn.HasParam("sslmode") { dsn2 += " sslmode=" + dsn.GetParam("sslmode") } Config.DB.DSN2 = dsn2 }