oc-aggregator/main.go

50 lines
1.7 KiB
Go
Raw Normal View History

package main
import (
"oc-aggregator/models"
_ "oc-aggregator/routers"
2024-09-27 09:31:45 +02:00
oclib "cloud.o-forge.io/core/oc-lib"
beego "github.com/beego/beego/v2/server/web"
2025-01-15 16:25:02 +01:00
"github.com/beego/beego/v2/server/web/filter/cors"
)
2024-09-27 09:31:45 +02:00
const appname = "oc-aggregator"
func main() {
2024-09-27 09:31:45 +02:00
// Init the oc-lib
oclib.Init(appname)
// Load the right config file
o := oclib.GetConfLoader()
models.GetConfig().RedisUrl = o.GetStringDefault("redisurl", "localhost:6379")
models.GetConfig().RedisPassword = o.GetStringDefault("redispassword", "")
models.GetConfig().ZincUrl = o.GetStringDefault("zincurl", "http://localhost:4080")
models.GetConfig().ZincLogin = o.GetStringDefault("zinclogin", "admin")
models.GetConfig().ZincPassword = o.GetStringDefault("zincpassword", "admin")
models.GetConfig().DiscoveryUrl = o.GetStringDefault("discoveryurl", "http://localhost:8080/oc/")
2024-09-27 09:31:45 +02:00
// feed the library with the loaded config
oclib.SetConfig(
o.GetStringDefault("MONGO_URL", "mongodb://127.0.0.1:27017"),
o.GetStringDefault("MONGO_DATABASE", "DC_myDC"),
"",
o.GetStringDefault("lokiurl", ""),
o.GetStringDefault("loglevel", "info"),
)
// Beego init
beego.BConfig.AppName = appname
beego.BConfig.Listen.HTTPPort = o.GetIntDefault("port", 8080)
beego.BConfig.WebConfig.DirectoryIndex = true
beego.BConfig.WebConfig.StaticDir["/swagger"] = "swagger"
2025-01-15 16:25:02 +01:00
beego.InsertFilter("*", beego.BeforeRouter, cors.Allow(&cors.Options{
AllowAllOrigins: true,
AllowMethods: []string{"GET", "POST", "PUT", "DELETE", "OPTIONS"},
AllowHeaders: []string{"Origin", "Authorization", "Content-Type"},
ExposeHeaders: []string{"Content-Length", "Content-Type"},
AllowCredentials: true,
}))
beego.Run()
2024-09-27 09:31:45 +02:00
}