diff --git a/ci/docker/debian/prepare.sh b/ci/docker/debian/prepare.sh index c364fb980f..6c31f20aad 100644 --- a/ci/docker/debian/prepare.sh +++ b/ci/docker/debian/prepare.sh @@ -10,4 +10,6 @@ bash ./ci/scripts/install-rust.sh git config --global user.email "gstreamer@gstreamer.net" git config --global user.name "Gstbuild Runner" +bash ./ci/scripts/create-container-user.sh + bash ./ci/scripts/create-subprojects-cache.sh diff --git a/ci/docker/fedora/prepare.sh b/ci/docker/fedora/prepare.sh index 66fd145776..9007fdfd7a 100644 --- a/ci/docker/fedora/prepare.sh +++ b/ci/docker/fedora/prepare.sh @@ -10,4 +10,6 @@ git config --global user.name "Gstbuild Runner" bash ./ci/scripts/install-rust.sh +bash ./ci/scripts/create-container-user.sh + bash ./ci/scripts/create-subprojects-cache.sh diff --git a/ci/scripts/build-toolbox-image.sh b/ci/scripts/build-toolbox-image.sh index 8af6831fe0..f5f0ee33aa 100644 --- a/ci/scripts/build-toolbox-image.sh +++ b/ci/scripts/build-toolbox-image.sh @@ -102,16 +102,6 @@ build_container() { buildah run $build_cntr dnf clean all buildah run $build_cntr rm -rf /var/lib/cache/dnf - # random uid - uid="10043" - name="containeruser" - buildah run $build_cntr -- groupadd $name -g $uid - buildah run $build_cntr -- useradd -u $uid -g $uid -ms /bin/bash $name - - buildah run $build_cntr -- usermod -aG wheel $name - buildah run $build_cntr -- bash -c "echo $name ALL=\(ALL\) NOPASSWD:ALL > /etc/sudoers.d/$name" - buildah run $build_cntr -- chmod 0440 /etc/sudoers.d/$name - buildah config \ --env RUSTUP_HOME="/usr/local/rustup" \ --env CARGO_HOME="/usr/local/cargo/" \ @@ -126,7 +116,7 @@ build_container() { # Also add the OCI labels that toolbox expects, to advertize that image is compatible # Additionally add a non-root default user buildah config --env HOME- \ - --user $name \ + --user containeruser \ --label com.github.containers.toolbox=true \ --label org.opencontainers.image.base.name=$BASE_CI_IMAGE \ $build_cntr diff --git a/ci/scripts/create-container-user.sh b/ci/scripts/create-container-user.sh new file mode 100644 index 0000000000..508f6a3b60 --- /dev/null +++ b/ci/scripts/create-container-user.sh @@ -0,0 +1,12 @@ +#! /bin/bash + +set -eux + +uid="10043" +name="containeruser" +groupadd $name -g $uid +useradd -u $uid -g $uid -ms /bin/bash $name + +usermod -aG wheel $name || usermod -aG sudo $name +bash -c "echo $name ALL=\(ALL\) NOPASSWD:ALL > /etc/sudoers.d/$name" +chmod 0440 /etc/sudoers.d/$name