[Kimchi-devel] [PATCH] [Wok 2/2] Do not use proxy when running tests
Aline Manera
alinefm at linux.vnet.ibm.com
Mon Feb 20 14:07:45 UTC 2017
Reviewed-by: Aline Manera <alinefm at linux.vnet.ibm.com>
On 02/09/2017 03:08 PM, Lucio Correia wrote:
> Currently administration permissions are required to
> run tests in order to change nginx configuration.
>
> With this patch, tests requests are handled directly by
> cherrypy, without being proxied by nginx. This allows
> tests to be run without administration permissions.
>
> Signed-off-by: Lucio Correia <luciojhc at linux.vnet.ibm.com>
> ---
> src/wok/server.py | 5 +++--
> tests/utils.py | 14 +++-----------
> 2 files changed, 6 insertions(+), 13 deletions(-)
>
> diff --git a/src/wok/server.py b/src/wok/server.py
> index d99b91f..901940c 100644
> --- a/src/wok/server.py
> +++ b/src/wok/server.py
> @@ -68,8 +68,9 @@ class Server(object):
> if hasattr(options, item):
> config.config.set(sec, item, str(getattr(options, item)))
>
> - # Check proxy configuration
> - check_proxy_config()
> + # Check proxy configuration when not in test mode
> + if not hasattr(options, 'test') or not options.test:
> + check_proxy_config()
>
> make_dirs = [
> os.path.abspath(config.get_log_download_path()),
> diff --git a/tests/utils.py b/tests/utils.py
> index 9c18637..ef8ae21 100644
> --- a/tests/utils.py
> +++ b/tests/utils.py
> @@ -24,9 +24,7 @@ import base64
> import cherrypy
> import grp
> import httplib
> -import inspect
> import os
> -import ssl
> import sys
> import threading
> import time
> @@ -40,7 +38,7 @@ from wok.exception import NotFoundError, OperationFailed
> from wok.utils import wok_log
>
> HOST = '0.0.0.0'
> -PROXY_PORT = 8001
> +PORT = 8010
>
> fake_user = {'root': 'letmein!'}
>
> @@ -91,7 +89,7 @@ if sys.version_info[:2] == (2, 6):
> def run_server(test_mode, environment='dev', server_root=''):
>
> args = type('_', (object,),
> - {'cherrypy_port': 8010, 'max_body_size': '4*1024',
> + {'cherrypy_port': PORT, 'max_body_size': '4*1024',
> 'test': test_mode, 'access_log': '/dev/null',
> 'error_log': '/dev/null', 'environment': environment,
> 'log_level': 'debug', 'session_timeout': 10,
> @@ -122,13 +120,7 @@ def _request(conn, path, data, method, headers):
>
>
> def request(path, data=None, method='GET', headers=None):
> - # verify if HTTPSConnection has context parameter
> - if "context" in inspect.getargspec(httplib.HTTPSConnection.__init__).args:
> - context = ssl._create_unverified_context()
> - conn = httplib.HTTPSConnection(HOST, PROXY_PORT, context=context)
> - else:
> - conn = httplib.HTTPSConnection(HOST, PROXY_PORT)
> -
> + conn = httplib.HTTPConnection(HOST, PORT)
> return _request(conn, path, data, method, headers)
>
>
More information about the Kimchi-devel
mailing list