about summary refs log tree commit diff
diff options
context:
space:
mode:
authoronur-ozkan <work@onurozkan.dev>2023-12-20 17:59:00 +0300
committeronur-ozkan <work@onurozkan.dev>2023-12-20 17:59:00 +0300
commitabae168e2f90b4801732a174d9c2447bf1bb092b (patch)
tree4a808094e6d1c5dbddcc4cf2757cb56191005952
parent3e4a15ea067e14da83ed5dedfb64cae7a30684e9 (diff)
downloadrust-abae168e2f90b4801732a174d9c2447bf1bb092b.tar.gz
rust-abae168e2f90b4801732a174d9c2447bf1bb092b.zip
if source is git, make /checkout dir safe for git
Signed-off-by: onur-ozkan <work@onurozkan.dev>
-rwxr-xr-xsrc/ci/docker/run.sh15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/ci/docker/run.sh b/src/ci/docker/run.sh
index 636692a0954..2573bf1309e 100755
--- a/src/ci/docker/run.sh
+++ b/src/ci/docker/run.sh
@@ -36,6 +36,11 @@ root_dir="`dirname $src_dir`"
 objdir=$root_dir/obj
 dist=$objdir/build/dist
 
+
+if [ -d "$root_dir/.git" ]; then
+    IS_GIT_SOURCE=1
+fi
+
 source "$ci_dir/shared.sh"
 
 CACHE_DOMAIN="${CACHE_DOMAIN:-ci-caches.rust-lang.org}"
@@ -249,9 +254,13 @@ if [ "$dev" = "1" ]
 then
   # Interactive + TTY
   args="$args -it"
-  command="/bin/bash"
+  if [ $IS_GIT_SOURCE -eq 1 ]; then
+    command=(/bin/bash -c 'git config --global --add safe.directory /checkout;bash')
+  else
+    command=(/bin/bash)
+  fi
 else
-  command="/checkout/src/ci/run.sh"
+  command=(/checkout/src/ci/run.sh)
 fi
 
 if [ "$CI" != "" ]; then
@@ -301,7 +310,7 @@ docker \
   --init \
   --rm \
   rust-ci \
-  $command
+  "${command[@]}"
 
 cat $objdir/${SUMMARY_FILE} >> "${GITHUB_STEP_SUMMARY}"