From ef99f444628282d06feae04514bd2a6328d87b93 Mon Sep 17 00:00:00 2001 From: Dean Troyer Date: Mon, 24 Apr 2017 18:57:05 -0500 Subject: Improve no-auth path The commands that do not require authentication sometimes still need to call ClientManager.is_network_endpoint_enabled() to see if Neutron is available. Optimize the paths a bit to skip auth when it is not necessary; the upshot is Neutron will be assumed in these cases now. This gets a LOT cleaner when it appears is a future osc-lib. Change-Id: Ifaddc57dfa192bde04d0482e2cdcce111313a22a --- openstackclient/shell.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'openstackclient/shell.py') diff --git a/openstackclient/shell.py b/openstackclient/shell.py index 8fdf0b61..2e384f8f 100644 --- a/openstackclient/shell.py +++ b/openstackclient/shell.py @@ -182,6 +182,12 @@ class OpenStackShell(shell.OpenStackShell): # get_one_Cloud()'s validation to avoid loading plugins validate = cmd.auth_required + # Force skipping auth for commands that do not need it + # NOTE(dtroyer): This is here because ClientManager does not have + # visibility into the Command object to get + # auth_required. It needs to move into osc-lib + self.client_manager._auth_required = cmd.auth_required + # Validate auth options self.cloud = self.cloud_config.get_one_cloud( cloud=self.options.cloud, -- cgit v1.2.1