From bb78c83db67f392f6a1020bfa472aeca541bfcb8 Mon Sep 17 00:00:00 2001 From: Florens Pauwels Date: Thu, 31 Dec 2020 17:05:45 +0100 Subject: [PATCH] Don't abort loading .env files in when first one fails --- main.go | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/main.go b/main.go index 5a4794c..36fa2e1 100644 --- a/main.go +++ b/main.go @@ -30,10 +30,7 @@ func main() { log.Printf("Looking for .env file in %s", exPath) // Load config and initialize - err = godotenv.Load(".env", filepath.Join(exPath, ".env")) - if err != nil && !os.IsNotExist(err) { - log.Fatalf("error loading .env file(s): %s", reflect.TypeOf(err)) - } + tryLoadDotEnv(filepath.Join(exPath, ".env"), ".env") keepAmount, err = strconv.Atoi(os.Getenv("KEEP_AMOUNT")) if err != nil { @@ -59,6 +56,16 @@ func main() { } } +//tryLoadDotEnv load dot env files but don't abort when one doesn't exist +func tryLoadDotEnv(filenames ...string) { + for _, filename := range filenames { + err := godotenv.Load(filename) + if err != nil && !os.IsNotExist(err) { + log.Fatalf("error loading .env file: %s", reflect.TypeOf(err)) + } + } +} + func createBackup(server *hcloud.Server) { log.Printf("creating backup for %s\n", server.Name)