Files
beelzebub/main.go
Mario Candela 5bfdff7097 Refactored initialization Beelzebub core with Builder Pattern (#14)
* Fixed deprecated function

* Coded builder pattern

* coded the first version builder

* coded rabbitmq into Builder.go

* Refactored builder, and configured director

* refactoring rabbitmq eventtracing

* Refactoring builder, managed close connections

* Fixed typos

Co-authored-by: mariocandela <mario.candela@nttdata.com>
2022-11-04 20:06:50 +01:00

44 lines
981 B
Go

package main
import (
"beelzebub/builder"
"beelzebub/parser"
"fmt"
log "github.com/sirupsen/logrus"
)
var quit = make(chan struct{})
func main() {
parser := parser.Init("./configurations/beelzebub.yaml", "./configurations/services/")
coreConfigurations, err := parser.ReadConfigurationsCore()
failOnError(err, fmt.Sprintf("Error during ReadConfigurationsCore: "))
beelzebubServicesConfiguration, err := parser.ReadConfigurationsServices()
failOnError(err, fmt.Sprintf("Error during ReadConfigurationsServices: "))
beelzebubBuilder := builder.NewBuilder()
director := builder.NewDirector(beelzebubBuilder)
beelzebubBuilder, err = director.BuildBeelzebub(coreConfigurations, beelzebubServicesConfiguration)
if err != nil {
log.Fatal(err)
}
if err := beelzebubBuilder.Run(); err != nil {
log.Fatal(err)
return
}
defer beelzebubBuilder.Close()
<-quit
}
func failOnError(err error, msg string) {
if err != nil {
log.Fatalf("%s: %s", msg, err)
}
}