X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=n2vc%2Fn2vc_conn.py;h=55cc7e102bce4490d2b2977719a179c632c9e8fe;hp=c0bb558a3a05e0eac260dcc5971fc280fde8ef31;hb=2f66c4df28308b5b2747bb207e7797932e502436;hpb=f52cb7cfeb4e24febe7c66af3d5bb275a50d7f99 diff --git a/n2vc/n2vc_conn.py b/n2vc/n2vc_conn.py index c0bb558..55cc7e1 100644 --- a/n2vc/n2vc_conn.py +++ b/n2vc/n2vc_conn.py @@ -23,7 +23,6 @@ import abc import asyncio -from enum import Enum from http import HTTPStatus import os import shlex @@ -35,14 +34,7 @@ from osm_common.dbmongo import DbException import yaml from n2vc.loggable import Loggable - - -class N2VCDeploymentStatus(Enum): - PENDING = "pending" - RUNNING = "running" - COMPLETED = "completed" - FAILED = "failed" - UNKNOWN = "unknown" +from n2vc.utils import EntityType, JujuStatusToOSM, N2VCDeploymentStatus class N2VCConnector(abc.ABC, Loggable): @@ -468,7 +460,14 @@ class N2VCConnector(abc.ABC, Loggable): else: self.log.info("Exception writing status to database: {}".format(e)) + def osm_status(self, entity_type: EntityType, status: str) -> N2VCDeploymentStatus: + if status not in JujuStatusToOSM[entity_type]: + self.log.warning("Status {} not found in JujuStatusToOSM.".format(status)) + return N2VCDeploymentStatus.UNKNOWN + return JujuStatusToOSM[entity_type][status] + +# DEPRECATED def juju_status_2_osm_status(statustype: str, status: str) -> N2VCDeploymentStatus: if statustype == "application" or statustype == "unit": if status in ["waiting", "maintenance"]: