| VERSION 0.7 |
| |
| image: |
| ARG RELEASE |
| FROM ../cloud-archive-base+image --RELEASE=${RELEASE} |
| DO ../+APT_INSTALL --PACKAGES "\ |
| build-essential \ |
| curl \ |
| git \ |
| libssl-dev \ |
| libpcre3-dev \ |
| lsb-release \ |
| openssh-client \ |
| python3 \ |
| python3-dev \ |
| python3-pip \ |
| python3-venv" |
| RUN --mount type=cache,target=/root/.cache \ |
| python3 -m venv --upgrade --system-site-packages /var/lib/openstack |
| ENV UWSGI_PROFILE_OVERRIDE=ssl=true |
| RUN --mount type=cache,target=/root/.cache \ |
| mkdir -p /wheels && \ |
| /var/lib/openstack/bin/pip3 wheel --wheel-dir /wheels uwsgi |
| COPY ${RELEASE}/upper-constraints.txt /upper-constraints.txt |
| ARG PROJECT |
| ARG PROJECT_REF |
| ARG PROJECT_REPO=https://opendev.org/openstack/${PROJECT} |
| GIT CLONE --branch ${PROJECT_REF} ${PROJECT_REPO} /src |
| # TODO(mnaser): patches |
| ARG EXTRAS="" |
| ARG PIP_PACKAGES="" |
| RUN --mount=type=cache,target=/root/.cache \ |
| /var/lib/openstack/bin/pip3 install \ |
| --constraint /upper-constraints.txt \ |
| --find-links /wheels/ \ |
| pymysql \ |
| python-memcached \ |
| uwsgi \ |
| /src${EXTRAS} \ |
| ${PIP_PACKAGES} |
| SAVE ARTIFACT /var/lib/openstack venv |