Fix bug 1039: Add config to install_configuration_sw
[osm/N2VC.git] / n2vc / n2vc_juju_conn.py
index dbd904c..4456dd9 100644 (file)
@@ -338,7 +338,8 @@ class N2VCJujuConnector(N2VCConnector):
         artifact_path: str,
         db_dict: dict,
         progress_timeout: float = None,
         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: {}'
     ):
 
         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,
                 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))
             )
         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,
             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
     ) -> (Application, int):
 
         # get juju model and observer
@@ -980,7 +983,8 @@ class N2VCJujuConnector(N2VCConnector):
                 channel='stable',
                 num_units=1,
                 series=series,
                 channel='stable',
                 num_units=1,
                 series=series,
-                to=machine_id
+                to=machine_id,
+                config=config
             )
 
             # register application with observer
             )
 
             # register application with observer
@@ -1288,6 +1292,12 @@ class N2VCJujuConnector(N2VCConnector):
             total_timeout = 3600
 
         model = await self._juju_get_model(model_name=model_name)
             total_timeout = 3600
 
         model = await self._juju_get_model(model_name=model_name)
+
+        if not model:
+            raise N2VCException(
+                message="Model {} does not exist".format(model_name)
+            )
+
         uuid = model.info.uuid
 
         # destroy applications
         uuid = model.info.uuid
 
         # destroy applications