summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoffrey F <joffrey@docker.com>2019-01-09 10:52:50 -0800
committerJoffrey F <joffrey@docker.com>2019-01-09 11:30:58 -0800
commit65bebc085ab8bb36e5d6de44399b8480e7ae3e68 (patch)
tree4d29cdb1da83347a0f58184b84ede21fa8327c8f
parent6969e8becde593ee3dc1d3093d9299502ccc10ed (diff)
downloaddocker-py-65bebc085ab8bb36e5d6de44399b8480e7ae3e68.tar.gz
Style fixes and removed some unused code2199-proxy-support
Signed-off-by: Joffrey F <joffrey@docker.com>
-rw-r--r--docker/api/container.py6
-rw-r--r--docker/utils/proxy.py16
-rw-r--r--tests/integration/api_build_test.py11
-rw-r--r--tests/integration/api_exec_test.py27
4 files changed, 28 insertions, 32 deletions
diff --git a/docker/api/container.py b/docker/api/container.py
index 54f9950..43ae532 100644
--- a/docker/api/container.py
+++ b/docker/api/container.py
@@ -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,
diff --git a/docker/utils/proxy.py b/docker/utils/proxy.py
index c368116..49e98ed 100644
--- a/docker/utils/proxy.py
+++ b/docker/utils/proxy.py
@@ -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):
'''
diff --git a/tests/integration/api_build_test.py b/tests/integration/api_build_test.py
index 3c4e982..8bfc796 100644
--- a/tests/integration/api_build_test.py
+++ b/tests/integration/api_build_test.py
@@ -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([
diff --git a/tests/integration/api_exec_test.py b/tests/integration/api_exec_test.py
index 8947b41..e6079eb 100644
--- a/tests/integration/api_exec_test.py
+++ b/tests/integration/api_exec_test.py
@@ -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