Fixed the api version issue on OSC plugin

* Fixed an issue that the api version is passed with wrong keyword
  argument (should be 'api_version', not 'os_container_api_version').
* Bump the api version to 1.2 which is the current latest.

Closes-Bug: #1705283
Change-Id: Idef09cce42003ccc113d6113640df4ab69f4b690
This commit is contained in:
Hongbin Lu
2017-07-19 15:09:20 +00:00
parent 126ec244ab
commit 071a047a25
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')