Files
sousa-gecko/taskcluster/docker/update-verify/Dockerfile
T
Heitor Neiva 5664b93865 Bug 2029828 - Make update-verify Docker image self-contained by embedding scripts r=releng-reviewers,taskgraph-reviewers,bhearsum
The update-verify job no longer checks out the repository. Instead, the
scripts from tools/update-verify and their Python dependencies (mozrelease,
redo) are baked into the Docker image via COPY directives. The shell scripts
now use python3 directly instead of ./mach python.

Overall changes:
- Run update verify tests in a specific workspace directory
- Use `UV_SRC` as the base for other relative imports and references
- COPY required scripts and drop the checkout on update verify docker image
- Run update verify with python directly instead of mach

Differential Revision: https://phabricator.services.mozilla.com/D288300
2026-04-10 16:20:17 +00:00

35 lines
1.2 KiB
Docker

FROM $DOCKER_IMAGE_PARENT
MAINTAINER release@mozilla.com
# We do want to install recommended packages.
RUN sed -i /APT::Install-Recommends/d /etc/apt/apt.conf.d/99taskcluster
# TODO: Remove this volume once we remove the sparse profile from update-verify-config
VOLUME /builds/worker/checkouts
VOLUME /builds/worker/workspace
RUN mkdir /build
ADD system-setup.sh /tmp/system-setup.sh
RUN bash /tmp/system-setup.sh
RUN chown -R worker:worker /builds/worker/bin && chmod 755 /builds/worker/bin/*
ENV PATH $PATH:/builds/worker/bin
# Add update-verify scripts and their Python dependencies directly into the
# image so the job does not need to checkout the repository.
# %include tools/update-verify
COPY topsrcdir/tools/update-verify /builds/worker/tools
# %include python/mozrelease
COPY topsrcdir/python/mozrelease /builds/worker/python/mozrelease
# %include third_party/python/redo
COPY topsrcdir/third_party/python/redo /builds/worker/python/redo
RUN chown -R worker:worker /builds/worker/tools /builds/worker/python
ENV PYTHONPATH=/builds/worker/python/mozrelease:/builds/worker/python/redo
ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8
# Set a default command useful for debugging
CMD ["/bin/bash", "--login"]