feat: require hospital code and add company APIs
This commit is contained in:
@@ -12,18 +12,11 @@ import (
|
||||
type Config struct {
|
||||
AppHost string
|
||||
AppPort string
|
||||
DBHost string
|
||||
DBPort string
|
||||
DBDatabase string
|
||||
DBUsername string
|
||||
DBPassword string
|
||||
BearerToken string
|
||||
DBSettingsToken string
|
||||
DBMaxOpenConns int
|
||||
DBMaxIdleConns int
|
||||
DBConnMaxLifetime time.Duration
|
||||
DBDefaultRSCode string
|
||||
DBDefaultRSName string
|
||||
ManagementDBHost string
|
||||
ManagementDBPort string
|
||||
ManagementDBDatabase string
|
||||
@@ -40,35 +33,22 @@ func Load(path string) (Config, error) {
|
||||
cfg := Config{
|
||||
AppHost: env("APP_HOST", "0.0.0.0"),
|
||||
AppPort: env("APP_PORT", "8080"),
|
||||
DBHost: env("DB_HOST", "127.0.0.1"),
|
||||
DBPort: env("DB_PORT", "3306"),
|
||||
DBDatabase: env("DB_DATABASE", ""),
|
||||
DBUsername: env("DB_USERNAME", "root"),
|
||||
DBPassword: env("DB_PASSWORD", ""),
|
||||
BearerToken: env("CPONE_BEARER_TOKEN", ""),
|
||||
DBSettingsToken: env("CPONE_DATABASE_SETTINGS_TOKEN", env("CPONE_BEARER_TOKEN", "")),
|
||||
DBMaxOpenConns: envInt("DB_MAX_OPEN_CONNS", 25),
|
||||
DBMaxIdleConns: envInt("DB_MAX_IDLE_CONNS", 25),
|
||||
DBConnMaxLifetime: time.Duration(envInt("DB_CONN_MAX_LIFETIME_MINUTES", 5)) * time.Minute,
|
||||
DBDefaultRSCode: strings.ToUpper(strings.TrimSpace(env("DB_DEFAULT_RS_CODE", "AWALBROS_DEV"))),
|
||||
DBDefaultRSName: env("DB_DEFAULT_RS_NAME", "RS Dev Awalbros"),
|
||||
ManagementDBHost: env("CPONE_DB_HOST", env("DB_HOST", "127.0.0.1")),
|
||||
ManagementDBPort: env("CPONE_DB_PORT", env("DB_PORT", "3306")),
|
||||
ManagementDBHost: env("CPONE_DB_HOST", "127.0.0.1"),
|
||||
ManagementDBPort: env("CPONE_DB_PORT", "3306"),
|
||||
ManagementDBDatabase: env("CPONE_DB_DATABASE", "cpone_middleware"),
|
||||
ManagementDBUsername: env("CPONE_DB_USERNAME", env("DB_USERNAME", "root")),
|
||||
ManagementDBPassword: env("CPONE_DB_PASSWORD", env("DB_PASSWORD", "")),
|
||||
ManagementDBUsername: env("CPONE_DB_USERNAME", "root"),
|
||||
ManagementDBPassword: env("CPONE_DB_PASSWORD", ""),
|
||||
DBCredentialSecret: env("CPONE_DATABASE_CREDENTIAL_KEY", env("CPONE_DATABASE_SETTINGS_TOKEN", env("CPONE_BEARER_TOKEN", ""))),
|
||||
}
|
||||
|
||||
if cfg.DBDatabase == "" {
|
||||
return Config{}, fmt.Errorf("DB_DATABASE wajib diisi")
|
||||
}
|
||||
if cfg.BearerToken == "" {
|
||||
return Config{}, fmt.Errorf("CPONE_BEARER_TOKEN wajib diisi")
|
||||
}
|
||||
if cfg.DBDefaultRSCode == "" {
|
||||
return Config{}, fmt.Errorf("DB_DEFAULT_RS_CODE wajib diisi")
|
||||
}
|
||||
if cfg.ManagementDBDatabase == "" {
|
||||
return Config{}, fmt.Errorf("CPONE_DB_DATABASE wajib diisi")
|
||||
}
|
||||
@@ -107,7 +87,9 @@ func loadDotEnv(path string) error {
|
||||
value = strings.Trim(value, `"'`)
|
||||
|
||||
if key != "" {
|
||||
_ = os.Setenv(key, value)
|
||||
if _, alreadySet := os.LookupEnv(key); !alreadySet {
|
||||
_ = os.Setenv(key, value)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user