You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

29 lines
586 B

package cfg
const (
BASE_URL_ENV = "KANPEKI_BASE_URL"
DATABASE_URL_ENV = "KANPEKI_DATABASE_URL"
LISTEN_ADDR_ENV = "KANPEKI_LISTEN_ADDR"
)
type Config struct {
ListenAddr string
BaseUrl string
DatabaseUrl string
LogLevel int
}
func Load(getenv func(string) string) (*Config, error) {
cfg := new(Config)
cfg.BaseUrl = getenv(BASE_URL_ENV)
if cfg.BaseUrl == "" {
cfg.BaseUrl = "http://localhost"
}
cfg.DatabaseUrl = getenv(DATABASE_URL_ENV)
cfg.ListenAddr = getenv(LISTEN_ADDR_ENV)
if cfg.ListenAddr == "" {
cfg.ListenAddr = ":3000"
}
return cfg, nil
}