ci: make container build handle being built as 'root' correctly
Some checks failed
CI / build-docker (push) Failing after 1s
CI / build-docker-bootstrap (push) Successful in 42s
CI / release-test (push) Successful in 3m48s

This commit is contained in:
wispem-wantex 2026-01-10 14:05:54 -08:00
parent 8b674a0dea
commit 195c8f980e

View File

@ -12,10 +12,14 @@ RUN GOBIN=/usr/local/bin go install git.offline-twitter.com/offline-labs/gocheck
# Create a user in the container with the same UID as on the host machine, to avoid ownership conflicts.
# The user gets sudo of course.
#
# If the host user is `root` (uid = 0), we skip creating a new user, because it will fail otherwise.
ARG USERNAME
ARG UID
ARG GID
RUN addgroup -g ${GID} ${USERNAME}
RUN adduser -D -u ${UID} -G ${USERNAME} ${USERNAME}
RUN echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/${USERNAME}
RUN if [ "${UID}" -ne 0 ]; then \
addgroup -g "${GID}" "${USERNAME}" && \
adduser -D -u "${UID}" -G "${USERNAME}" "${USERNAME}" && \
echo "${USERNAME} ALL=(ALL) NOPASSWD:ALL" > /etc/sudoers.d/"${USERNAME}"; \
fi
USER ${USERNAME}