log_driver and log_opt moved to logging key.

Signed-off-by: Dimitar Bonev <dimitar.bonev@gmail.com>
This commit is contained in:
Dimitar Bonev 2015-12-17 23:23:00 +02:00
commit ed5f7bd394
9 changed files with 105 additions and 21 deletions

View file

@ -716,6 +716,43 @@ class CLITestCase(DockerClientTestCase):
result = self.dispatch(['start'], returncode=1)
assert 'No containers to start' in result.stderr
def test_up_logging(self):
self.base_dir = 'tests/fixtures/logging-composefile'
self.dispatch(['up', '-d'])
simple = self.project.get_service('simple').containers()[0]
log_config = simple.get('HostConfig.LogConfig')
self.assertTrue(log_config)
self.assertEqual(log_config.get('Type'), 'none')
another = self.project.get_service('another').containers()[0]
log_config = another.get('HostConfig.LogConfig')
self.assertTrue(log_config)
self.assertEqual(log_config.get('Type'), 'json-file')
self.assertEqual(log_config.get('Config')['max-size'], '10m')
def test_up_logging_with_multiple_files(self):
self.base_dir = 'tests/fixtures/logging-composefile'
config_paths = [
'docker-compose.yml',
'compose2.yml',
]
self._project = get_project(self.base_dir, config_paths)
self.dispatch(
[
'-f', config_paths[0],
'-f', config_paths[1],
'up', '-d',
],
None)
containers = self.project.containers()
self.assertEqual(len(containers), 2)
another = self.project.get_service('another').containers()[0]
log_config = another.get('HostConfig.LogConfig')
self.assertTrue(log_config)
self.assertEqual(log_config.get('Type'), 'none')
def test_pause_unpause(self):
self.dispatch(['up', '-d'], None)
service = self.project.get_service('simple')

View file

@ -0,0 +1,3 @@
another:
logging:
driver: "none"

View file

@ -0,0 +1,12 @@
simple:
image: busybox:latest
command: top
logging:
driver: "none"
another:
image: busybox:latest
command: top
logging:
driver: "json-file"
options:
max-size: "10m"

View file

@ -888,7 +888,7 @@ class ServiceTest(DockerClientTestCase):
self.assertNotEqual(one_off_container.name, 'my-web-container')
def test_log_drive_invalid(self):
service = self.create_service('web', log_driver='xxx')
service = self.create_service('web', logging={'driver': 'xxx'})
expected_error_msg = "logger: no log driver named 'xxx' is registered"
with self.assertRaisesRegexp(APIError, expected_error_msg):
@ -902,7 +902,7 @@ class ServiceTest(DockerClientTestCase):
self.assertFalse(log_config['Config'])
def test_log_drive_none(self):
service = self.create_service('web', log_driver='none')
service = self.create_service('web', logging={'driver': 'none'})
log_config = create_and_start_container(service).log_config
self.assertEqual('none', log_config['Type'])

View file

@ -156,7 +156,8 @@ class ServiceTest(unittest.TestCase):
self.mock_client.create_host_config.return_value = {}
log_opt = {'syslog-address': 'tcp://192.168.0.42:123'}
service = Service(name='foo', image='foo', hostname='name', client=self.mock_client, log_driver='syslog', log_opt=log_opt)
logging = {'driver': 'syslog', 'options': log_opt}
service = Service(name='foo', image='foo', hostname='name', client=self.mock_client, logging=logging)
service._get_container_create_options({'some': 'overrides'}, 1)
self.assertTrue(self.mock_client.create_host_config.called)