summaryrefslogtreecommitdiff
path: root/docker/utils
diff options
context:
space:
mode:
authorJoffrey F <joffrey@docker.com>2015-06-18 21:10:13 +0200
committerJoffrey F <joffrey@docker.com>2015-06-18 21:10:13 +0200
commite05d06bcf21d77024801a5a6c92b431634fd745b (patch)
tree4a05f18a331df69d2d4717e1f53776c516d94fc1 /docker/utils
parentb78397d233f27ca56d1041ed4db3a9ccae83d8a8 (diff)
parent7dd762539196eaade8da183d7588627c51d5a479 (diff)
downloaddocker-py-e05d06bcf21d77024801a5a6c92b431634fd745b.tar.gz
Merge branch 'allow-any-mode' of https://github.com/aanand/docker-py into aanand-allow-any-mode
Diffstat (limited to 'docker/utils')
-rw-r--r--docker/utils/utils.py15
1 files changed, 14 insertions, 1 deletions
diff --git a/docker/utils/utils.py b/docker/utils/utils.py
index 84acca3..77bd7f3 100644
--- a/docker/utils/utils.py
+++ b/docker/utils/utils.py
@@ -180,8 +180,21 @@ def convert_volume_binds(binds):
result = []
for k, v in binds.items():
if isinstance(v, dict):
+ if 'ro' in v and 'mode' in v:
+ raise ValueError(
+ 'Binding cannot contain both "ro" and "mode": {}'
+ .format(repr(v))
+ )
+
+ if 'ro' in v:
+ mode = 'ro' if v['ro'] else 'rw'
+ elif 'mode' in v:
+ mode = v['mode']
+ else:
+ mode = 'rw'
+
result.append('{0}:{1}:{2}'.format(
- k, v['bind'], 'ro' if v.get('ro', False) else 'rw'
+ k, v['bind'], mode
))
else:
result.append('{0}:{1}:rw'.format(k, v))