summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoffrey F <f.joffrey@gmail.com>2016-12-02 15:18:41 -0800
committerGitHub <noreply@github.com>2016-12-02 15:18:41 -0800
commit32cd0161b67b3ade2e079093ccfb59e56f242437 (patch)
tree94ec1982fad16674c3148744aab913b4ea346b6e
parentfbc9f9b5e9160c4367b35590f34cdd103d5ad98d (diff)
parent1d59aeca4b79132410877912af61eec5b5039cd4 (diff)
downloaddocker-py-32cd0161b67b3ade2e079093ccfb59e56f242437.tar.gz
Merge pull request #1330 from docker/walkerlee-master
Add options to IPAMConfig
-rw-r--r--docker/types/networks.py9
-rw-r--r--tests/unit/api_network_test.py2
2 files changed, 9 insertions, 2 deletions
diff --git a/docker/types/networks.py b/docker/types/networks.py
index a539ac0..628ea65 100644
--- a/docker/types/networks.py
+++ b/docker/types/networks.py
@@ -50,6 +50,8 @@ class IPAMConfig(dict):
driver (str): The IPAM driver to use. Defaults to ``default``.
pool_configs (list): A list of pool configurations
(:py:class:`~docker.types.IPAMPool`). Defaults to empty list.
+ options (dict): Driver options as a key-value dictionary.
+ Defaults to `None`.
Example:
@@ -57,12 +59,17 @@ class IPAMConfig(dict):
>>> network = client.create_network('network1', ipam=ipam_config)
"""
- def __init__(self, driver='default', pool_configs=None):
+ def __init__(self, driver='default', pool_configs=None, options=None):
self.update({
'Driver': driver,
'Config': pool_configs or []
})
+ if options:
+ if not isinstance(options, dict):
+ raise TypeError('IPAMConfig options must be a dictionary')
+ self['Options'] = options
+
class IPAMPool(dict):
"""
diff --git a/tests/unit/api_network_test.py b/tests/unit/api_network_test.py
index 037edb5..f997a1b 100644
--- a/tests/unit/api_network_test.py
+++ b/tests/unit/api_network_test.py
@@ -100,7 +100,7 @@ class NetworkTest(BaseAPIClientTest):
"Gateway": "192.168.52.254",
"Subnet": "192.168.52.0/24",
"AuxiliaryAddresses": None,
- }]
+ }],
}
})