X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_lcm%2Flcm.py;h=d6c10e8fbcd54466abb80f615a144b58f0a97ea9;hb=4ff4b51325ee03faf991cd0fd435658c9365ecf0;hp=060aa07d59ca968e0b0aadbdaa61f145dc4d55c5;hpb=73bac504fefbcddeed4551d97adc0ea13eebd705;p=osm%2FLCM.git diff --git a/osm_lcm/lcm.py b/osm_lcm/lcm.py index 060aa07..d6c10e8 100644 --- a/osm_lcm/lcm.py +++ b/osm_lcm/lcm.py @@ -439,6 +439,14 @@ class Lcm: task = asyncio.ensure_future(self.ns.action(nsr_id, nslcmop_id)) self.lcm_tasks.register("ns", nsr_id, nslcmop_id, "ns_action", task) return + elif command == "update": + # self.logger.debug("Update NS {}".format(nsr_id)) + nslcmop = params + nslcmop_id = nslcmop["_id"] + nsr_id = nslcmop["nsInstanceId"] + task = asyncio.ensure_future(self.ns.update(nsr_id, nslcmop_id)) + self.lcm_tasks.register("ns", nsr_id, nslcmop_id, "ns_update", task) + return elif command == "scale": # self.logger.debug("Update NS {}".format(nsr_id)) nslcmop = params @@ -447,6 +455,32 @@ class Lcm: task = asyncio.ensure_future(self.ns.scale(nsr_id, nslcmop_id)) self.lcm_tasks.register("ns", nsr_id, nslcmop_id, "ns_scale", task) return + elif command == "heal": + # self.logger.debug("Healing NS {}".format(nsr_id)) + nslcmop = params + nslcmop_id = nslcmop["_id"] + nsr_id = nslcmop["nsInstanceId"] + task = asyncio.ensure_future(self.ns.heal(nsr_id, nslcmop_id)) + self.lcm_tasks.register( + "ns", nsr_id, nslcmop_id, "ns_heal", task + ) + return + elif command == "migrate": + nslcmop = params + nslcmop_id = nslcmop["_id"] + nsr_id = nslcmop["nsInstanceId"] + task = asyncio.ensure_future(self.ns.migrate(nsr_id, nslcmop_id)) + self.lcm_tasks.register("ns", nsr_id, nslcmop_id, "ns_migrate", task) + return + elif command == "verticalscale": + nslcmop = params + nslcmop_id = nslcmop["_id"] + nsr_id = nslcmop["nsInstanceId"] + task = asyncio.ensure_future(self.ns.vertical_scale(nsr_id, nslcmop_id)) + self.logger.debug("nsr_id,nslcmop_id,task {},{},{}".format(nsr_id, nslcmop_id, task)) + self.lcm_tasks.register("ns", nsr_id, nslcmop_id, "ns_verticalscale", task) + self.logger.debug("LCM task registered {},{},{} ".format(nsr_id, nslcmop_id, task)) + return elif command == "show": nsr_id = params try: @@ -470,12 +504,19 @@ class Lcm: elif command == "deleted": return # TODO cleaning of task just in case should be done elif command in ( + "vnf_terminated", + "policy_updated", "terminated", "instantiated", "scaled", + "healed", "actioned", + "updated", + "migrated", + "verticalscaled", ): # "scaled-cooldown-time" return + elif topic == "nsi": # netslice LCM processes (instantiate, terminate, etc) if command == "instantiate": # self.logger.debug("Instantiating Network Slice {}".format(nsilcmop["netsliceInstanceId"])) @@ -528,6 +569,7 @@ class Lcm: "terminated", "instantiated", "scaled", + "healed", "actioned", ): # "scaled-cooldown-time" return @@ -671,9 +713,7 @@ class Lcm: # check RO version self.loop.run_until_complete(self.check_RO_version()) - self.ns = ns.NsLcm( - self.msg, self.lcm_tasks, self.config, self.loop - ) + self.ns = ns.NsLcm(self.msg, self.lcm_tasks, self.config, self.loop) self.netslice = netslice.NetsliceLcm( self.msg, self.lcm_tasks, self.config, self.loop, self.ns )