Refactor API version switching logic

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
This commit is contained in:
Aanand Prasad 2016-01-12 18:12:53 +00:00
parent a027a0079c
commit 9e17cff0ef
3 changed files with 14 additions and 6 deletions

View file

@ -13,6 +13,7 @@ from requests.exceptions import SSLError
from . import errors
from . import verbose_proxy
from .. import config
from ..const import API_VERSIONS
from ..project import Project
from .docker_client import docker_client
from .utils import call_silently
@ -77,7 +78,10 @@ def get_project(base_dir, config_path=None, project_name=None, verbose=False):
config_details = config.find(base_dir, config_path)
project_name = get_project_name(config_details.working_dir, project_name)
config_data = config.load(config_details)
api_version = '1.21' if config_data.version < 2 else None
api_version = os.environ.get(
'COMPOSE_API_VERSION',
API_VERSIONS[config_data.version])
client = get_client(verbose=verbose, version=api_version)
return Project.from_config(project_name, config_data, client)