# Lean, architecture-neutral image for running the bulk of the NSS CI tests on # taskcluster. Anything x86-specific (i386 multilib for 32-bit cross builds) # lives in the base-i386 image layered on top of this; that keeps this image # usable as-is on both x86_64 and aarch64 workers. FROM ubuntu:noble-20240605 VOLUME /builds/worker/checkouts VOLUME /builds/worker/.cache VOLUME /builds/worker/workspace # %include-run-task ENV DEBIAN_FRONTEND noninteractive RUN apt-get update \ && apt-get install -y --no-install-recommends \ build-essential \ python3 \ python3-pip \ ca-certificates \ clang \ curl \ git \ gyp \ libxml2-utils \ llvm-dev \ locales \ mercurial \ ninja-build \ pkg-config \ sqlite3 \ zlib1g-dev \ && rm -rf /var/lib/apt/lists/* \ && apt-get autoremove -y && apt-get clean -y ENV SHELL /bin/bash ENV USER worker ENV LOGNAME $USER ENV HOME /builds/worker ENV LANG en_US.UTF-8 ENV LC_ALL $LANG ENV HOST localhost ENV DOMSUF localdomain RUN locale-gen $LANG \ && dpkg-reconfigure locales # noble ships a default 'ubuntu' user at uid 1000; remove it so 'worker' gets # uid 1000, which run-task requires. RUN userdel ubuntu && \ useradd -d $HOME -s $SHELL -m $USER && \ mkdir -p /builds/worker/workspace && \ mkdir -p /builds/worker/artifacts && \ chown -R $USER /builds/worker WORKDIR $HOME # Set a default command for debugging. CMD ["/bin/bash", "--login"]