summaryrefslogtreecommitdiff
path: root/openstackclient/common
diff options
context:
space:
mode:
authorDean Troyer <dtroyer@gmail.com>2019-08-22 23:55:01 -0500
committerDean Troyer <dtroyer@gmail.com>2019-09-09 14:01:57 +0000
commitee48777207e0682862cf43fdf2f2f5dffc37d22a (patch)
tree91555546171a2b3a71ca6659130451fba2222119 /openstackclient/common
parentdd1ce370424264166be686578bcab0fa41ac973e (diff)
downloadpython-openstackclient-ee48777207e0682862cf43fdf2f2f5dffc37d22a.tar.gz
Clean up app initialization and config
* Remove unnecessary code in OpenStackShell.initialize_app() - only the bits it instantiate our subclass of ClientManager remain * Remove OSC_Config - with https://review.opendev.org/#/c/678095/ the last remaining required bit moves to osc-lib Thos requires osc-lib 1.14.0 Change-Id: Ia4b3c737de9dc34949e74632441621014ef9eea9 Signed-off-by: Dean Troyer <dtroyer@gmail.com>
Diffstat (limited to 'openstackclient/common')
-rw-r--r--openstackclient/common/client_config.py71
1 files changed, 0 insertions, 71 deletions
diff --git a/openstackclient/common/client_config.py b/openstackclient/common/client_config.py
deleted file mode 100644
index a22dd0cb..00000000
--- a/openstackclient/common/client_config.py
+++ /dev/null
@@ -1,71 +0,0 @@
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-#
-
-"""OpenStackConfig subclass for argument compatibility"""
-
-from osc_lib.cli import client_config
-
-
-# Sublcass OpenStackConfig in order to munge config values
-# before auth plugins are loaded
-class OSC_Config(client_config.OSC_Config):
-
- # TODO(dtroyer): Remove _auth_default_domain when the v3otp fix is
- # backported to osc-lib, should be in release 1.3.0
- def _auth_default_domain(self, config):
- """Set a default domain from available arguments
-
- Migrated from clientmanager.setup_auth()
- """
-
- identity_version = config.get('identity_api_version', '')
- auth_type = config.get('auth_type', None)
-
- # TODO(mordred): This is a usability improvement that's broadly useful
- # We should port it back up into os-client-config.
- default_domain = config.get('default_domain', None)
- if (identity_version == '3' and
- not auth_type.startswith('v2') and
- default_domain):
-
- # NOTE(stevemar): If PROJECT_DOMAIN_ID or PROJECT_DOMAIN_NAME is
- # present, then do not change the behaviour. Otherwise, set the
- # PROJECT_DOMAIN_ID to 'OS_DEFAULT_DOMAIN' for better usability.
- if (
- auth_type in ("password", "v3password", "v3totp") and
- not config['auth'].get('project_domain_id') and
- not config['auth'].get('project_domain_name')
- ):
- config['auth']['project_domain_id'] = default_domain
-
- # NOTE(stevemar): If USER_DOMAIN_ID or USER_DOMAIN_NAME is present,
- # then do not change the behaviour. Otherwise, set the
- # USER_DOMAIN_ID to 'OS_DEFAULT_DOMAIN' for better usability.
- # NOTE(aloga): this should only be set if there is a username.
- # TODO(dtroyer): Move this to os-client-config after the plugin has
- # been loaded so we can check directly if the options are accepted.
- if (
- auth_type in ("password", "v3password", "v3totp") and
- not config['auth'].get('user_domain_id') and
- not config['auth'].get('user_domain_name')
- ):
- config['auth']['user_domain_id'] = default_domain
- return config
-
- def load_auth_plugin(self, config):
- """Get auth plugin and validate args"""
-
- loader = self._get_auth_loader(config)
- config = self._validate_auth(config, loader)
- auth_plugin = loader.load_from_options(**config['auth'])
- return auth_plugin