self.logger.debug(logging_text + "Exit Ok VIM account created at RO_vim_account_id={}".format(desc["uuid"]))
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug(logging_text + "Exit Ok RO_vim_id={}".format(RO_vim_id))
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug(logging_text + "Exit Ok")
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug(logging_text + "Exit Ok WIM account created at RO_wim_account_id={}".format(desc["uuid"]))
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug(logging_text + "Exit Ok RO_wim_id={}".format(RO_wim_id))
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug(logging_text + "Exit Ok")
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
operation_details = 'Done'
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug(logging_text + "Exit Ok RO_sdn_id={}".format(RO_sdn_id))
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
self.logger.debug("sdn_delete task sdn_id={} Exit Ok".format(sdn_id))
return
- except (ROclient.ROClientException, DbException) as e:
+ except (ROclient.ROClientException, DbException, asyncio.CancelledError) as e:
self.logger.error(logging_text + "Exit Exception {}".format(e))
exc = e
except Exception as e:
error_text_list.append("Failing init {}: {}".format(task_name, exc))
db_k8scluster_update["_admin.{}.error_msg".format(task_name)] = str(exc)
db_k8scluster_update["_admin.{}.id".format(task_name)] = None
+ db_k8scluster_update["_admin.{}.operationalState".format(task_name)] = "ERROR"
self.logger.error(logging_text + "{} init fail: {}".format(task_name, exc),
exc_info=not isinstance(exc, (N2VCException, str)))
else:
db_k8scluster_update["_admin.{}.error_msg".format(task_name)] = None
db_k8scluster_update["_admin.{}.id".format(task_name)] = k8s_id
db_k8scluster_update["_admin.{}.created".format(task_name)] = uninstall_sw
- db_k8scluster_update["_admin.operationalState"] = "ENABLED"
+ db_k8scluster_update["_admin.{}.operationalState".format(task_name)] = "ENABLED"
# update database
step = "Updating database for " + task_name
self.update_db_2("k8sclusters", k8scluster_id, db_k8scluster_update)
- if not tasks_name_ok:
+ if tasks_name_ok:
+ operation_details = "ready for " + ", ".join(tasks_name_ok)
+ operation_state = "COMPLETED"
+ db_k8scluster_update["_admin.operationalState"] = "ENABLED" if not error_text_list else "DEGRADED"
+ operation_details += "; " + ";".join(error_text_list)
+ else:
db_k8scluster_update["_admin.operationalState"] = "ERROR"
operation_state = "FAILED"
- else:
- db_k8scluster_update["_admin.detailed-status"] = "ready for " + ", ;".join(tasks_name_ok)
- operation_state = "COMPLETED"
- operation_details = db_k8scluster_update["_admin.detailed-status"] = ";".join(error_text_list)
+ operation_details = ";".join(error_text_list)
+ db_k8scluster_update["_admin.detailed-status"] = operation_details
self.logger.debug(logging_text + "Done. Result: " + operation_state)
exc = None
except Exception as e:
- self.logger.critical(logging_text + "Exit Exception {}".format(e), exc_info=True)
+ if isinstance(e, (LcmException, DbException, K8sException, N2VCException, asyncio.CancelledError)):
+ self.logger.error(logging_text + "Exit Exception {}".format(e))
+ else:
+ self.logger.critical(logging_text + "Exit Exception {}".format(e), exc_info=True)
exc = e
finally:
if exc and db_k8scluster:
uninstall_sw = deep_get(db_k8scluster, ("_admin", "juju-bundle", "created")) or False
cluster_removed = await self.juju_k8scluster.reset(cluster_uuid=k8s_jb_id, uninstall_sw=uninstall_sw)
db_k8scluster_update["_admin.juju-bundle.id"] = None
+ db_k8scluster_update["_admin.juju-bundle.operationalState"] = "DISABLED"
if k8s_hc_id:
step = "Removing helm-chart '{}'".format(k8s_hc_id)
uninstall_sw = deep_get(db_k8scluster, ("_admin", "helm-chart", "created")) or False
cluster_removed = await self.helm_k8scluster.reset(cluster_uuid=k8s_hc_id, uninstall_sw=uninstall_sw)
db_k8scluster_update["_admin.helm-chart.id"] = None
+ db_k8scluster_update["_admin.helm-chart.operationalState"] = "DISABLED"
# Try to remove from cluster_inserted to clean old versions
if k8s_hc_id and cluster_removed:
self.logger.debug(logging_text + "Done")
except Exception as e:
- if isinstance(e, (LcmException, DbException, K8sException, N2VCException)):
+ if isinstance(e, (LcmException, DbException, K8sException, N2VCException, asyncio.CancelledError)):
self.logger.error(logging_text + "Exit Exception {}".format(e))
else:
self.logger.critical(logging_text + "Exit Exception {}".format(e), exc_info=True)
db_k8srepo = self.db.get_one("k8srepos", {"_id": k8srepo_id})
db_k8srepo_update["_admin.operationalState"] = "ENABLED"
except Exception as e:
- self.logger.critical(logging_text + "Exit Exception {}".format(e), exc_info=True)
+ self.logger.error(logging_text + "Exit Exception {}".format(e),
+ exc_info=not isinstance(e, (LcmException, DbException, K8sException, N2VCException,
+ asyncio.CancelledError)))
exc = e
finally:
if exc and db_k8srepo:
db_k8srepo = self.db.get_one("k8srepos", {"_id": k8srepo_id})
except Exception as e:
- self.logger.critical(logging_text + "Exit Exception {}".format(e), exc_info=True)
+ self.logger.error(logging_text + "Exit Exception {}".format(e),
+ exc_info=not isinstance(e, (LcmException, DbException, K8sException, N2VCException,
+ asyncio.CancelledError)))
exc = e
finally:
if exc and db_k8srepo: