From fcaccfabcdc5fbb05b2aa6a1c0e9645ffb7c8fc4 Mon Sep 17 00:00:00 2001 From: Ruslan Kuprieiev Date: Wed, 23 Aug 2017 21:51:44 +0300 Subject: [PATCH] data_cloud: fix cloud config for testing Signed-off-by: Ruslan Kuprieiev --- dvc/data_cloud.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/dvc/data_cloud.py b/dvc/data_cloud.py index f741c3231..52f9d52fb 100644 --- a/dvc/data_cloud.py +++ b/dvc/data_cloud.py @@ -694,7 +694,10 @@ class DataCloud(object): @staticmethod def get_cloud_settings(config, cloud_type, path_factory): - cloud_config = config[cloud_type] + if cloud_type not in config.keys(): + cloud_config = None + else: + cloud_config = config[cloud_type] global_storage_path = config['Global'].get('StoragePath', None) cloud_settings = CloudSettings(path_factory, global_storage_path, cloud_config) return cloud_settings @@ -766,8 +769,14 @@ class DataCloud(object): Logger.error('Not supported scheme \'{}\''.format(o.scheme)) return None - self._config = self._settings.config._config - cloud_settings = self.get_cloud_settings(self._config, typ, self._settings.path_factory) + #To handle ConfigI case + if not hasattr(self._settings.config, '_config'): + self._config = None + cloud_settings = None + else: + self._config = self._settings.config._config + cloud_settings = self.get_cloud_settings(self._config, typ, self._settings.path_factory) + cloud = self.CLOUD_MAP[typ](cloud_settings) return cloud.import_data(url, item)