summaryrefslogtreecommitdiff
path: root/docker/utils/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'docker/utils/utils.py')
-rw-r--r--docker/utils/utils.py14
1 files changed, 10 insertions, 4 deletions
diff --git a/docker/utils/utils.py b/docker/utils/utils.py
index 724af46..84acca3 100644
--- a/docker/utils/utils.py
+++ b/docker/utils/utils.py
@@ -489,7 +489,7 @@ def create_container_config(
dns=None, volumes=None, volumes_from=None, network_disabled=False,
entrypoint=None, cpu_shares=None, working_dir=None, domainname=None,
memswap_limit=0, cpuset=None, host_config=None, mac_address=None,
- labels=None
+ labels=None, volume_driver=None
):
if isinstance(command, six.string_types):
command = shlex.split(str(command))
@@ -500,10 +500,15 @@ def create_container_config(
]
if labels is not None and compare_version('1.18', version) < 0:
- raise errors.DockerException(
+ raise errors.InvalidVersion(
'labels were only introduced in API version 1.18'
)
+ if volume_driver is not None and compare_version('1.19', version) < 0:
+ raise errors.InvalidVersion(
+ 'Volume drivers were only introduced in API version 1.19'
+ )
+
if isinstance(labels, list):
labels = dict((lbl, six.text_type('')) for lbl in labels)
@@ -557,9 +562,9 @@ def create_container_config(
message = ('{0!r} parameter has no effect on create_container().'
' It has been moved to start()')
if dns is not None:
- raise errors.DockerException(message.format('dns'))
+ raise errors.InvalidVersion(message.format('dns'))
if volumes_from is not None:
- raise errors.DockerException(message.format('volumes_from'))
+ raise errors.InvalidVersion(message.format('volumes_from'))
return {
'Hostname': hostname,
@@ -589,4 +594,5 @@ def create_container_config(
'HostConfig': host_config,
'MacAddress': mac_address,
'Labels': labels,
+ 'VolumeDriver': volume_driver,
}