mirror of https://github.com/docker/docker-py.git
Adapt tests to new create_host_config usage
This commit is contained in:
parent
4bd3c48ea1
commit
595965ebc4
|
@ -48,7 +48,6 @@ DEFAULT_TIMEOUT_SECONDS = docker.client.constants.DEFAULT_TIMEOUT_SECONDS
|
||||||
|
|
||||||
warnings.simplefilter('error')
|
warnings.simplefilter('error')
|
||||||
warnings.filterwarnings('error')
|
warnings.filterwarnings('error')
|
||||||
create_host_config = docker.utils.create_host_config
|
|
||||||
|
|
||||||
|
|
||||||
def response(status_code=200, content='', headers=None, reason=None, elapsed=0,
|
def response(status_code=200, content='', headers=None, reason=None, elapsed=0,
|
||||||
|
@ -495,7 +494,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_cgroup_parent(self):
|
def test_create_container_with_cgroup_parent(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'ls', host_config=create_host_config(
|
'busybox', 'ls', host_config=self.client.create_host_config(
|
||||||
cgroup_parent='test'
|
cgroup_parent='test'
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -604,7 +603,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_mem_limit_as_int(self):
|
def test_create_container_with_mem_limit_as_int(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
mem_limit=128.0
|
mem_limit=128.0
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -618,7 +617,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_mem_limit_as_string(self):
|
def test_create_container_with_mem_limit_as_string(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
mem_limit='128'
|
mem_limit='128'
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -632,7 +631,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_mem_limit_as_string_with_k_unit(self):
|
def test_create_container_with_mem_limit_as_string_with_k_unit(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
mem_limit='128k'
|
mem_limit='128k'
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -646,7 +645,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_mem_limit_as_string_with_m_unit(self):
|
def test_create_container_with_mem_limit_as_string_with_m_unit(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
mem_limit='128m'
|
mem_limit='128m'
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -661,7 +660,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_mem_limit_as_string_with_g_unit(self):
|
def test_create_container_with_mem_limit_as_string_with_g_unit(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
mem_limit='128g'
|
mem_limit='128g'
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -676,11 +675,13 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
|
|
||||||
def test_create_container_with_mem_limit_as_string_with_wrong_value(self):
|
def test_create_container_with_mem_limit_as_string_with_wrong_value(self):
|
||||||
self.assertRaises(
|
self.assertRaises(
|
||||||
docker.errors.DockerException, create_host_config, mem_limit='128p'
|
docker.errors.DockerException,
|
||||||
|
self.client.create_host_config, mem_limit='128p'
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertRaises(
|
self.assertRaises(
|
||||||
docker.errors.DockerException, create_host_config, mem_limit='1f28'
|
docker.errors.DockerException,
|
||||||
|
self.client.create_host_config, mem_limit='1f28'
|
||||||
)
|
)
|
||||||
|
|
||||||
def test_start_container(self):
|
def test_start_container(self):
|
||||||
|
@ -726,7 +727,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_lxc_conf(self):
|
def test_create_container_with_lxc_conf(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
lxc_conf={'lxc.conf.k': 'lxc.conf.value'}
|
lxc_conf={'lxc.conf.k': 'lxc.conf.value'}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -738,7 +739,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
url_prefix + 'containers/create'
|
url_prefix + 'containers/create'
|
||||||
)
|
)
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['LxcConf'] = [
|
expected_payload['HostConfig']['LxcConf'] = [
|
||||||
{"Value": "lxc.conf.value", "Key": "lxc.conf.k"}
|
{"Value": "lxc.conf.value", "Key": "lxc.conf.k"}
|
||||||
]
|
]
|
||||||
|
@ -756,7 +757,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_lxc_conf_compat(self):
|
def test_create_container_with_lxc_conf_compat(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
lxc_conf=[{'Key': 'lxc.conf.k', 'Value': 'lxc.conf.value'}]
|
lxc_conf=[{'Key': 'lxc.conf.k', 'Value': 'lxc.conf.value'}]
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -766,7 +767,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['LxcConf'] = [
|
expected_payload['HostConfig']['LxcConf'] = [
|
||||||
{"Value": "lxc.conf.value", "Key": "lxc.conf.k"}
|
{"Value": "lxc.conf.value", "Key": "lxc.conf.k"}
|
||||||
]
|
]
|
||||||
|
@ -784,7 +785,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
mount_dest = '/mnt'
|
mount_dest = '/mnt'
|
||||||
mount_origin = '/tmp'
|
mount_origin = '/tmp'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
binds={mount_origin: {
|
binds={mount_origin: {
|
||||||
"bind": mount_dest,
|
"bind": mount_dest,
|
||||||
"ro": True
|
"ro": True
|
||||||
|
@ -798,7 +799,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
self.assertEqual(args[0][0], url_prefix +
|
self.assertEqual(args[0][0], url_prefix +
|
||||||
'containers/create')
|
'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:ro"]
|
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:ro"]
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
self.assertEqual(args[1]['headers'],
|
self.assertEqual(args[1]['headers'],
|
||||||
|
@ -813,7 +814,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
mount_dest = '/mnt'
|
mount_dest = '/mnt'
|
||||||
mount_origin = '/tmp'
|
mount_origin = '/tmp'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
binds={mount_origin: {
|
binds={mount_origin: {
|
||||||
"bind": mount_dest,
|
"bind": mount_dest,
|
||||||
"ro": False
|
"ro": False
|
||||||
|
@ -827,7 +828,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
self.assertEqual(args[0][0], url_prefix +
|
self.assertEqual(args[0][0], url_prefix +
|
||||||
'containers/create')
|
'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:rw"]
|
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:rw"]
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
self.assertEqual(args[1]['headers'],
|
self.assertEqual(args[1]['headers'],
|
||||||
|
@ -842,7 +843,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
mount_dest = '/mnt'
|
mount_dest = '/mnt'
|
||||||
mount_origin = '/tmp'
|
mount_origin = '/tmp'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
binds={mount_origin: {
|
binds={mount_origin: {
|
||||||
"bind": mount_dest,
|
"bind": mount_dest,
|
||||||
"mode": "z",
|
"mode": "z",
|
||||||
|
@ -856,7 +857,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
self.assertEqual(args[0][0], url_prefix +
|
self.assertEqual(args[0][0], url_prefix +
|
||||||
'containers/create')
|
'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:z"]
|
expected_payload['HostConfig']['Binds'] = ["/tmp:/mnt:z"]
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
self.assertEqual(args[1]['headers'],
|
self.assertEqual(args[1]['headers'],
|
||||||
|
@ -871,7 +872,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
mount_dest = '/mnt'
|
mount_dest = '/mnt'
|
||||||
mount_origin = '/tmp'
|
mount_origin = '/tmp'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
binds={mount_origin: {
|
binds={mount_origin: {
|
||||||
"bind": mount_dest,
|
"bind": mount_dest,
|
||||||
"mode": "z",
|
"mode": "z",
|
||||||
|
@ -887,7 +888,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_binds_list(self):
|
def test_create_container_with_binds_list(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
binds=[
|
binds=[
|
||||||
"/tmp:/mnt/1:ro",
|
"/tmp:/mnt/1:ro",
|
||||||
"/tmp:/mnt/2",
|
"/tmp:/mnt/2",
|
||||||
|
@ -901,7 +902,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
self.assertEqual(args[0][0], url_prefix +
|
self.assertEqual(args[0][0], url_prefix +
|
||||||
'containers/create')
|
'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Binds'] = [
|
expected_payload['HostConfig']['Binds'] = [
|
||||||
"/tmp:/mnt/1:ro",
|
"/tmp:/mnt/1:ro",
|
||||||
"/tmp:/mnt/2",
|
"/tmp:/mnt/2",
|
||||||
|
@ -918,7 +919,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
self.maxDiff = None
|
self.maxDiff = None
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
port_bindings={
|
port_bindings={
|
||||||
1111: None,
|
1111: None,
|
||||||
2222: 2222,
|
2222: 2222,
|
||||||
|
@ -987,7 +988,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
link_path = 'path'
|
link_path = 'path'
|
||||||
alias = 'alias'
|
alias = 'alias'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
links={link_path: alias}
|
links={link_path: alias}
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -999,7 +1000,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
args[0][0], url_prefix + 'containers/create'
|
args[0][0], url_prefix + 'containers/create'
|
||||||
)
|
)
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Links'] = ['path:alias']
|
expected_payload['HostConfig']['Links'] = ['path:alias']
|
||||||
|
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
|
@ -1012,7 +1013,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
link_path = 'path'
|
link_path = 'path'
|
||||||
alias = 'alias'
|
alias = 'alias'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
links={
|
links={
|
||||||
link_path + '1': alias + '1',
|
link_path + '1': alias + '1',
|
||||||
link_path + '2': alias + '2'
|
link_path + '2': alias + '2'
|
||||||
|
@ -1025,7 +1026,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Links'] = [
|
expected_payload['HostConfig']['Links'] = [
|
||||||
'path1:alias1', 'path2:alias2'
|
'path1:alias1', 'path2:alias2'
|
||||||
]
|
]
|
||||||
|
@ -1039,7 +1040,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
link_path = 'path'
|
link_path = 'path'
|
||||||
alias = 'alias'
|
alias = 'alias'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
links=[(link_path, alias)]
|
links=[(link_path, alias)]
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
@ -1049,7 +1050,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Links'] = ['path:alias']
|
expected_payload['HostConfig']['Links'] = ['path:alias']
|
||||||
|
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
|
@ -1061,13 +1062,13 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true',
|
'busybox', 'true',
|
||||||
host_config=create_host_config(privileged=True)
|
host_config=self.client.create_host_config(privileged=True)
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.fail('Command should not raise exception: {0}'.format(e))
|
self.fail('Command should not raise exception: {0}'.format(e))
|
||||||
|
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Privileged'] = True
|
expected_payload['HostConfig']['Privileged'] = True
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
|
@ -1306,7 +1307,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_restart_policy(self):
|
def test_create_container_with_restart_policy(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
restart_policy={
|
restart_policy={
|
||||||
"Name": "always",
|
"Name": "always",
|
||||||
"MaximumRetryCount": 0
|
"MaximumRetryCount": 0
|
||||||
|
@ -1319,7 +1320,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
|
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['RestartPolicy'] = {
|
expected_payload['HostConfig']['RestartPolicy'] = {
|
||||||
"MaximumRetryCount": 0, "Name": "always"
|
"MaximumRetryCount": 0, "Name": "always"
|
||||||
}
|
}
|
||||||
|
@ -1336,14 +1337,14 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true',
|
'busybox', 'true',
|
||||||
host_config=create_host_config(cap_add=['MKNOD'])
|
host_config=self.client.create_host_config(cap_add=['MKNOD'])
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.fail('Command should not raise exception: {0}'.format(e))
|
self.fail('Command should not raise exception: {0}'.format(e))
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['CapAdd'] = ['MKNOD']
|
expected_payload['HostConfig']['CapAdd'] = ['MKNOD']
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
|
@ -1357,14 +1358,14 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true',
|
'busybox', 'true',
|
||||||
host_config=create_host_config(cap_drop=['MKNOD'])
|
host_config=self.client.create_host_config(cap_drop=['MKNOD'])
|
||||||
)
|
)
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
self.fail('Command should not raise exception: {0}'.format(e))
|
self.fail('Command should not raise exception: {0}'.format(e))
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['CapDrop'] = ['MKNOD']
|
expected_payload['HostConfig']['CapDrop'] = ['MKNOD']
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
self.assertEqual(
|
self.assertEqual(
|
||||||
|
@ -1377,7 +1378,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
def test_create_container_with_devices(self):
|
def test_create_container_with_devices(self):
|
||||||
try:
|
try:
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true', host_config=create_host_config(
|
'busybox', 'true', host_config=self.client.create_host_config(
|
||||||
devices=['/dev/sda:/dev/xvda:rwm',
|
devices=['/dev/sda:/dev/xvda:rwm',
|
||||||
'/dev/sdb:/dev/xvdb',
|
'/dev/sdb:/dev/xvdb',
|
||||||
'/dev/sdc']
|
'/dev/sdc']
|
||||||
|
@ -1388,7 +1389,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
args = fake_request.call_args
|
args = fake_request.call_args
|
||||||
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
self.assertEqual(args[0][0], url_prefix + 'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Devices'] = [
|
expected_payload['HostConfig']['Devices'] = [
|
||||||
{'CgroupPermissions': 'rwm',
|
{'CgroupPermissions': 'rwm',
|
||||||
'PathInContainer': '/dev/xvda',
|
'PathInContainer': '/dev/xvda',
|
||||||
|
@ -1462,7 +1463,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
volume_name = 'name'
|
volume_name = 'name'
|
||||||
self.client.create_container(
|
self.client.create_container(
|
||||||
'busybox', 'true',
|
'busybox', 'true',
|
||||||
host_config=create_host_config(
|
host_config=self.client.create_host_config(
|
||||||
binds={volume_name: {
|
binds={volume_name: {
|
||||||
"bind": mount_dest,
|
"bind": mount_dest,
|
||||||
"ro": False
|
"ro": False
|
||||||
|
@ -1477,7 +1478,7 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
'containers/create')
|
'containers/create')
|
||||||
expected_payload = self.base_create_payload()
|
expected_payload = self.base_create_payload()
|
||||||
expected_payload['VolumeDriver'] = 'foodriver'
|
expected_payload['VolumeDriver'] = 'foodriver'
|
||||||
expected_payload['HostConfig'] = create_host_config()
|
expected_payload['HostConfig'] = self.client.create_host_config()
|
||||||
expected_payload['HostConfig']['Binds'] = ["name:/mnt:rw"]
|
expected_payload['HostConfig']['Binds'] = ["name:/mnt:rw"]
|
||||||
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
self.assertEqual(json.loads(args[1]['data']), expected_payload)
|
||||||
self.assertEqual(args[1]['headers'],
|
self.assertEqual(args[1]['headers'],
|
||||||
|
@ -2536,12 +2537,12 @@ class DockerClientTest(Cleanup, base.BaseTestCase):
|
||||||
|
|
||||||
def test_create_host_config_secopt(self):
|
def test_create_host_config_secopt(self):
|
||||||
security_opt = ['apparmor:test_profile']
|
security_opt = ['apparmor:test_profile']
|
||||||
result = create_host_config(security_opt=security_opt)
|
result = self.client.create_host_config(security_opt=security_opt)
|
||||||
self.assertIn('SecurityOpt', result)
|
self.assertIn('SecurityOpt', result)
|
||||||
self.assertEqual(result['SecurityOpt'], security_opt)
|
self.assertEqual(result['SecurityOpt'], security_opt)
|
||||||
|
|
||||||
self.assertRaises(
|
self.assertRaises(
|
||||||
docker.errors.DockerException, create_host_config,
|
docker.errors.DockerException, self.client.create_host_config,
|
||||||
security_opt='wrong'
|
security_opt='wrong'
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@ import unittest
|
||||||
import tempfile
|
import tempfile
|
||||||
|
|
||||||
from docker.client import Client
|
from docker.client import Client
|
||||||
|
from docker.constants import DEFAULT_DOCKER_API_VERSION
|
||||||
from docker.errors import DockerException
|
from docker.errors import DockerException
|
||||||
from docker.utils import (
|
from docker.utils import (
|
||||||
parse_repository_tag, parse_host, convert_filters, kwargs_from_env,
|
parse_repository_tag, parse_host, convert_filters, kwargs_from_env,
|
||||||
|
@ -144,12 +145,16 @@ class UtilsTest(base.BaseTestCase):
|
||||||
self.assertEqual(convert_filters(filters), expected)
|
self.assertEqual(convert_filters(filters), expected)
|
||||||
|
|
||||||
def test_create_empty_host_config(self):
|
def test_create_empty_host_config(self):
|
||||||
empty_config = create_host_config(network_mode='')
|
empty_config = create_host_config(
|
||||||
|
network_mode='', version=DEFAULT_DOCKER_API_VERSION
|
||||||
|
)
|
||||||
self.assertEqual(empty_config, {})
|
self.assertEqual(empty_config, {})
|
||||||
|
|
||||||
def test_create_host_config_dict_ulimit(self):
|
def test_create_host_config_dict_ulimit(self):
|
||||||
ulimit_dct = {'name': 'nofile', 'soft': 8096}
|
ulimit_dct = {'name': 'nofile', 'soft': 8096}
|
||||||
config = create_host_config(ulimits=[ulimit_dct])
|
config = create_host_config(
|
||||||
|
ulimits=[ulimit_dct], version=DEFAULT_DOCKER_API_VERSION
|
||||||
|
)
|
||||||
self.assertIn('Ulimits', config)
|
self.assertIn('Ulimits', config)
|
||||||
self.assertEqual(len(config['Ulimits']), 1)
|
self.assertEqual(len(config['Ulimits']), 1)
|
||||||
ulimit_obj = config['Ulimits'][0]
|
ulimit_obj = config['Ulimits'][0]
|
||||||
|
@ -160,7 +165,9 @@ class UtilsTest(base.BaseTestCase):
|
||||||
|
|
||||||
def test_create_host_config_dict_ulimit_capitals(self):
|
def test_create_host_config_dict_ulimit_capitals(self):
|
||||||
ulimit_dct = {'Name': 'nofile', 'Soft': 8096, 'Hard': 8096 * 4}
|
ulimit_dct = {'Name': 'nofile', 'Soft': 8096, 'Hard': 8096 * 4}
|
||||||
config = create_host_config(ulimits=[ulimit_dct])
|
config = create_host_config(
|
||||||
|
ulimits=[ulimit_dct], version=DEFAULT_DOCKER_API_VERSION
|
||||||
|
)
|
||||||
self.assertIn('Ulimits', config)
|
self.assertIn('Ulimits', config)
|
||||||
self.assertEqual(len(config['Ulimits']), 1)
|
self.assertEqual(len(config['Ulimits']), 1)
|
||||||
ulimit_obj = config['Ulimits'][0]
|
ulimit_obj = config['Ulimits'][0]
|
||||||
|
@ -172,7 +179,9 @@ class UtilsTest(base.BaseTestCase):
|
||||||
|
|
||||||
def test_create_host_config_obj_ulimit(self):
|
def test_create_host_config_obj_ulimit(self):
|
||||||
ulimit_dct = Ulimit(name='nofile', soft=8096)
|
ulimit_dct = Ulimit(name='nofile', soft=8096)
|
||||||
config = create_host_config(ulimits=[ulimit_dct])
|
config = create_host_config(
|
||||||
|
ulimits=[ulimit_dct], version=DEFAULT_DOCKER_API_VERSION
|
||||||
|
)
|
||||||
self.assertIn('Ulimits', config)
|
self.assertIn('Ulimits', config)
|
||||||
self.assertEqual(len(config['Ulimits']), 1)
|
self.assertEqual(len(config['Ulimits']), 1)
|
||||||
ulimit_obj = config['Ulimits'][0]
|
ulimit_obj = config['Ulimits'][0]
|
||||||
|
@ -186,14 +195,18 @@ class UtilsTest(base.BaseTestCase):
|
||||||
|
|
||||||
def test_create_host_config_dict_logconfig(self):
|
def test_create_host_config_dict_logconfig(self):
|
||||||
dct = {'type': LogConfig.types.SYSLOG, 'config': {'key1': 'val1'}}
|
dct = {'type': LogConfig.types.SYSLOG, 'config': {'key1': 'val1'}}
|
||||||
config = create_host_config(log_config=dct)
|
config = create_host_config(
|
||||||
|
log_config=dct, version=DEFAULT_DOCKER_API_VERSION
|
||||||
|
)
|
||||||
self.assertIn('LogConfig', config)
|
self.assertIn('LogConfig', config)
|
||||||
self.assertTrue(isinstance(config['LogConfig'], LogConfig))
|
self.assertTrue(isinstance(config['LogConfig'], LogConfig))
|
||||||
self.assertEqual(dct['type'], config['LogConfig'].type)
|
self.assertEqual(dct['type'], config['LogConfig'].type)
|
||||||
|
|
||||||
def test_create_host_config_obj_logconfig(self):
|
def test_create_host_config_obj_logconfig(self):
|
||||||
obj = LogConfig(type=LogConfig.types.SYSLOG, config={'key1': 'val1'})
|
obj = LogConfig(type=LogConfig.types.SYSLOG, config={'key1': 'val1'})
|
||||||
config = create_host_config(log_config=obj)
|
config = create_host_config(
|
||||||
|
log_config=obj, version=DEFAULT_DOCKER_API_VERSION
|
||||||
|
)
|
||||||
self.assertIn('LogConfig', config)
|
self.assertIn('LogConfig', config)
|
||||||
self.assertTrue(isinstance(config['LogConfig'], LogConfig))
|
self.assertTrue(isinstance(config['LogConfig'], LogConfig))
|
||||||
self.assertEqual(obj, config['LogConfig'])
|
self.assertEqual(obj, config['LogConfig'])
|
||||||
|
|
Loading…
Reference in New Issue