X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=n2vc%2Fn2vc_juju_conn.py;h=6b8ac0915cc4bee0be1bb7f1cf428ee35460f645;hp=dbd904ccc79758a95689d71d21401f19ee43cd47;hb=refs%2Fchanges%2F72%2F8772%2F2;hpb=df9f72a3f1e7ae1a3bc48fd8e116d8a4ee65824a;ds=inline diff --git a/n2vc/n2vc_juju_conn.py b/n2vc/n2vc_juju_conn.py index dbd904c..6b8ac09 100644 --- a/n2vc/n2vc_juju_conn.py +++ b/n2vc/n2vc_juju_conn.py @@ -32,7 +32,7 @@ from n2vc.n2vc_conn import N2VCConnector from n2vc.n2vc_conn import obj_to_dict, obj_to_yaml from n2vc.exceptions \ import N2VCBadArgumentsException, N2VCException, N2VCConnectionException, \ - N2VCExecutionException, N2VCInvalidCertificate + N2VCExecutionException, N2VCInvalidCertificate, N2VCNotFound from n2vc.juju_observer import JujuModelObserver from juju.controller import Controller @@ -338,7 +338,8 @@ class N2VCJujuConnector(N2VCConnector): artifact_path: str, db_dict: dict, progress_timeout: float = None, - total_timeout: float = None + total_timeout: float = None, + config: dict = None, ): self.log.info('Installing configuration sw on ee_id: {}, artifact path: {}, db_dict: {}' @@ -386,7 +387,8 @@ class N2VCJujuConnector(N2VCConnector): machine_id=machine_id, db_dict=db_dict, progress_timeout=progress_timeout, - total_timeout=total_timeout + total_timeout=total_timeout, + config=config ) except Exception as e: raise N2VCException(message='Error desploying charm into ee={} : {}'.format(ee_id, e)) @@ -954,7 +956,8 @@ class N2VCJujuConnector(N2VCConnector): machine_id: str, db_dict: dict, progress_timeout: float = None, - total_timeout: float = None + total_timeout: float = None, + config: dict = None ) -> (Application, int): # get juju model and observer @@ -980,7 +983,8 @@ class N2VCJujuConnector(N2VCConnector): channel='stable', num_units=1, series=series, - to=machine_id + to=machine_id, + config=config ) # register application with observer @@ -1288,6 +1292,12 @@ class N2VCJujuConnector(N2VCConnector): total_timeout = 3600 model = await self._juju_get_model(model_name=model_name) + + if not model: + raise N2VCNotFound( + message="Model {} does not exist".format(model_name) + ) + uuid = model.info.uuid # destroy applications