mirror of
https://github.com/docker/compose.git
synced 2025-07-25 22:54:54 +02:00
Merge pull request #1205 from josephpage/run-rm-restart
[cli] run --rm overrides restart: always
This commit is contained in:
commit
b317071cf3
@ -325,6 +325,9 @@ class TopLevelCommand(Command):
|
|||||||
if options['--entrypoint']:
|
if options['--entrypoint']:
|
||||||
container_options['entrypoint'] = options.get('--entrypoint')
|
container_options['entrypoint'] = options.get('--entrypoint')
|
||||||
|
|
||||||
|
if options['--rm']:
|
||||||
|
container_options['restart'] = None
|
||||||
|
|
||||||
if options['--user']:
|
if options['--user']:
|
||||||
container_options['user'] = options.get('--user')
|
container_options['user'] = options.get('--user')
|
||||||
|
|
||||||
|
@ -134,6 +134,55 @@ class CLITestCase(unittest.TestCase):
|
|||||||
call_kwargs['environment'],
|
call_kwargs['environment'],
|
||||||
{'FOO': 'ONE', 'BAR': 'NEW', 'OTHER': 'THREE'})
|
{'FOO': 'ONE', 'BAR': 'NEW', 'OTHER': 'THREE'})
|
||||||
|
|
||||||
|
def test_run_service_with_restart_always(self):
|
||||||
|
command = TopLevelCommand()
|
||||||
|
mock_client = mock.create_autospec(docker.Client)
|
||||||
|
mock_project = mock.Mock()
|
||||||
|
mock_project.get_service.return_value = Service(
|
||||||
|
'service',
|
||||||
|
client=mock_client,
|
||||||
|
restart='always',
|
||||||
|
image='someimage')
|
||||||
|
command.run(mock_project, {
|
||||||
|
'SERVICE': 'service',
|
||||||
|
'COMMAND': None,
|
||||||
|
'-e': [],
|
||||||
|
'--user': None,
|
||||||
|
'--no-deps': None,
|
||||||
|
'--allow-insecure-ssl': None,
|
||||||
|
'-d': True,
|
||||||
|
'-T': None,
|
||||||
|
'--entrypoint': None,
|
||||||
|
'--service-ports': None,
|
||||||
|
'--rm': None,
|
||||||
|
})
|
||||||
|
_, _, call_kwargs = mock_client.create_container.mock_calls[0]
|
||||||
|
self.assertEquals(call_kwargs['host_config']['RestartPolicy']['Name'], 'always')
|
||||||
|
|
||||||
|
command = TopLevelCommand()
|
||||||
|
mock_client = mock.create_autospec(docker.Client)
|
||||||
|
mock_project = mock.Mock()
|
||||||
|
mock_project.get_service.return_value = Service(
|
||||||
|
'service',
|
||||||
|
client=mock_client,
|
||||||
|
restart='always',
|
||||||
|
image='someimage')
|
||||||
|
command.run(mock_project, {
|
||||||
|
'SERVICE': 'service',
|
||||||
|
'COMMAND': None,
|
||||||
|
'-e': [],
|
||||||
|
'--user': None,
|
||||||
|
'--no-deps': None,
|
||||||
|
'--allow-insecure-ssl': None,
|
||||||
|
'-d': True,
|
||||||
|
'-T': None,
|
||||||
|
'--entrypoint': None,
|
||||||
|
'--service-ports': None,
|
||||||
|
'--rm': True,
|
||||||
|
})
|
||||||
|
_, _, call_kwargs = mock_client.create_container.mock_calls[0]
|
||||||
|
self.assertFalse('RestartPolicy' in call_kwargs['host_config'])
|
||||||
|
|
||||||
|
|
||||||
def get_config_filename_for_files(filenames):
|
def get_config_filename_for_files(filenames):
|
||||||
project_dir = tempfile.mkdtemp()
|
project_dir = tempfile.mkdtemp()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user