Fixing PROXY_AUTH_URL not being populated properly

In a recent patch some imports were added to the top of
cmd files, before the call to load the configuration
was issued. This caused anything initilized before the
configuration to fallback on default values.

Because of this, for example PROXY_AUTH_URL found in
trove/common/remote.py would always be set to the
default value: "http://0.0.0.0:5000/v2.0".
> PROXY_AUTH_URL = CONF.trove_auth_url

This patch changes the config values in the
trove/common/*remote.py files to be lazy loaded.

Co-Authored-By: Riccardo Pittau <rpittau@blizzard.com>
Change-Id: Ie3893680c406d92fe2b20e892c29fce675d7f224
Closes-Bug: #1671655
(cherry picked from commit db320b80a5)
This commit is contained in:
Erik Olof Gunnar Andersson 2017-03-09 15:49:49 -08:00
parent 60e35d16b5
commit 2da1a2485b
3 changed files with 7 additions and 14 deletions

View File

@ -27,9 +27,6 @@ from swiftclient.client import Connection
CONF = cfg.CONF
PROXY_AUTH_URL = CONF.trove_auth_url
USE_SNET = CONF.backup_use_snet
def normalize_url(url):
"""Adds trailing slash if necessary."""
@ -103,7 +100,7 @@ def nova_client(context, region_name=None):
bypass_url=url,
tenant_id=context.tenant,
project_domain_name=context.project_domain_name,
auth_url=PROXY_AUTH_URL,
auth_url=CONF.trove_auth_url,
auth_token=context.auth_token)
client.client.auth_token = context.auth_token
client.client.management_url = url
@ -132,7 +129,7 @@ def cinder_client(context, region_name=None):
client = CinderClient.Client(context.user, context.auth_token,
project_id=context.tenant,
auth_url=PROXY_AUTH_URL)
auth_url=CONF.trove_auth_url)
client.client.auth_token = context.auth_token
client.client.management_url = url
return client
@ -169,7 +166,7 @@ def swift_client(context, region_name=None):
client = Connection(preauthurl=url,
preauthtoken=context.auth_token,
tenant_name=context.tenant,
snet=USE_SNET)
snet=CONF.backup_use_snet)
return client

View File

@ -49,8 +49,6 @@ remote_neutron_client = \
"""
PROXY_AUTH_URL = CONF.trove_auth_url
def nova_client_trove_admin(context, region_name=None, compute_url=None):
"""
@ -66,7 +64,7 @@ def nova_client_trove_admin(context, region_name=None, compute_url=None):
client = NovaClient(CONF.nova_proxy_admin_user,
CONF.nova_proxy_admin_pass,
CONF.nova_proxy_admin_tenant_name,
auth_url=PROXY_AUTH_URL,
auth_url=CONF.trove_auth_url,
service_type=CONF.nova_compute_service_type,
region_name=region_name or CONF.os_region_name)
@ -88,7 +86,7 @@ def cinder_client_trove_admin(context=None):
client = CinderClient.Client(CONF.nova_proxy_admin_user,
CONF.nova_proxy_admin_pass,
project_id=CONF.nova_proxy_admin_tenant_name,
auth_url=PROXY_AUTH_URL,
auth_url=CONF.trove_auth_url,
service_type=CONF.cinder_service_type,
region_name=CONF.os_region_name)
@ -110,7 +108,7 @@ def neutron_client_trove_admin(context=None):
username=CONF.nova_proxy_admin_user,
password=CONF.nova_proxy_admin_pass,
tenant_name=CONF.nova_proxy_admin_tenant_name,
auth_url=PROXY_AUTH_URL,
auth_url=CONF.trove_auth_url,
service_type=CONF.neutron_service_type,
region_name=CONF.os_region_name)

View File

@ -23,8 +23,6 @@ from troveclient.v1 import client as TroveClient
CONF = cfg.CONF
PROXY_AUTH_URL = CONF.trove_auth_url
"""
NOTE(mwj, Apr 2016):
@ -47,7 +45,7 @@ def trove_client(context, region_name=None):
client = TroveClient.Client(context.user, context.auth_token,
project_id=context.tenant,
auth_url=PROXY_AUTH_URL)
auth_url=CONF.trove_auth_url)
client.client.auth_token = context.auth_token
client.client.management_url = url
return client