def get_cloud_region( service_key=None, options=None, app_name=None, app_version=None, load_yaml_config=True, load_envvars=True, **kwargs): config = OpenStackConfig( load_yaml_config=load_yaml_config, load_envvars=load_envvars, app_name=app_name, app_version=app_version) if options: 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(options=parsed_options, **kwargs)
def get_cloud_region( service_key=None, options=None, app_name=None, app_version=None, **kwargs): load_yaml_config = kwargs.pop('load_yaml_config', True) 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) parsed_options = options.parse_known_args(sys.argv) else: parsed_options = None return _config.get_one(options=parsed_options, **kwargs)
def get_cloud_region(service_key=None, options=None, app_name=None, app_version=None, load_yaml_config=True, load_envvars=True, **kwargs): config = OpenStackConfig(load_yaml_config=load_yaml_config, load_envvars=load_envvars, app_name=app_name, app_version=app_version) if options: 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(options=parsed_options, **kwargs)
def _get_keystone_server_url(self, instance_config): keystone_server_url = instance_config.get("keystone_server_url") if keystone_server_url: return keystone_server_url openstack_config_file_path = instance_config.get("openstack_config_file_path") if not openstack_config_file_path and not keystone_server_url: raise IncompleteConfig("Either keystone_server_url or openstack_config_file_path need to be provided") openstack_cloud_name = instance_config.get("openstack_cloud_name") openstack_config = OpenStackConfig(config_files=[openstack_config_file_path]) cloud = openstack_config.get_one(cloud=openstack_cloud_name) cloud_auth = cloud.get_auth() if not cloud_auth or not cloud_auth.auth_url: raise IncompleteConfig( 'No auth_url found for cloud {} in {}', openstack_cloud_name, openstack_config_file_path ) return cloud_auth.auth_url
def get_regions(cloud_name, yaml_file): config = OpenStackConfig(config_files=[yaml_file]) return config._get_regions(cloud_name)