Merge pull request #4226 from dnephin/update-api-version-for-v3

Increase minimum version for compose format v3
This commit is contained in:
Aanand Prasad 2016-12-07 16:59:28 +00:00 committed by GitHub
commit 30eac9f1ae
3 changed files with 15 additions and 14 deletions

View File

@ -23,12 +23,12 @@ API_VERSIONS = {
COMPOSEFILE_V1: '1.21', COMPOSEFILE_V1: '1.21',
COMPOSEFILE_V2_0: '1.22', COMPOSEFILE_V2_0: '1.22',
COMPOSEFILE_V2_1: '1.24', COMPOSEFILE_V2_1: '1.24',
COMPOSEFILE_V3_0: '1.24', COMPOSEFILE_V3_0: '1.25',
} }
API_VERSION_TO_ENGINE_VERSION = { API_VERSION_TO_ENGINE_VERSION = {
API_VERSIONS[COMPOSEFILE_V1]: '1.9.0', API_VERSIONS[COMPOSEFILE_V1]: '1.9.0',
API_VERSIONS[COMPOSEFILE_V2_0]: '1.10.0', API_VERSIONS[COMPOSEFILE_V2_0]: '1.10.0',
API_VERSIONS[COMPOSEFILE_V2_1]: '1.12.0', API_VERSIONS[COMPOSEFILE_V2_1]: '1.12.0',
API_VERSIONS[COMPOSEFILE_V3_0]: '1.12.0', API_VERSIONS[COMPOSEFILE_V3_0]: '1.13.0',
} }

View File

@ -26,6 +26,7 @@ from tests.integration.testcases import get_links
from tests.integration.testcases import pull_busybox from tests.integration.testcases import pull_busybox
from tests.integration.testcases import v2_1_only from tests.integration.testcases import v2_1_only
from tests.integration.testcases import v2_only from tests.integration.testcases import v2_only
from tests.integration.testcases import v3_only
ProcessResult = namedtuple('ProcessResult', 'stdout stderr') ProcessResult = namedtuple('ProcessResult', 'stdout stderr')
@ -285,6 +286,7 @@ class CLITestCase(DockerClientTestCase):
'volumes': {}, 'volumes': {},
} }
@v3_only()
def test_config_v3(self): def test_config_v3(self):
self.base_dir = 'tests/fixtures/v3-full' self.base_dir = 'tests/fixtures/v3-full'
result = self.dispatch(['config']) result = self.dispatch(['config'])

View File

@ -45,11 +45,11 @@ def engine_max_version():
return V2_1 return V2_1
def v2_only(): def build_version_required_decorator(ignored_versions):
def decorator(f): def decorator(f):
@functools.wraps(f) @functools.wraps(f)
def wrapper(self, *args, **kwargs): def wrapper(self, *args, **kwargs):
if engine_max_version() == V1: if engine_max_version() in ignored_versions:
skip("Engine version is too low") skip("Engine version is too low")
return return
return f(self, *args, **kwargs) return f(self, *args, **kwargs)
@ -58,17 +58,16 @@ def v2_only():
return decorator return decorator
def v2_1_only(): def v2_only():
def decorator(f): return build_version_required_decorator((V1,))
@functools.wraps(f)
def wrapper(self, *args, **kwargs):
if engine_max_version() in (V1, V2_0):
skip('Engine version is too low')
return
return f(self, *args, **kwargs)
return wrapper
return decorator
def v2_1_only():
return build_version_required_decorator((V1, V2_0))
def v3_only():
return build_version_required_decorator((V1, V2_0, V2_1))
class DockerClientTestCase(unittest.TestCase): class DockerClientTestCase(unittest.TestCase):