diff options
author | fengyuanxing <feng.yuanxing@zte.com.cn> | 2017-09-21 16:44:46 +0800 |
---|---|---|
committer | fengyuanxing <feng.yuanxing@zte.com.cn> | 2017-09-21 16:45:10 +0800 |
commit | 9bc75fc81fac493841ba9d1b88ca459444c15a00 (patch) | |
tree | b7ecefbda496350253f8720e1a80eef238020181 | |
parent | baeb79abd6ffb53050cdf54a25740d7889eff04a (diff) |
Add code to deal with exceptions
Issue-Id: VFC-412
Change-Id: Ifa16fda711f7ff41a75b31fdba5a11e5bb06bf02
Signed-off-by: fengyuanxing <feng.yuanxing@zte.com.cn>
-rw-r--r-- | lcm/ns/vnfs/heal_vnfs.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lcm/ns/vnfs/heal_vnfs.py b/lcm/ns/vnfs/heal_vnfs.py index ce847955..8b5847ce 100644 --- a/lcm/ns/vnfs/heal_vnfs.py +++ b/lcm/ns/vnfs/heal_vnfs.py @@ -82,8 +82,10 @@ class NFHealService(threading.Thread): actionvminfo = ignore_case_get(self.nf_additional_params, 'actionvminfo') vmid = ignore_case_get(actionvminfo, 'vmid') vmname = ignore_case_get(actionvminfo, 'vmname') + + # Gets vduid - vduid = self.get_vudId(vmid) + vduid = self.get_vudId(vmid, self.vnf_instance_id) self.nf_heal_params = { "action": action, @@ -105,10 +107,12 @@ class NFHealService(threading.Thread): raise NSLCMException("nf heal failed") # Gets vdu id according to the given vm id. - def get_vudId(self, vmId): - vnfcInstance = VNFCInstModel.objects.filter(vmid = vmId).first() - if not vnfcInstance: - raise NSLCMException('VDU [vmid=%s] does not exist' % self.vmId) + def get_vudId(self, vmid): + vnfcInstances = VNFCInstModel.objects.filter(vmid = vmid, nfinstid=self.vnf_instance_id) + if not vnfcInstances or len(vnfcInstances) > 1: + raise NSLCMException('VDU [vmid=%s, vnfInstanceId=%s] does not exist' % (vmid, self.vnf_instance_id)) + + vnfcInstance = VNFCInstModel.objects.filter(vmid = vmid,nfinstid=self.vnf_instance_id).first() return vnfcInstance.vduid def update_job(self, progress, desc=''): |