X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=lcm%2Flcm%2Fnf%2Fvnfs%2Fvnf_cancel%2Fdelete_vnf_identifier.py;h=d24cc081b6cf5448423da56b2df72f3285e2050d;hb=358310fd8c7c0863800de3b22a5a9d8ce2fb3b7e;hp=33eb7ded637334f4e9388c71a7475a19162c0434;hpb=ebfb00fb5e70cdc919b910d91650446542088cea;p=vfc%2Fgvnfm%2Fvnflcm.git 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 33eb7ded..d24cc081 100644 --- a/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py +++ b/lcm/lcm/nf/vnfs/vnf_cancel/delete_vnf_identifier.py @@ -11,11 +11,12 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. + import logging +import traceback -from lcm.pub.aaiapi.aai import call_aai -from lcm.pub.config.config import AAI_BASE_URL from lcm.pub.database.models import NfInstModel, NfvoRegInfoModel +from lcm.pub.exceptions import NFLCMException logger = logging.getLogger(__name__) @@ -26,17 +27,25 @@ class DeleteVnf: self.nf_inst_id = instanceid def do_biz(self): + try: + self.check_parameter() + self.delete_info_from_db() + except NFLCMException as e: + logger.debug('Delete VNF instance[%s] failed: %s', self.nf_inst_id, e.message) + except Exception as e: + logger.error(e.message) + logger.error(traceback.format_exc()) + logger.debug('Delete VNF instance[%s] failed' % self.nf_inst_id) + + def check_parameter(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) + # sel_vnf = vnf_insts[0] + # if sel_vnf.status != 'NOT_INSTANTIATED': + # raise NFLCMException("Don't allow to delete vnf(status:[%s])" % sel_vnf.status) + + def delete_info_from_db(self): NfInstModel.objects.filter(nfinstid=self.nf_inst_id).delete() NfvoRegInfoModel.objects.filter(nfvoid=self.nf_inst_id).delete() - - def delete_data_from_aai(self, req_data): - full_url = AAI_BASE_URL + "api/aai-service-design-and-creation/v1/%s" % self.nf_inst_id - del_result = call_aai(full_url, "DELETE", req_data) - pass \ No newline at end of file