Fix unit test error of nova freezer client updates
This patch mainly contains two aspects: 1. Freezer team has updated freezerclient, they remove the version parameter in Client. This make karbor not work well when using freezer protection plugin. 2. Nova client remove self.logger as default from nova client, it requires karbor transport logger to the client. Closes-Bug: #1802022 Change-Id: Iea594ff2917767108b868242d919db97a65479ea
This commit is contained in:
parent
66b02df4e4
commit
9a13d3c9a2
|
@ -46,8 +46,6 @@ CONF.register_opts(freezer_client_opts, group=CONFIG_GROUP)
|
||||||
CONF.set_default('service_name', 'freezer', CONFIG_GROUP)
|
CONF.set_default('service_name', 'freezer', CONFIG_GROUP)
|
||||||
CONF.set_default('service_type', 'backup', CONFIG_GROUP)
|
CONF.set_default('service_type', 'backup', CONFIG_GROUP)
|
||||||
|
|
||||||
FREEZERCLIENT_VERSION = '3'
|
|
||||||
|
|
||||||
|
|
||||||
def create(context, conf, **kwargs):
|
def create(context, conf, **kwargs):
|
||||||
conf.register_opts(freezer_client_opts, group=CONFIG_GROUP)
|
conf.register_opts(freezer_client_opts, group=CONFIG_GROUP)
|
||||||
|
@ -57,10 +55,8 @@ def create(context, conf, **kwargs):
|
||||||
append_project_fmt='%(url)s/%(project)s', **kwargs)
|
append_project_fmt='%(url)s/%(project)s', **kwargs)
|
||||||
|
|
||||||
if kwargs.get('session'):
|
if kwargs.get('session'):
|
||||||
return freezer_client.Client(version=FREEZERCLIENT_VERSION,
|
return freezer_client.Client(session=kwargs.get('session'),
|
||||||
session=kwargs.get('session'),
|
endpoint=url)
|
||||||
endpoint=url
|
|
||||||
)
|
|
||||||
args = {
|
args = {
|
||||||
'project_id': context.project_id,
|
'project_id': context.project_id,
|
||||||
'project_name': context.project_name,
|
'project_name': context.project_name,
|
||||||
|
@ -68,7 +64,6 @@ def create(context, conf, **kwargs):
|
||||||
'insecure': client_config.freezer_auth_insecure,
|
'insecure': client_config.freezer_auth_insecure,
|
||||||
'endpoint': url,
|
'endpoint': url,
|
||||||
'token': context.auth_token,
|
'token': context.auth_token,
|
||||||
'version': FREEZERCLIENT_VERSION,
|
|
||||||
'auth_url': client_config.auth_uri
|
'auth_url': client_config.auth_uri
|
||||||
}
|
}
|
||||||
return freezer_client.Client(**args)
|
return freezer_client.Client(**args)
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
# License for the specific language governing permissions and limitations
|
# License for the specific language governing permissions and limitations
|
||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
|
import logging as log
|
||||||
from novaclient import client as nc
|
from novaclient import client as nc
|
||||||
from oslo_config import cfg
|
from oslo_config import cfg
|
||||||
from oslo_log import log as logging
|
from oslo_log import log as logging
|
||||||
|
@ -66,4 +67,5 @@ def create(context, conf, **kwargs):
|
||||||
err="The parameter session is None.")
|
err="The parameter session is None.")
|
||||||
|
|
||||||
return nc.Client(NOVACLIENT_VERSION, extensions=extensions,
|
return nc.Client(NOVACLIENT_VERSION, extensions=extensions,
|
||||||
session=kwargs.get('session'), endpoint_override=url)
|
session=kwargs.get('session'), endpoint_override=url,
|
||||||
|
logger=log.getLogger('novaclient'))
|
||||||
|
|
|
@ -41,13 +41,11 @@ class FreezerClientTest(base.TestCase):
|
||||||
@mock.patch('freezerclient.v1.client.Client')
|
@mock.patch('freezerclient.v1.client.Client')
|
||||||
def test_create_client(self, create, get_url):
|
def test_create_client(self, create, get_url):
|
||||||
get_url.return_value = self._public_url
|
get_url.return_value = self._public_url
|
||||||
client_version = freezer.FREEZERCLIENT_VERSION
|
|
||||||
|
|
||||||
session = keystone_session.Session(auth=None)
|
session = keystone_session.Session(auth=None)
|
||||||
freezer.create(self._context, cfg.CONF, session=session)
|
freezer.create(self._context, cfg.CONF, session=session)
|
||||||
create.assert_called_with(endpoint=self._public_url,
|
create.assert_called_with(endpoint=self._public_url,
|
||||||
session=session,
|
session=session)
|
||||||
version=client_version)
|
|
||||||
|
|
||||||
@mock.patch('karbor.services.protection.clients.utils.get_url')
|
@mock.patch('karbor.services.protection.clients.utils.get_url')
|
||||||
@mock.patch('freezerclient.v1.client.Client')
|
@mock.patch('freezerclient.v1.client.Client')
|
||||||
|
@ -59,7 +57,6 @@ class FreezerClientTest(base.TestCase):
|
||||||
cfg.CONF.set_default('auth_uri',
|
cfg.CONF.set_default('auth_uri',
|
||||||
self._auth_url,
|
self._auth_url,
|
||||||
freezer.CONFIG_GROUP)
|
freezer.CONFIG_GROUP)
|
||||||
client_version = freezer.FREEZERCLIENT_VERSION
|
|
||||||
args = {
|
args = {
|
||||||
'project_id': self._context.project_id,
|
'project_id': self._context.project_id,
|
||||||
'project_name': self._context.project_name,
|
'project_name': self._context.project_name,
|
||||||
|
@ -67,7 +64,6 @@ class FreezerClientTest(base.TestCase):
|
||||||
'insecure': client_config.freezer_auth_insecure,
|
'insecure': client_config.freezer_auth_insecure,
|
||||||
'endpoint': self._public_url,
|
'endpoint': self._public_url,
|
||||||
'token': self._context.auth_token,
|
'token': self._context.auth_token,
|
||||||
'version': client_version,
|
|
||||||
'auth_url': self._auth_url,
|
'auth_url': self._auth_url,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue