diff --git a/tools/internal_ci/helper_scripts/delete_nonartifacts.sh b/tools/internal_ci/helper_scripts/delete_nonartifacts.sh new file mode 100755 index 00000000000..6c49b7377eb --- /dev/null +++ b/tools/internal_ci/helper_scripts/delete_nonartifacts.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash +# Copyright 2018 The gRPC Authors +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +set -ex + +# change to grpc repo root +cd "$(dirname "$0")/../../.." + +# After kokoro build finishes, the workspace gets rsync'ed to another machine, +# from where the artifacts and reports are processed. +# Especially on Windows, the rsync can take long time, so we cleanup the workspace +# after finishing each build. We only leave files we want to keep: +# - reports and artifacts +# - directory containing the kokoro scripts to prevent deleting a script while being executed. +time find . -type f -not -iname "*sponge_log.xml" -not -path "./reports/*" -not -path "./artifacts/*" -not -path "./tools/internal_ci/*" -exec rm -f {} + \ No newline at end of file diff --git a/tools/internal_ci/windows/grpc_build_artifacts.bat b/tools/internal_ci/windows/grpc_build_artifacts.bat index c6e523697ca..4d528e01285 100644 --- a/tools/internal_ci/windows/grpc_build_artifacts.bat +++ b/tools/internal_ci/windows/grpc_build_artifacts.bat @@ -24,8 +24,9 @@ cd /d %~dp0\..\..\.. call tools/internal_ci/helper_scripts/prepare_build_windows.bat -python tools/run_tests/task_runner.py -f artifact windows -j 4 || goto :error -goto :EOF +python tools/run_tests/task_runner.py -f artifact windows -j 4 +set RUNTESTS_EXITCODE=%errorlevel% -:error -exit /b %errorlevel% +bash tools/internal_ci/helper_scripts/delete_nonartifacts.sh + +exit /b %RUNTESTS_EXITCODE% diff --git a/tools/internal_ci/windows/grpc_build_packages.bat b/tools/internal_ci/windows/grpc_build_packages.bat index 23ba365e408..61a636f6073 100644 --- a/tools/internal_ci/windows/grpc_build_packages.bat +++ b/tools/internal_ci/windows/grpc_build_packages.bat @@ -28,8 +28,9 @@ call tools/internal_ci/helper_scripts/prepare_build_windows.bat powershell -Command "mv %KOKORO_GFILE_DIR%\github\grpc\artifacts input_artifacts" dir input_artifacts -python tools/run_tests/task_runner.py -f package windows -j 4 || goto :error -goto :EOF +python tools/run_tests/task_runner.py -f package windows -j 4 +set RUNTESTS_EXITCODE=%errorlevel% -:error -exit /b %errorlevel% +bash tools/internal_ci/helper_scripts/delete_nonartifacts.sh + +exit /b %RUNTESTS_EXITCODE% diff --git a/tools/internal_ci/windows/grpc_distribtests.bat b/tools/internal_ci/windows/grpc_distribtests.bat index d6d50b684f5..65fd01ef72a 100644 --- a/tools/internal_ci/windows/grpc_distribtests.bat +++ b/tools/internal_ci/windows/grpc_distribtests.bat @@ -28,8 +28,9 @@ call tools/internal_ci/helper_scripts/prepare_build_windows.bat powershell -Command "mv %KOKORO_GFILE_DIR%\github\grpc\artifacts input_artifacts" dir input_artifacts -python tools/run_tests/task_runner.py -f distribtest windows -j 4 || goto :error -goto :EOF +python tools/run_tests/task_runner.py -f distribtest windows -j 4 +set RUNTESTS_EXITCODE=%errorlevel% -:error -exit /b %errorlevel% +bash tools/internal_ci/helper_scripts/delete_nonartifacts.sh + +exit /b %RUNTESTS_EXITCODE% diff --git a/tools/internal_ci/windows/grpc_distribtests_standalone.bat b/tools/internal_ci/windows/grpc_distribtests_standalone.bat index 3eb33b1548c..ea4c0d7a976 100644 --- a/tools/internal_ci/windows/grpc_distribtests_standalone.bat +++ b/tools/internal_ci/windows/grpc_distribtests_standalone.bat @@ -24,8 +24,9 @@ cd /d %~dp0\..\..\.. call tools/internal_ci/helper_scripts/prepare_build_windows.bat -python tools/run_tests/task_runner.py -f distribtest windows cpp -j 4 || goto :error -goto :EOF +python tools/run_tests/task_runner.py -f distribtest windows cpp -j 4 +set RUNTESTS_EXITCODE=%errorlevel% -:error -exit /b %errorlevel% +bash tools/internal_ci/helper_scripts/delete_nonartifacts.sh + +exit /b %RUNTESTS_EXITCODE% diff --git a/tools/internal_ci/windows/grpc_run_tests_matrix.bat b/tools/internal_ci/windows/grpc_run_tests_matrix.bat index 10627add25c..c6277d0929e 100644 --- a/tools/internal_ci/windows/grpc_run_tests_matrix.bat +++ b/tools/internal_ci/windows/grpc_run_tests_matrix.bat @@ -20,7 +20,6 @@ call tools/internal_ci/helper_scripts/prepare_build_windows.bat python tools/run_tests/run_tests_matrix.py %RUN_TESTS_FLAGS% set RUNTESTS_EXITCODE=%errorlevel% -@rem Reveal leftover processes that might be left behind by the build -tasklist /V +bash tools/internal_ci/helper_scripts/delete_nonartifacts.sh exit /b %RUNTESTS_EXITCODE%