Skip to content

Commit 8b510ed

Browse files
committed
fix: env parsing
1 parent 3ac0b44 commit 8b510ed

File tree

1 file changed

+27
-26
lines changed

1 file changed

+27
-26
lines changed

server/env.go

Lines changed: 27 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -11,43 +11,33 @@ import (
1111
)
1212

1313
// build variables
14-
var Version string
15-
16-
// ParseArgs -> to parse the cli flag and get db url. This is useful with heroku button
17-
func ParseArgs() {
18-
dbURL := flag.String("database_url", "", "Database connection string")
19-
dbType := flag.String("database_type", "", "Database type, possible values are postgres,mysql,sqlite")
20-
authorizerURL := flag.String("authorizer_url", "", "URL for authorizer instance, eg: https://xyz.herokuapp.com")
21-
22-
flag.Parse()
23-
if *dbURL != "" {
24-
constants.DATABASE_URL = *dbURL
25-
}
26-
27-
if *dbType != "" {
28-
constants.DATABASE_TYPE = *dbType
29-
}
30-
31-
if *authorizerURL != "" {
32-
constants.AUTHORIZER_URL = *authorizerURL
33-
}
34-
}
14+
var (
15+
Version string
16+
ARG_DB_URL *string
17+
ARG_DB_TYPE *string
18+
ARG_AUTHORIZER_URL *string
19+
ARG_ENV_FILE *string
20+
)
3521

3622
// InitEnv -> to initialize env and through error if required env are not present
3723
func InitEnv() {
3824
envPath := `.env`
39-
envFile := flag.String("env_file", "", "Env file path")
25+
ARG_DB_URL = flag.String("database_url", "", "Database connection string")
26+
ARG_DB_TYPE = flag.String("database_type", "", "Database type, possible values are postgres,mysql,sqlite")
27+
ARG_AUTHORIZER_URL = flag.String("authorizer_url", "", "URL for authorizer instance, eg: https://xyz.herokuapp.com")
28+
ARG_ENV_FILE = flag.String("env_file", "", "Env file path")
29+
4030
flag.Parse()
41-
if *envFile != "" {
42-
envPath = *envFile
31+
if *ARG_ENV_FILE != "" {
32+
envPath = *ARG_ENV_FILE
4333
}
34+
4435
err := godotenv.Load(envPath)
4536
if err != nil {
4637
log.Println("Error loading .env file")
4738
}
4839

4940
constants.VERSION = Version
50-
5141
constants.ADMIN_SECRET = os.Getenv("ADMIN_SECRET")
5242
constants.ENV = os.Getenv("ENV")
5343
constants.DATABASE_TYPE = os.Getenv("DATABASE_TYPE")
@@ -104,7 +94,18 @@ func InitEnv() {
10494
}
10595
constants.ALLOWED_ORIGINS = allowedOrigins
10696

107-
ParseArgs()
97+
if *ARG_AUTHORIZER_URL != "" {
98+
constants.AUTHORIZER_URL = *ARG_AUTHORIZER_URL
99+
}
100+
101+
if *ARG_DB_URL != "" {
102+
constants.DATABASE_URL = *ARG_DB_URL
103+
}
104+
105+
if *ARG_DB_TYPE != "" {
106+
constants.DATABASE_TYPE = *ARG_DB_TYPE
107+
}
108+
108109
if constants.DATABASE_URL == "" {
109110
panic("Database url is required")
110111
}

0 commit comments

Comments
 (0)