kokoro: fix dubious ownership (#5082)

Kokoro clones repos with a different user used to run the build steps,
meaning if some git command must be run at build time, they will fail
because of this dubious ownership issue.
Running some git commands makes only sense with history, so changing
checkout depth so we can run them and get the true result.

This is a known Kororo issue.
Fixing this is required to generate the version file using git history.

Signed-off-by: Nathan Gauër <brioche@google.com>

Signed-off-by: Nathan Gauër <brioche@google.com>
This commit is contained in:
Nathan Gauër 2023-01-23 16:32:39 +01:00 committed by GitHub
parent fe087cd5f0
commit 7f9184a5b2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 31 additions and 4 deletions

View File

@ -17,6 +17,8 @@ jobs:
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: Download dependencies - name: Download dependencies
run: python3 utils/git-sync-deps run: python3 utils/git-sync-deps
- name: Mount Bazel cache - name: Mount Bazel cache

View File

@ -7,7 +7,9 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v2 - uses: actions/checkout@v3
with:
fetch-depth: '0'
- name: Build web - name: Build web
run: docker-compose -f source/wasm/docker-compose.yml --project-directory . up run: docker-compose -f source/wasm/docker-compose.yml --project-directory . up
- name: Run tests - name: Run tests

View File

@ -23,6 +23,11 @@ set -x
BUILD_ROOT=$PWD BUILD_ROOT=$PWD
SRC=$PWD/github/SPIRV-Tools SRC=$PWD/github/SPIRV-Tools
# This is required to run any git command in the docker since owner will
# have changed between the clone environment, and the docker container.
# Marking the root of the repo as safe for ownership changes.
git config --global --add safe.directory $SRC
# Get clang-format-5.0.0. # Get clang-format-5.0.0.
# Once kokoro upgrades the Ubuntu VMs, we can use 'apt-get install clang-format' # Once kokoro upgrades the Ubuntu VMs, we can use 'apt-get install clang-format'
curl -L http://releases.llvm.org/5.0.0/clang+llvm-5.0.0-linux-x86_64-ubuntu14.04.tar.xz -o clang-llvm.tar.xz curl -L http://releases.llvm.org/5.0.0/clang+llvm-5.0.0-linux-x86_64-ubuntu14.04.tar.xz -o clang-llvm.tar.xz

View File

@ -22,4 +22,3 @@ set -x
SCRIPT_DIR=`dirname "$BASH_SOURCE"` SCRIPT_DIR=`dirname "$BASH_SOURCE"`
source $SCRIPT_DIR/../scripts/macos/build.sh Debug source $SCRIPT_DIR/../scripts/macos/build.sh Debug

View File

@ -24,6 +24,11 @@ CC=clang
CXX=clang++ CXX=clang++
SRC=$PWD/github/SPIRV-Tools SRC=$PWD/github/SPIRV-Tools
# This is required to run any git command in the docker since owner will
# have changed between the clone environment, and the docker container.
# Marking the root of the repo as safe for ownership changes.
git config --global --add safe.directory $SRC
cd $SRC cd $SRC
git clone --depth=1 https://github.com/KhronosGroup/SPIRV-Headers external/spirv-headers git clone --depth=1 https://github.com/KhronosGroup/SPIRV-Headers external/spirv-headers
git clone https://github.com/google/googletest external/googletest git clone https://github.com/google/googletest external/googletest

View File

@ -22,4 +22,3 @@ set -x
SCRIPT_DIR=`dirname "$BASH_SOURCE"` SCRIPT_DIR=`dirname "$BASH_SOURCE"`
source $SCRIPT_DIR/../scripts/macos/build.sh RelWithDebInfo source $SCRIPT_DIR/../scripts/macos/build.sh RelWithDebInfo

View File

@ -20,6 +20,11 @@ set -e
# Display commands being run. # Display commands being run.
set -x set -x
# This is required to run any git command in the docker since owner will
# have changed between the clone environment, and the docker container.
# Marking the root of the repo as safe for ownership changes.
git config --global --add safe.directory $ROOT_DIR
. /bin/using.sh # Declare the bash `using` function for configuring toolchains. . /bin/using.sh # Declare the bash `using` function for configuring toolchains.
if [ $COMPILER = "clang" ]; then if [ $COMPILER = "clang" ]; then

View File

@ -24,6 +24,11 @@ BUILD_ROOT=$PWD
SRC=$PWD/github/SPIRV-Tools SRC=$PWD/github/SPIRV-Tools
BUILD_TYPE=$1 BUILD_TYPE=$1
# This is required to run any git command in the docker since owner will
# have changed between the clone environment, and the docker container.
# Marking the root of the repo as safe for ownership changes.
git config --global --add safe.directory $SRC
# Get NINJA. # Get NINJA.
wget -q https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip wget -q https://github.com/ninja-build/ninja/releases/download/v1.8.2/ninja-mac.zip
unzip -q ninja-mac.zip unzip -q ninja-mac.zip

View File

@ -16,6 +16,11 @@
set -e set -e
# This is required to run any git command in the docker since owner will
# have changed between the clone environment, and the docker container.
# Marking the root of the repo as safe for ownership changes.
git config --global --add safe.directory /app
NUM_CORES=$(nproc) NUM_CORES=$(nproc)
echo "Detected $NUM_CORES cores for building" echo "Detected $NUM_CORES cores for building"