Kokoro Ubuntu: Switch to docker image

presubmit.sh now runs presubmit-docker.sh using the new radial
docker image which contains various toolchains.

The `/bin/using.sh` bash script exports the `using` bash function
which can be called to configure toolchains at specific versions.
This commit is contained in:
Ben Clayton 2020-05-05 17:54:47 +01:00
parent 4bc690cba8
commit 9e313445bb
2 changed files with 50 additions and 30 deletions

View File

@ -0,0 +1,39 @@
#!/bin/bash
set -e # Fail on any error.
. /bin/using.sh # Declare the bash `using` function for configuring toolchains.
set -x # Display commands being run.
cd github/cppdap
git submodule update --init
if [ "$BUILD_SYSTEM" == "cmake" ]; then
using cmake-3.17.2
using gcc-9
mkdir build
cd build
build_and_run() {
cmake .. -DCPPDAP_BUILD_EXAMPLES=1 -DCPPDAP_BUILD_TESTS=1 -DCPPDAP_WARNINGS_AS_ERRORS=1 $1
make --jobs=$(nproc)
./cppdap-unittests
}
if [ "$BUILD_SANITIZER" == "asan" ]; then
build_and_run "-DCPPDAP_ASAN=1"
elif [ "$BUILD_SANITIZER" == "msan" ]; then
build_and_run "-DCPPDAP_MSAN=1"
elif [ "$BUILD_SANITIZER" == "tsan" ]; then
build_and_run "-DCPPDAP_TSAN=1"
else
build_and_run
fi
else
echo "Unknown build system: $BUILD_SYSTEM"
exit 1
fi

View File

@ -1,35 +1,16 @@
#!/bin/bash #!/bin/bash
set -e # Fail on any error. set -e # Fail on any error.
set -x # Display commands being run.
BUILD_ROOT=$PWD ROOT_DIR=`pwd`
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd )"
cd github/cppdap docker run --rm -i \
--volume "${ROOT_DIR}:${ROOT_DIR}" \
git submodule update --init --volume "${KOKORO_ARTIFACTS_DIR}:/mnt/artifacts" \
--workdir "${ROOT_DIR}" \
if [ "$BUILD_SYSTEM" == "cmake" ]; then --env BUILD_SYSTEM=$BUILD_SYSTEM \
mkdir build --env BUILD_TARGET_ARCH=$BUILD_TARGET_ARCH \
cd build --env BUILD_SANITIZER=$BUILD_SANITIZER \
--entrypoint "${SCRIPT_DIR}/presubmit-docker.sh" \
build_and_run() { "gcr.io/shaderc-build/radial-build:latest"
cmake .. -DCPPDAP_BUILD_EXAMPLES=1 -DCPPDAP_BUILD_TESTS=1 -DCPPDAP_WARNINGS_AS_ERRORS=1 $1
make --jobs=$(nproc)
./cppdap-unittests
}
if [ "$BUILD_SANITIZER" == "asan" ]; then
build_and_run "-DCPPDAP_ASAN=1"
elif [ "$BUILD_SANITIZER" == "msan" ]; then
build_and_run "-DCPPDAP_MSAN=1"
elif [ "$BUILD_SANITIZER" == "tsan" ]; then
build_and_run "-DCPPDAP_TSAN=1"
else
build_and_run
fi
else
echo "Unknown build system: $BUILD_SYSTEM"
exit 1
fi