|
@@ -12,6 +12,7 @@ from .. import config
|
|
|
from ..const import API_VERSIONS
|
|
|
from ..project import Project
|
|
|
from .docker_client import docker_client
|
|
|
+from .docker_client import TLSArgs
|
|
|
from .utils import get_version_info
|
|
|
|
|
|
log = logging.getLogger(__name__)
|
|
@@ -23,6 +24,8 @@ def project_from_options(project_dir, options):
|
|
|
get_config_path_from_options(options),
|
|
|
project_name=options.get('--project-name'),
|
|
|
verbose=options.get('--verbose'),
|
|
|
+ host=options.get('--host'),
|
|
|
+ tls_args=TLSArgs.from_options(options),
|
|
|
)
|
|
|
|
|
|
|
|
@@ -37,8 +40,8 @@ def get_config_path_from_options(options):
|
|
|
return None
|
|
|
|
|
|
|
|
|
-def get_client(verbose=False, version=None):
|
|
|
- client = docker_client(version=version)
|
|
|
+def get_client(verbose=False, version=None, tls_args=None, host=None):
|
|
|
+ client = docker_client(version=version, tls_args=tls_args, host=host)
|
|
|
if verbose:
|
|
|
version_info = six.iteritems(client.version())
|
|
|
log.info(get_version_info('full'))
|
|
@@ -49,7 +52,8 @@ def get_client(verbose=False, version=None):
|
|
|
return client
|
|
|
|
|
|
|
|
|
-def get_project(project_dir, config_path=None, project_name=None, verbose=False):
|
|
|
+def get_project(project_dir, config_path=None, project_name=None, verbose=False,
|
|
|
+ host=None, tls_args=None):
|
|
|
config_details = config.find(project_dir, config_path)
|
|
|
project_name = get_project_name(config_details.working_dir, project_name)
|
|
|
config_data = config.load(config_details)
|
|
@@ -57,7 +61,10 @@ def get_project(project_dir, config_path=None, project_name=None, verbose=False)
|
|
|
api_version = os.environ.get(
|
|
|
'COMPOSE_API_VERSION',
|
|
|
API_VERSIONS[config_data.version])
|
|
|
- client = get_client(verbose=verbose, version=api_version)
|
|
|
+ client = get_client(
|
|
|
+ verbose=verbose, version=api_version, tls_args=tls_args,
|
|
|
+ host=host
|
|
|
+ )
|
|
|
|
|
|
return Project.from_config(project_name, config_data, client)
|
|
|
|