summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoffrey F <joffrey@docker.com>2017-11-01 17:13:09 -0700
committerJoffrey F <joffrey@docker.com>2017-11-06 19:21:03 -0800
commit97fc3f9efe5bd456ffa0a5069ebe340874f2b418 (patch)
treebbf7659d4d1a91de8936fa7210799c6b6424d6b3
parent53c55fc364e952ae3d22dfbdd40aea4b5c130bee (diff)
downloaddocker-py-97fc3f9efe5bd456ffa0a5069ebe340874f2b418.tar.gz
Add support for secret driver in create_secret
Signed-off-by: Joffrey F <joffrey@docker.com>
-rw-r--r--docker/api/secret.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/docker/api/secret.py b/docker/api/secret.py
index 1760a39..fa4c2ab 100644
--- a/docker/api/secret.py
+++ b/docker/api/secret.py
@@ -2,12 +2,13 @@ import base64
import six
+from .. import errors
from .. import utils
class SecretApiMixin(object):
@utils.minimum_version('1.25')
- def create_secret(self, name, data, labels=None):
+ def create_secret(self, name, data, labels=None, driver=None):
"""
Create a secret
@@ -15,6 +16,8 @@ class SecretApiMixin(object):
name (string): Name of the secret
data (bytes): Secret data to be stored
labels (dict): A mapping of labels to assign to the secret
+ driver (DriverConfig): A custom driver configuration. If
+ unspecified, the default ``internal`` driver will be used
Returns (dict): ID of the newly created secret
"""
@@ -30,6 +33,14 @@ class SecretApiMixin(object):
'Labels': labels
}
+ if driver is not None:
+ if utils.version_lt(self._version, '1.31'):
+ raise errors.InvalidVersion(
+ 'Secret driver is only available for API version > 1.31'
+ )
+
+ body['Driver'] = driver
+
url = self._url('/secrets/create')
return self._result(
self._post_json(url, data=body), True