summaryrefslogtreecommitdiff
path: root/docker/models/services.py
diff options
context:
space:
mode:
Diffstat (limited to 'docker/models/services.py')
-rw-r--r--docker/models/services.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/docker/models/services.py b/docker/models/services.py
index 6fc5c2a..009e455 100644
--- a/docker/models/services.py
+++ b/docker/models/services.py
@@ -251,6 +251,7 @@ CONTAINER_SPEC_KWARGS = [
# kwargs to copy straight over to TaskTemplate
TASK_TEMPLATE_KWARGS = [
+ 'networks',
'resources',
'restart_policy',
]
@@ -261,7 +262,6 @@ CREATE_SERVICE_KWARGS = [
'labels',
'mode',
'update_config',
- 'networks',
'endpoint_spec',
]
@@ -295,6 +295,15 @@ def _get_create_service_kwargs(func_name, kwargs):
'Options': kwargs.pop('log_driver_options', {})
}
+ if func_name == 'update':
+ if 'force_update' in kwargs:
+ task_template_kwargs['force_update'] = kwargs.pop('force_update')
+
+ # fetch the current spec by default if updating the service
+ # through the model
+ fetch_current_spec = kwargs.pop('fetch_current_spec', True)
+ create_kwargs['fetch_current_spec'] = fetch_current_spec
+
# All kwargs should have been consumed by this point, so raise
# error if any are left
if kwargs: