Switch to uwsgi
Use the opendev uwsgi base image. A few additional changes are needed beyond the container switch: * WSGI protocol says headers must be a python list. Uwsgi is very literal about that and does not permit an iterable, so we coerce items() to a list. * Add the zuul_storage_proxy package to the setup.cfg files list so it gets installed. * Remove a debug print. Change-Id: I801d8b37699af8b937cc68d32f2a85c50eb91eb9
This commit is contained in:
parent
8f35ff5f0f
commit
98e92bdd46
@ -3,10 +3,11 @@ FROM docker.io/opendevorg/python-builder as builder
|
||||
COPY . /tmp/src
|
||||
RUN assemble
|
||||
|
||||
FROM docker.io/opendevorg/python-base as zuul-storage-proxy
|
||||
FROM docker.io/opendevorg/uwsgi-base as zuul-storage-proxy
|
||||
|
||||
COPY --from=builder /output/ /output
|
||||
RUN /output/install-from-bindep
|
||||
|
||||
EXPOSE 8000
|
||||
CMD ["/usr/local/bin/gunicorn", "-k", "eventlet", "-t", "3600", "--workers", "10", "swift_proxy:proxy"]
|
||||
ENV UWSGI_HTTP_SOCKET=:8000 UWSGI_PROCESSES=10 UWSGI_THREADS=1
|
||||
CMD uwsgi --mount /=zuul_storage_proxy:proxy
|
||||
|
@ -1,2 +1 @@
|
||||
gunicorn[eventlet]
|
||||
openstacksdk
|
||||
|
@ -6,3 +6,7 @@ requires-dist =
|
||||
|
||||
[pbr]
|
||||
warnerrors = True
|
||||
|
||||
|
||||
[files]
|
||||
packages = zuul_storage_proxy
|
||||
|
@ -102,7 +102,7 @@ def handle_get(start_response, clouds, container, path):
|
||||
|
||||
start_response(
|
||||
"{} {}".format(response.status_code, response.reason),
|
||||
response_headers.items())
|
||||
list(response_headers.items()))
|
||||
|
||||
# We want to forward the compressed data stream here so use the raw
|
||||
# response stream.
|
||||
@ -163,7 +163,6 @@ def swift_proxy(environ, start_response, clouds, container_prefix):
|
||||
path = components[1]
|
||||
container = container_prefix + container
|
||||
|
||||
print('%s request %s/%s' % (method, container, path))
|
||||
try:
|
||||
if method == 'GET':
|
||||
for chunk in handle_get(start_response, clouds, container, path):
|
||||
|
Loading…
Reference in New Issue
Block a user