init: first steps
This commit is contained in:
48
settings/settings.go
Normal file
48
settings/settings.go
Normal file
@@ -0,0 +1,48 @@
|
||||
package settings
|
||||
|
||||
import (
|
||||
"os"
|
||||
"time"
|
||||
|
||||
appLog "git.ostiwe.com/ostiwe-com/status/modules/log"
|
||||
"github.com/joho/godotenv"
|
||||
"github.com/sirupsen/logrus"
|
||||
)
|
||||
|
||||
var (
|
||||
AppVersion string
|
||||
AppStartTime time.Time
|
||||
)
|
||||
|
||||
func init() {
|
||||
appLog.SetGlobalManager(appLog.NewManager())
|
||||
appLog.Global.Put(appLog.SYSTEM, logrus.New())
|
||||
|
||||
if AppVersion == "" {
|
||||
AppVersion = "dev"
|
||||
}
|
||||
|
||||
AppStartTime = time.Now()
|
||||
|
||||
env := os.Getenv("APP_ENV")
|
||||
if env == "" {
|
||||
env = "development"
|
||||
}
|
||||
|
||||
appLog.Global.Get(appLog.SYSTEM).Info("Load environment variables for ", env, " env")
|
||||
|
||||
err := godotenv.Load()
|
||||
if err != nil {
|
||||
appLog.Global.Get(appLog.SYSTEM).Errorf("Error loading .env file %v", err)
|
||||
appLog.Global.Get(appLog.SYSTEM).Exit(1)
|
||||
}
|
||||
|
||||
appLog.Global.Get(appLog.SYSTEM).Info("Loaded .env file")
|
||||
|
||||
appLog.Global.Get(appLog.SYSTEM).Info("Try to load .env.local file")
|
||||
if err = godotenv.Overload(".env.local"); err != nil {
|
||||
appLog.Global.Get(appLog.SYSTEM).Info("Failed to load .env.local file")
|
||||
} else {
|
||||
appLog.Global.Get(appLog.SYSTEM).Info("Loaded .env.local file")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user