Merge "Fixed the api version issue on OSC plugin"

This commit is contained in:
Jenkins 2017-07-20 10:03:56 +00:00 committed by Gerrit Code Review
commit 26554c15ed
2 changed files with 13 additions and 7 deletions

View File

@ -15,12 +15,15 @@ import logging
from osc_lib import utils
from zunclient import api_versions
LOG = logging.getLogger(__name__)
DEFAULT_CONTAINER_API_VERSION = "1.1"
DEFAULT_CONTAINER_API_VERSION = "1.2"
API_VERSION_OPTION = "os_container_api_version"
API_NAME = "container"
LAST_KNOWN_API_VERSION = 1
LAST_KNOWN_API_VERSION = 2
API_VERSIONS = {
'1.%d' % i: 'zunclient.v1.client.Client'
for i in range(1, LAST_KNOWN_API_VERSION + 1)
@ -37,8 +40,9 @@ def make_client(instance):
LOG.debug("Instantiating zun client: {0}".format(
zun_client))
api_version = api_versions.get_api_version(instance._api_version[API_NAME])
client = zun_client(
os_container_api_version=instance._api_version[API_NAME],
api_version=api_version,
region_name=instance._region_name,
session=instance.session,
service_type='container',

View File

@ -18,16 +18,18 @@ from zunclient.tests.unit import base
class TestContainerPlugin(base.TestCase):
@mock.patch("zunclient.api_versions.get_api_version")
@mock.patch("zunclient.v1.client.Client")
def test_make_client(self, p_client):
def test_make_client(self, p_client, mock_get_api_version):
instance = mock.Mock()
instance._api_version = {"container": '1'}
instance._region_name = 'zun_region'
instance.session = 'zun_session'
mock_get_api_version.return_value = '1.2'
plugin.make_client(instance)
p_client.assert_called_with(os_container_api_version='1',
region_name='zun_region',
p_client.assert_called_with(region_name='zun_region',
session='zun_session',
service_type='container')
service_type='container',
api_version='1.2')