Provide default user / group IDs for alma9 rpmbuild docker This is required for better compatibility with host platforms where the active uid (from id -u) might conflict with the base image system user ids. We chose 1000 as something outside the standard uid range, and conveniently the default uid on Ubuntu systems, ref: https://refspecs.linuxfoundation.org/LSB_3.0.0/LSB-Core-generic/LSB-Core-generic/uidrange.html I've also changed the Dockerfile to pick up the TARGETARCH value so that we get the right bazelisk executable.
diff --git a/contrib/alma9_rpmbuild_docker/docker/Dockerfile b/contrib/alma9_rpmbuild_docker/docker/Dockerfile index 5122b34..42412f3 100644 --- a/contrib/alma9_rpmbuild_docker/docker/Dockerfile +++ b/contrib/alma9_rpmbuild_docker/docker/Dockerfile
@@ -1,10 +1,11 @@ FROM almalinux:9.6 -ARG USER_ID -ARG GROUP_ID +ARG USER_ID=1000 +ARG GROUP_ID=1000 +ARG TARGETARCH ENV BAZELISK_VERSION=v1.26.0 -ENV BAZELISK_URL=https://github.com/bazelbuild/bazelisk/releases/download/${BAZELISK_VERSION}/bazelisk-linux-amd64 +ENV BAZELISK_URL=https://github.com/bazelbuild/bazelisk/releases/download/${BAZELISK_VERSION}/bazelisk-linux-${TARGETARCH} RUN dnf install -y \ ca-certificates \
diff --git a/contrib/alma9_rpmbuild_docker/run.sh b/contrib/alma9_rpmbuild_docker/run.sh index f15cf88..2ae255c 100755 --- a/contrib/alma9_rpmbuild_docker/run.sh +++ b/contrib/alma9_rpmbuild_docker/run.sh
@@ -21,7 +21,12 @@ dir=$(realpath "$(dirname "$0")") repo_root="$dir/../.." -docker build -t "$tag" --build-arg USER_ID="$(id -u)" --build-arg GROUP_ID="$(id -g)" "$dir/docker" +USER_ID=${USER_ID:-1000} +GROUP_ID=${GROUP_ID:-1000} +( + set -x + docker build -t "$tag" --build-arg USER_ID="$USER_ID" --build-arg GROUP_ID="$GROUP_ID" "$dir/docker" +) docker_args=( -v "$volume":/home/devuser/.cache @@ -31,4 +36,7 @@ -i -t ) -exec docker run "${docker_args[@]}" "$tag" "$@" +( + set -x + exec docker run "${docker_args[@]}" "$tag" "$@" +)