mirror of https://github.com/docker/docker-py.git
Style fixes and removed some unused code
Signed-off-by: Joffrey F <joffrey@docker.com>
This commit is contained in:
parent
6969e8becd
commit
65bebc085a
|
@ -410,9 +410,11 @@ class ContainerApiMixin(object):
|
|||
|
||||
if isinstance(environment, dict):
|
||||
environment = utils.utils.format_environment(environment)
|
||||
|
||||
if use_config_proxy:
|
||||
environment = \
|
||||
self._proxy_configs.inject_proxy_environment(environment)
|
||||
environment = self._proxy_configs.inject_proxy_environment(
|
||||
environment
|
||||
)
|
||||
|
||||
config = self.create_container_config(
|
||||
image, command, hostname, user, detach, stdin_open, tty,
|
||||
|
|
|
@ -9,34 +9,18 @@ class ProxyConfig(dict):
|
|||
def http(self):
|
||||
return self.get('http')
|
||||
|
||||
@http.setter
|
||||
def http(self, value):
|
||||
self['http'] = value
|
||||
|
||||
@property
|
||||
def https(self):
|
||||
return self.get('https')
|
||||
|
||||
@https.setter
|
||||
def https(self, value):
|
||||
self['https'] = value
|
||||
|
||||
@property
|
||||
def ftp(self):
|
||||
return self.get('ftp')
|
||||
|
||||
@ftp.setter
|
||||
def ftp(self, value):
|
||||
self['ftp'] = value
|
||||
|
||||
@property
|
||||
def no_proxy(self):
|
||||
return self.get('no_proxy')
|
||||
|
||||
@no_proxy.setter
|
||||
def no_proxy(self, value):
|
||||
self['no_proxy'] = value
|
||||
|
||||
@staticmethod
|
||||
def from_dict(config):
|
||||
'''
|
||||
|
|
|
@ -16,7 +16,8 @@ from ..helpers import random_name, requires_api_version, requires_experimental
|
|||
class BuildTest(BaseAPIIntegrationTest):
|
||||
def test_build_with_proxy(self):
|
||||
self.client._proxy_configs = ProxyConfig(
|
||||
ftp='a', http='b', https='c', no_proxy='d')
|
||||
ftp='a', http='b', https='c', no_proxy='d'
|
||||
)
|
||||
|
||||
script = io.BytesIO('\n'.join([
|
||||
'FROM busybox',
|
||||
|
@ -29,11 +30,13 @@ class BuildTest(BaseAPIIntegrationTest):
|
|||
'RUN env | grep "NO_PROXY=d"',
|
||||
'RUN env | grep "no_proxy=d"',
|
||||
]).encode('ascii'))
|
||||
|
||||
self.client.build(fileobj=script, decode=True)
|
||||
|
||||
def test_build_with_proxy_and_buildargs(self):
|
||||
self.client._proxy_configs = ProxyConfig(
|
||||
ftp='a', http='b', https='c', no_proxy='d')
|
||||
ftp='a', http='b', https='c', no_proxy='d'
|
||||
)
|
||||
|
||||
script = io.BytesIO('\n'.join([
|
||||
'FROM busybox',
|
||||
|
@ -46,10 +49,12 @@ class BuildTest(BaseAPIIntegrationTest):
|
|||
'RUN env | grep "NO_PROXY=d"',
|
||||
'RUN env | grep "no_proxy=d"',
|
||||
]).encode('ascii'))
|
||||
|
||||
self.client.build(
|
||||
fileobj=script,
|
||||
decode=True,
|
||||
buildargs={'FTP_PROXY': 'XXX', 'ftp_proxy': 'xxx'})
|
||||
buildargs={'FTP_PROXY': 'XXX', 'ftp_proxy': 'xxx'}
|
||||
)
|
||||
|
||||
def test_build_streaming(self):
|
||||
script = io.BytesIO('\n'.join([
|
||||
|
|
|
@ -9,37 +9,42 @@ from ..helpers import (
|
|||
|
||||
|
||||
class ExecTest(BaseAPIIntegrationTest):
|
||||
def test_execute_proxy_env(self):
|
||||
def test_execute_command_with_proxy_env(self):
|
||||
# Set a custom proxy config on the client
|
||||
self.client._proxy_configs = ProxyConfig(
|
||||
ftp='a', https='b', http='c', no_proxy='d')
|
||||
ftp='a', https='b', http='c', no_proxy='d'
|
||||
)
|
||||
|
||||
container = self.client.create_container(
|
||||
BUSYBOX, 'cat', detach=True, stdin_open=True)
|
||||
id = container['Id']
|
||||
self.client.start(id)
|
||||
self.tmp_containers.append(id)
|
||||
BUSYBOX, 'cat', detach=True, stdin_open=True,
|
||||
use_config_proxy=True,
|
||||
)
|
||||
self.client.start(container)
|
||||
self.tmp_containers.append(container)
|
||||
|
||||
cmd = 'sh -c "env | grep -i proxy"'
|
||||
|
||||
# First, just make sure the environment variables from the custom
|
||||
# config are set
|
||||
res = self.client.exec_create(id, cmd=cmd, use_config_proxy=True)
|
||||
|
||||
res = self.client.exec_create(container, cmd=cmd)
|
||||
output = self.client.exec_start(res).decode('utf-8').split('\n')
|
||||
expected = [
|
||||
'ftp_proxy=a', 'https_proxy=b', 'http_proxy=c', 'no_proxy=d',
|
||||
'FTP_PROXY=a', 'HTTPS_PROXY=b', 'HTTP_PROXY=c', 'NO_PROXY=d']
|
||||
'FTP_PROXY=a', 'HTTPS_PROXY=b', 'HTTP_PROXY=c', 'NO_PROXY=d'
|
||||
]
|
||||
for item in expected:
|
||||
assert item in output
|
||||
|
||||
# Overwrite some variables with a custom environment
|
||||
env = {'https_proxy': 'xxx', 'HTTPS_PROXY': 'XXX'}
|
||||
res = self.client.exec_create(
|
||||
id, cmd=cmd, environment=env, use_config_proxy=True)
|
||||
|
||||
res = self.client.exec_create(container, cmd=cmd, environment=env)
|
||||
output = self.client.exec_start(res).decode('utf-8').split('\n')
|
||||
expected = [
|
||||
'ftp_proxy=a', 'https_proxy=xxx', 'http_proxy=c', 'no_proxy=d',
|
||||
'FTP_PROXY=a', 'HTTPS_PROXY=XXX', 'HTTP_PROXY=c', 'NO_PROXY=d']
|
||||
'FTP_PROXY=a', 'HTTPS_PROXY=XXX', 'HTTP_PROXY=c', 'NO_PROXY=d'
|
||||
]
|
||||
for item in expected:
|
||||
assert item in output
|
||||
|
||||
|
|
Loading…
Reference in New Issue