Loading go-apps/meep-virt-engine/go.mod +5 −3 Original line number Diff line number Diff line Loading @@ -5,10 +5,10 @@ go 1.12 require ( github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model v0.0.0 github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger v0.0.0 github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-pinger v0.0.0 github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-redis v0.0.0 github.com/gorilla/handlers v1.4.0 github.com/gorilla/mux v1.7.1 github.com/sirupsen/logrus v1.4.1 github.com/gorilla/handlers v1.4.0 // indirect github.com/gorilla/mux v1.7.1 // indirect ) replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model => ../../go-packages/meep-ctrl-engine-model Loading @@ -16,3 +16,5 @@ replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger => ../../go-packages/meep-logger replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-redis => ../../go-packages/meep-redis replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-pinger => ../../go-packages/meep-pinger go-apps/meep-virt-engine/main_test.go +1 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,7 @@ import ( "strings" "testing" log "github.com/InterDigitalInc/AdvantEDGE/go-apps/meep-virt-engine/log" log "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger" ) // Build: Loading go-apps/meep-virt-engine/meep-virt-engine 0 → 100755 +10.8 MiB File added.No diff preview for this file type. View file go-apps/meep-virt-engine/server/virt-engine.go +25 −6 Original line number Diff line number Diff line Loading @@ -16,19 +16,26 @@ import ( "github.com/InterDigitalInc/AdvantEDGE/go-apps/meep-virt-engine/helm" model "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model" log "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger" pinger "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-pinger" redis "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-redis" ) const moduleCtrlEngine string = "ctrl-engine" const typeActive string = "active" const channelCtrlActive string = moduleCtrlEngine + "-" + typeActive var activeScenarioName string = "" var ping *pinger.Pingee var rc *redis.Connector const activeScenarioEventKey string = redis.ModuleCtrlEngine + ":" + redis.TypeActive const activeScenarioEventKey string = moduleCtrlEngine + ":" + typeActive const redisAddr string = "localhost:30379" // VirtEngineInit - Initialize virtualization engine func VirtEngineInit() (err error) { log.Debug("Initializing MEEP Virtualization Engine") // Connect to Redis DB err = redis.DBConnect(redisAddr) rc, err = redis.NewConnector(redisAddr) if err != nil { log.Error("Failed connection to Redis DB. Error: ", err) return err Loading @@ -37,20 +44,32 @@ func VirtEngineInit() (err error) { // Subscribe to Pub-Sub events for MEEP Controller // NOTE: Current implementation is RedisDB Pub-Sub err = redis.Subscribe(redis.ChannelCtrlActive) err = rc.Subscribe(channelCtrlActive) if err != nil { log.Error("Failed to subscribe to Pub/Sub events. Error: ", err) return err } log.Info("Subscribed to Redis Events") // Setup for liveness monitoring ping, err = pinger.NewPingee(redisAddr, "meep-virt-engine") if err != nil { log.Error("Failed to initialize pigner. Error: ", err) return err } err = ping.Start() if err != nil { log.Error("Failed pinger listen. Error: ", err) return err } return nil } // ListenEvents - Redis DB event listener func ListenEvents() { // Listen for subscribed events. Provide event handler method. _ = redis.Listen(eventHandler) _ = rc.Listen(eventHandler) } Loading @@ -59,7 +78,7 @@ func eventHandler(channel string, payload string) { switch channel { // MEEP Ctrl Engine active scenario update event case redis.ChannelCtrlActive: case channelCtrlActive: log.Debug("Event received on channel: ", channel) processActiveScenarioUpdate() Loading @@ -70,7 +89,7 @@ func eventHandler(channel string, payload string) { func processActiveScenarioUpdate() { // Retrieve active scenario from DB jsonScenario, err := redis.DBJsonGetEntry(activeScenarioEventKey, ".") jsonScenario, err := rc.JSONGetEntry(activeScenarioEventKey, ".") log.Debug("Scenario Event:", jsonScenario) if err != nil { terminateScenario(activeScenarioName) Loading Loading
go-apps/meep-virt-engine/go.mod +5 −3 Original line number Diff line number Diff line Loading @@ -5,10 +5,10 @@ go 1.12 require ( github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model v0.0.0 github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger v0.0.0 github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-pinger v0.0.0 github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-redis v0.0.0 github.com/gorilla/handlers v1.4.0 github.com/gorilla/mux v1.7.1 github.com/sirupsen/logrus v1.4.1 github.com/gorilla/handlers v1.4.0 // indirect github.com/gorilla/mux v1.7.1 // indirect ) replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model => ../../go-packages/meep-ctrl-engine-model Loading @@ -16,3 +16,5 @@ replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger => ../../go-packages/meep-logger replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-redis => ../../go-packages/meep-redis replace github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-pinger => ../../go-packages/meep-pinger
go-apps/meep-virt-engine/main_test.go +1 −1 Original line number Diff line number Diff line Loading @@ -13,7 +13,7 @@ import ( "strings" "testing" log "github.com/InterDigitalInc/AdvantEDGE/go-apps/meep-virt-engine/log" log "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger" ) // Build: Loading
go-apps/meep-virt-engine/meep-virt-engine 0 → 100755 +10.8 MiB File added.No diff preview for this file type. View file
go-apps/meep-virt-engine/server/virt-engine.go +25 −6 Original line number Diff line number Diff line Loading @@ -16,19 +16,26 @@ import ( "github.com/InterDigitalInc/AdvantEDGE/go-apps/meep-virt-engine/helm" model "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-ctrl-engine-model" log "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-logger" pinger "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-pinger" redis "github.com/InterDigitalInc/AdvantEDGE/go-packages/meep-redis" ) const moduleCtrlEngine string = "ctrl-engine" const typeActive string = "active" const channelCtrlActive string = moduleCtrlEngine + "-" + typeActive var activeScenarioName string = "" var ping *pinger.Pingee var rc *redis.Connector const activeScenarioEventKey string = redis.ModuleCtrlEngine + ":" + redis.TypeActive const activeScenarioEventKey string = moduleCtrlEngine + ":" + typeActive const redisAddr string = "localhost:30379" // VirtEngineInit - Initialize virtualization engine func VirtEngineInit() (err error) { log.Debug("Initializing MEEP Virtualization Engine") // Connect to Redis DB err = redis.DBConnect(redisAddr) rc, err = redis.NewConnector(redisAddr) if err != nil { log.Error("Failed connection to Redis DB. Error: ", err) return err Loading @@ -37,20 +44,32 @@ func VirtEngineInit() (err error) { // Subscribe to Pub-Sub events for MEEP Controller // NOTE: Current implementation is RedisDB Pub-Sub err = redis.Subscribe(redis.ChannelCtrlActive) err = rc.Subscribe(channelCtrlActive) if err != nil { log.Error("Failed to subscribe to Pub/Sub events. Error: ", err) return err } log.Info("Subscribed to Redis Events") // Setup for liveness monitoring ping, err = pinger.NewPingee(redisAddr, "meep-virt-engine") if err != nil { log.Error("Failed to initialize pigner. Error: ", err) return err } err = ping.Start() if err != nil { log.Error("Failed pinger listen. Error: ", err) return err } return nil } // ListenEvents - Redis DB event listener func ListenEvents() { // Listen for subscribed events. Provide event handler method. _ = redis.Listen(eventHandler) _ = rc.Listen(eventHandler) } Loading @@ -59,7 +78,7 @@ func eventHandler(channel string, payload string) { switch channel { // MEEP Ctrl Engine active scenario update event case redis.ChannelCtrlActive: case channelCtrlActive: log.Debug("Event received on channel: ", channel) processActiveScenarioUpdate() Loading @@ -70,7 +89,7 @@ func eventHandler(channel string, payload string) { func processActiveScenarioUpdate() { // Retrieve active scenario from DB jsonScenario, err := redis.DBJsonGetEntry(activeScenarioEventKey, ".") jsonScenario, err := rc.JSONGetEntry(activeScenarioEventKey, ".") log.Debug("Scenario Event:", jsonScenario) if err != nil { terminateScenario(activeScenarioName) Loading