summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2017-05-25 22:55:25 +0000
committerGerrit Code Review <review@openstack.org>2017-05-25 22:55:25 +0000
commit0020d9c192a9879afc6ad0a3953424cf7bf9e16e (patch)
tree6a1d80ecf94ea1eead190159d054fcd812e2666f
parent357244a2d162a1741d14e483b63a7b8c62f1a443 (diff)
parent8235e0ce6cff00bfa84501865a3cf48511cdf2ec (diff)
downloados-client-config-0020d9c192a9879afc6ad0a3953424cf7bf9e16e.tar.gz
Merge "Keep a singleton to support multiple get_config calls"
-rw-r--r--os_client_config/__init__.py13
1 files changed, 8 insertions, 5 deletions
diff --git a/os_client_config/__init__.py b/os_client_config/__init__.py
index 1f1266c..4246525 100644
--- a/os_client_config/__init__.py
+++ b/os_client_config/__init__.py
@@ -21,6 +21,7 @@ from os_client_config.config import OpenStackConfig # noqa
__version__ = pbr.version.VersionInfo('os_client_config').version_string()
+_config = None
def get_config(
@@ -28,16 +29,18 @@ def get_config(
app_name=None, app_version=None,
**kwargs):
load_yaml_config = kwargs.pop('load_yaml_config', True)
- config = OpenStackConfig(
- load_yaml_config=load_yaml_config,
- app_name=app_name, app_version=app_version)
+ global _config
+ if not _config:
+ _config = OpenStackConfig(
+ load_yaml_config=load_yaml_config,
+ app_name=app_name, app_version=app_version)
if options:
- config.register_argparse_arguments(options, sys.argv, service_key)
+ _config.register_argparse_arguments(options, sys.argv, service_key)
parsed_options = options.parse_known_args(sys.argv)
else:
parsed_options = None
- return config.get_one_cloud(options=parsed_options, **kwargs)
+ return _config.get_one_cloud(options=parsed_options, **kwargs)
def make_rest_client(