mirror of https://github.com/docker/docker-py.git
api: add rollback_config to service create (#2917)
`rollback_config` was not in the list of `CREATE_SERVICE_KWARGS` which prevented it from being an argument when creating services. It has now been added and the problem fixed, allowing services to have a rollback_config during creation and updating. Fixes #2832. Signed-off-by: Fraser Patten <pattenf00@gmail.com> Signed-off-by: Milas Bowman <milas.bowman@docker.com> Co-authored-by: Milas Bowman <milas.bowman@docker.com>
This commit is contained in:
parent
0031ac2186
commit
26753c81de
|
@ -320,6 +320,7 @@ CREATE_SERVICE_KWARGS = [
|
|||
'labels',
|
||||
'mode',
|
||||
'update_config',
|
||||
'rollback_config',
|
||||
'endpoint_spec',
|
||||
]
|
||||
|
||||
|
|
|
@ -30,13 +30,18 @@ class ServiceTest(unittest.TestCase):
|
|||
# ContainerSpec arguments
|
||||
image="alpine",
|
||||
command="sleep 300",
|
||||
container_labels={'container': 'label'}
|
||||
container_labels={'container': 'label'},
|
||||
rollback_config={'order': 'start-first'}
|
||||
)
|
||||
assert service.name == name
|
||||
assert service.attrs['Spec']['Labels']['foo'] == 'bar'
|
||||
container_spec = service.attrs['Spec']['TaskTemplate']['ContainerSpec']
|
||||
assert "alpine" in container_spec['Image']
|
||||
assert container_spec['Labels'] == {'container': 'label'}
|
||||
spec_rollback = service.attrs['Spec'].get('RollbackConfig', None)
|
||||
assert spec_rollback is not None
|
||||
assert ('Order' in spec_rollback and
|
||||
spec_rollback['Order'] == 'start-first')
|
||||
|
||||
def test_create_with_network(self):
|
||||
client = docker.from_env(version=TEST_API_VERSION)
|
||||
|
|
|
@ -11,6 +11,7 @@ class CreateServiceKwargsTest(unittest.TestCase):
|
|||
'labels': {'key': 'value'},
|
||||
'hostname': 'test_host',
|
||||
'mode': 'global',
|
||||
'rollback_config': {'rollback': 'config'},
|
||||
'update_config': {'update': 'config'},
|
||||
'networks': ['somenet'],
|
||||
'endpoint_spec': {'blah': 'blah'},
|
||||
|
@ -37,6 +38,7 @@ class CreateServiceKwargsTest(unittest.TestCase):
|
|||
'name': 'somename',
|
||||
'labels': {'key': 'value'},
|
||||
'mode': 'global',
|
||||
'rollback_config': {'rollback': 'config'},
|
||||
'update_config': {'update': 'config'},
|
||||
'endpoint_spec': {'blah': 'blah'},
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue