package main

import (
	_ "oc-workflow/routers"

	oclib "cloud.o-forge.io/core/oc-lib"
	"cloud.o-forge.io/core/oc-lib/tools"
	beego "github.com/beego/beego/v2/server/web"
)

const appname = "oc-workflow"

func main() {
	// Init the oc-lib
	oclib.Init(appname)

	// Load the right config file
	o := oclib.GetConfLoader()

	// 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("NATS_URL", "nats://localhost:4222"),
		o.GetStringDefault("LOKI_URL", ""),
		o.GetStringDefault("LOG_LEVEL", "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"
	api := &tools.API{}
	api.Discovered(beego.BeeApp.Handlers.GetAllControllerInfo())

	beego.Run()

}
