Add global safe.directory for CI

This commit is contained in:
Mark Rousskov 2022-08-10 07:16:25 -04:00
parent 6c7f301145
commit d7b91c3120
4 changed files with 16 additions and 0 deletions

View File

@ -78,6 +78,8 @@ RUN curl -O https://ci-mirrors.rust-lang.org/rustc/vexpress-v2p-ca15-tc1.dtb
COPY scripts/sccache.sh /scripts/
RUN sh /scripts/sccache.sh
COPY static/gitconfig /etc/gitconfig
ENV RUST_CONFIGURE_ARGS --qemu-armhf-rootfs=/tmp/rootfs
ENV SCRIPT python3 ../x.py --stage 2 test --host='' --target arm-unknown-linux-gnueabihf

View File

@ -48,6 +48,8 @@ ENV TARGETS=wasm32-unknown-emscripten
# Use -O1 optimizations in the link step to reduce time spent optimizing.
ENV EMCC_CFLAGS=-O1
COPY static/gitconfig /etc/gitconfig
# Emscripten installation is user-specific
ENV NO_CHANGE_USER=1

View File

@ -0,0 +1,2 @@
[safe]
directory = *

View File

@ -11,6 +11,16 @@ if [ "$NO_CHANGE_USER" = "" ]; then
useradd --shell /bin/bash -u $LOCAL_USER_ID -o -c "" -m user
export HOME=/home/user
unset LOCAL_USER_ID
# Ensure that runners are able to execute git commands in the worktree,
# overriding the typical git protections. In our docker container we're running
# as root, while the user owning the checkout is not root.
# This is only necessary when we change the user, otherwise we should
# already be running with the right user.
#
# For NO_CHANGE_USER done in the small number of Dockerfiles affected.
echo -e '[safe]\n\tdirectory = *' > /home/user/gitconfig
exec su --preserve-environment -c "env PATH=$PATH \"$0\"" user
fi
fi