From 755155efe1d1175eaf6a33c8331862b22816a17c Mon Sep 17 00:00:00 2001 From: garciadeblas Date: Tue, 17 Dec 2019 15:02:11 +0100 Subject: [PATCH] Quick deployment of charms: added apt_mirror and enable_os_upgrade model config options Change-Id: Ied84a77d43aa02314c6e24a17148af1b19d76993 Signed-off-by: garciadeblas (cherry picked from commit 923510cbae1b6abf0b90f4b4ec0e2e37504111de) --- n2vc/n2vc_juju_conn.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/n2vc/n2vc_juju_conn.py b/n2vc/n2vc_juju_conn.py index ad001f2..cf865a8 100644 --- a/n2vc/n2vc_juju_conn.py +++ b/n2vc/n2vc_juju_conn.py @@ -157,6 +157,16 @@ class N2VCJujuConnector(N2VCConnector): else: self.warning('api_proxy is not configured. Support for native charms is disabled') + if 'enable_os_upgrade' in vca_config: + self.enable_os_upgrade = vca_config['enable_os_upgrade'] + else: + self.enable_os_upgrade = True + + if 'apt_mirror' in vca_config: + self.apt_mirror = vca_config['apt_mirror'] + else: + self.apt_mirror = None + self.debug('Arguments have been checked') # juju data @@ -1093,6 +1103,7 @@ class N2VCJujuConnector(N2VCConnector): async def _juju_get_model(self, model_name: str) -> Model: """ Get a model object from juju controller + If the model does not exits, it creates it. :param str model_name: name of the model :returns Model: model obtained from juju controller or Exception @@ -1121,9 +1132,16 @@ class N2VCJujuConnector(N2VCConnector): if model_name not in model_list: self.info('Model {} does not exist. Creating new model...'.format(model_name)) + config_dict = {'authorized-keys': self.public_key} + if self.apt_mirror: + config_dict['apt-mirror'] = self.apt_mirror + if not self.enable_os_upgrade: + config_dict['enable-os-refresh-update'] = False + config_dict['enable-os-upgrade'] = False + model = await self.controller.add_model( model_name=model_name, - config={'authorized-keys': self.public_key} + config=config_dict ) self.info('New model created, name={}'.format(model_name)) else: -- 2.25.1