Merge "Properly build bullseye uwsgi-base docker images"

This commit is contained in:
Zuul 2022-01-13 19:03:32 +00:00 committed by Gerrit Code Review
commit a14cd3b6f5
2 changed files with 20 additions and 4 deletions

View File

@ -14,12 +14,27 @@
# limitations under the License.
ARG PYTHON_VERSION=3.7
FROM docker.io/opendevorg/python-builder:${PYTHON_VERSION} as builder
ARG DEBIAN_VERSION=buster
FROM docker.io/opendevorg/python-builder:${PYTHON_VERSION}-${DEBIAN_VERSION} as builder
ARG PYTHON_VERSION
COPY . /tmp/src
RUN assemble uWSGI
# We set pip verbosity because this seems to make the uWSGI wheel builds
# more reliable on bullseye. Is it crazy to rely on this? Absolutely. But
# uWSGI's build system is a ball of fun. There is an upstream pull request
# that appears to be fixing this issue:
# https://github.com/unbit/uwsgi/pull/2362
# jrosser also indicates this can be fixed by not overriding function names:
# https://paste.opendev.org/show/811669/
# Until a fix lands use this verbosity flag to work around it.
#
# Older python bundles older pip and doesn't understand non binary
# verbosity values. We explicitly invoke bash here to get access to [[
# in order to check the version against a pattern. test doesn't cut it.
RUN /bin/bash -c "if [[ $PYTHON_VERSION == 3.7* ]] ; then exit 0 ; else exit 1 ; fi" && PIP_VERBOSE=1 assemble uWSGI || PIP_VERBOSE=3 assemble uWSGI
FROM docker.io/opendevorg/python-base:${PYTHON_VERSION}
FROM docker.io/opendevorg/python-base:${PYTHON_VERSION}-${DEBIAN_VERSION}
COPY --from=builder /output/ /output
RUN /output/install-from-bindep && \

View File

@ -1,5 +1,6 @@
gcc [compile]
libc6-dev [compile]
libffi-dev [compile platform:dpkg]
libffi6 [platform:dpkg]
libffi7 [platform:dpkg !platform:ubuntu-bionic !platform:debian-buster]
libffi6 [platform:ubuntu-bionic platform:debian-buster]
libssl-dev [compile platform:dpkg]