package main import ( _ "oc-workflow/routers" oclib "cloud.o-forge.io/core/oc-lib" beego "github.com/beego/beego/v2/server/web" "github.com/goraz/onion" ) const defaultConfigFile = "/etc/oc/workflow.json" const localConfigFile = "./docker_workflow.json" func main() { configFile := "" var o *onion.Onion l3 := onion.NewEnvLayerPrefix("_", "OCWORKFLOW_") l1, err := onion.NewFileLayer(localConfigFile, nil) if err == nil { configFile = localConfigFile } l2, err := onion.NewFileLayer(defaultConfigFile, nil) if err == nil { configFile = defaultConfigFile } if configFile == "" { o = onion.New(l3) } else if l1 == nil && l2 == nil { o = onion.New(l1, l2, l3) } else if l1 == nil { o = onion.New(l2, l3) } else if l2 == nil { o = onion.New(l1, l3) } oclib.SetConfig( o.GetStringDefault("MONGO_URL", "mongodb://127.0.0.1:27017"), o.GetStringDefault("MONGO_DATABASE", "DC_myDC"), ) oclib.Init("oc-workflow") // Normal beego init //if beego.BConfig.RunMode == "dev" { beego.BConfig.WebConfig.DirectoryIndex = true beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger" //} beego.Run() }