/
config.go
40 lines (33 loc) · 837 Bytes
/
config.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package config
import (
"os"
"github.com/joho/godotenv"
)
var (
DBDriver = GetEnv("DB_DRIVER", "postgres")
DBName = GetEnv("DB_NAME", "email_verification")
DBHost = GetEnv("DB_HOST", "localhost")
DBPort = GetEnv("DB_PORT", "5432")
DBUser = GetEnv("DB_USER", "postgres")
DBPass = GetEnv("DB_PASS", "")
SSLMode = GetEnv("SSL_MODE", "disable")
REDISHost = GetEnv("REDIS_HOST")
REDISPass = GetEnv("REDIS_PASS")
REDISPort = GetEnv("REDIS_PORT")
MONGOHost = GetEnv("MONGO_HOST")
MONGOPort = GetEnv("MONGO_PORT")
MONGODB = GetEnv("MONGO_DB")
)
func GetEnv(key string, value ...string) string {
if err := godotenv.Load(".env"); err != nil {
panic("Error Load file .env not found")
}
if os.Getenv(key) != "" {
return os.Getenv(key)
} else {
if len(value) > 0 {
return value[0]
}
return ""
}
}