From 3910d29fa2ecaa2356a3bf2f86dd18e9aa8a8204 Mon Sep 17 00:00:00 2001 From: Captain ALM Date: Thu, 14 Jul 2022 22:00:10 +0100 Subject: [PATCH] Allow the config file to be specified in the .env file. --- cmd/gopkghsrv/main.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/cmd/gopkghsrv/main.go b/cmd/gopkghsrv/main.go index 4e11be1..1267f31 100644 --- a/cmd/gopkghsrv/main.go +++ b/cmd/gopkghsrv/main.go @@ -10,6 +10,7 @@ import ( "os" "os/signal" "path" + "path/filepath" "sync" "syscall" "time" @@ -48,8 +49,18 @@ func main() { check(os.MkdirAll(dataDir, 0777)) + //Config file processing: + configLocation := os.Getenv("CONFIG_FILE") + if configLocation == "" { + configLocation = path.Join(dataDir, "config.yml") + } else { + if !filepath.IsAbs(configLocation) { + configLocation = path.Join(dataDir, configLocation) + } + } + //Config loading: - configFile, err := os.Open(path.Join(dataDir, "config.yml")) + configFile, err := os.Open(configLocation) if err != nil { log.Fatalln("Failed to open config.yml") }