summaryrefslogtreecommitdiffstats
path: root/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py
diff options
context:
space:
mode:
Diffstat (limited to 'lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py')
-rw-r--r--lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py27
1 files changed, 18 insertions, 9 deletions
diff --git a/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py b/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py
index 1eedb543..91d92089 100644
--- a/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py
+++ b/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py
@@ -13,7 +13,9 @@
# limitations under the License.
import logging
+from lcm.pub.aaiapi.aai import delete_vnf
from lcm.pub.database.models import NfInstModel, NfvoRegInfoModel
+from lcm.pub.exceptions import NFLCMException
logger = logging.getLogger(__name__)
@@ -24,12 +26,19 @@ class DeleteVnf:
self.nf_inst_id = instanceid
def do_biz(self):
- vnf_insts = NfInstModel.objects.filter(nfinstid=self.nf_inst_id)
- if not vnf_insts.exists():
- logger.warn('VnfInst(%s) does not exist' % self.nf_inst_id)
- return
- #sel_vnf = vnf_insts[0]
- #if sel_vnf.status != 'NOT_INSTANTIATED':
- # raise NFLCMException("Don't allow to delete vnf(status:[%s])" % sel_vnf.status)
- NfInstModel.objects.filter(nfinstid=self.nf_inst_id).delete()
- NfvoRegInfoModel.objects.filter(nfvoid=self.nf_inst_id).delete()
+ try:
+ vnf_insts = NfInstModel.objects.filter(nfinstid=self.nf_inst_id)
+ if not vnf_insts.exists():
+ logger.warn('VnfInst(%s) does not exist' % self.nf_inst_id)
+ return
+ #sel_vnf = vnf_insts[0]
+ #if sel_vnf.status != 'NOT_INSTANTIATED':
+ # raise NFLCMException("Don't allow to delete vnf(status:[%s])" % sel_vnf.status)
+ NfInstModel.objects.filter(nfinstid=self.nf_inst_id).delete()
+ NfvoRegInfoModel.objects.filter(nfvoid=self.nf_inst_id).delete()
+
+ delete_vnf(self.nf_inst_id)
+ except NFLCMException as e:
+ logger.debug('Delete VNF instance[%s] from AAI failed' % self.nf_inst_id)
+ except:
+ logger.debug('Delete VNF instance[%s] failed' % self.nf_inst_id)