X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=rwcm%2Fplugins%2Frwconman%2Frift%2Ftasklets%2Frwconmantasklet%2FRiftCM_rpc.py;h=3b28fba58640e003fdcedb7e6614475c540d49e9;hb=da28246cbc7b0118355b94df11e8d0dca1590932;hp=91bc1ab599eca3ef9e9233bca888b806a40a9733;hpb=49868d2c71eb364cee9707515be6841a568dad40;p=osm%2FSO.git diff --git a/rwcm/plugins/rwconman/rift/tasklets/rwconmantasklet/RiftCM_rpc.py b/rwcm/plugins/rwconman/rift/tasklets/rwconmantasklet/RiftCM_rpc.py index 91bc1ab5..3b28fba5 100644 --- a/rwcm/plugins/rwconman/rift/tasklets/rwconmantasklet/RiftCM_rpc.py +++ b/rwcm/plugins/rwconman/rift/tasklets/rwconmantasklet/RiftCM_rpc.py @@ -55,7 +55,7 @@ class RiftCMRPCHandler(object): self.job_manager = rift.mano.config_agent.ConfigAgentJobManager(dts, log, loop, nsm) self._rift_install_dir = os.environ['RIFT_INSTALL'] - self._rift_artif_dir = os.environ['RIFT_ARTIFACTS'] + self._rift_var_root_dir = os.environ['RIFT_VAR_ROOT'] @property def reghs(self): @@ -164,11 +164,11 @@ class RiftCMRPCHandler(object): try: vnfr_data_dict['vdur'] = [] - vdu_data = [(vdu['name'], vdu['management_ip'], vdu['vm_management_ip'], vdu['id']) + vdu_data = [(vdu['name'], vdu['management_ip'], vdu['vm_management_ip'], vdu['id'], vdu['vdu_id_ref']) for vdu in vnfr.vnfr['vdur']] for data in vdu_data: - data = dict(zip(['name', 'management_ip', 'vm_management_ip', 'id'] , data)) + data = dict(zip(['name', 'management_ip', 'vm_management_ip', 'id', 'vdu_id_ref'] , data)) vnfr_data_dict['vdur'].append(data) vnfr_data_map[vnfr.member_vnf_index] = vnfr_data_dict @@ -240,22 +240,20 @@ class RiftCMRPCHandler(object): # The script has full path, use as is script = rpc_ip.user_defined_script else: - script = os.path.join(self._rift_artif_dir, 'launchpad/libs', agent_nsr.id, 'scripts', + script = os.path.join(self._rift_var_root_dir, 'launchpad/packages/nsd', + agent_nsr.id, 'scripts', rpc_ip.user_defined_script) self._log.debug("CA-RPC: Checking for script in %s", script) if not os.path.exists(script): script = os.path.join(self._rift_install_dir, 'usr/bin', rpc_ip.user_defined_script) - cmd = "{} {}".format(rpc_ip.user_defined_script, tmp_file.name) + cmd = "{} {}".format(script, tmp_file.name) self._log.debug("CA-RPC: Running the CMD: {}".format(cmd)) - coro = asyncio.create_subprocess_shell(cmd, loop=self._loop, - stderr=asyncio.subprocess.PIPE) - process = yield from coro - err = yield from process.stderr.read() - task = self._loop.create_task(process.wait()) + process = asyncio.create_subprocess_shell(cmd, loop=self._loop, + stderr=asyncio.subprocess.PIPE) - return task, err + return process @asyncio.coroutine def register(self): @@ -315,16 +313,12 @@ class RiftCMRPCHandler(object): if nsd_cfg_prim_msg and nsd_cfg_prim_msg.has_field("user_defined_script"): rpc_ip.user_defined_script = nsd_cfg_prim_msg.user_defined_script - tasks = [] - task, err = yield from self._apply_ns_config( + task = yield from self._apply_ns_config( nsr, vnfrs, rpc_ip) - tasks.append(task) - if err: - rpc_op.job_status_details = err.decode() - self.job_manager.add_job(rpc_op, tasks) + self.job_manager.add_job(rpc_op, [task]) else: # Otherwise create VNF primitives. for vnf in rpc_ip.vnf_list: