github.com/seeker-insurance/kit@v0.0.13/env/load.go (about) 1 package env 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/joho/godotenv" 8 "github.com/seeker-insurance/kit/log" 9 ) 10 11 // Load loading env vars from env file 12 func Load(env string, srcPath string, inject ...string) error { 13 gopath := os.Getenv("GOPATH") 14 path := fmt.Sprintf("%s/src/%s/.env", gopath, srcPath) 15 if env != "" { 16 path = fmt.Sprintf("%s.%s", path, env) 17 } 18 if _, err := os.Stat(path); os.IsNotExist(err) { 19 log.Print("No .env file found, falling back to actual env vars") 20 return nil 21 } 22 23 if err := godotenv.Load(path); err != nil { 24 return fmt.Errorf("Error loading env file") 25 } 26 27 return nil 28 }