ray/ci/asan_tests/run_asan_tests.sh
mehrdadn b14728d999
Shellcheck quoting (#9596)
* Fix SC2006: Use $(...) notation instead of legacy backticked `...`.

* Fix SC2016: Expressions don't expand in single quotes, use double quotes for that.

* Fix SC2046: Quote this to prevent word splitting.

* Fix SC2053: Quote the right-hand side of == in [[ ]] to prevent glob matching.

* Fix SC2068: Double quote array expansions to avoid re-splitting elements.

* Fix SC2086: Double quote to prevent globbing and word splitting.

* Fix SC2102: Ranges can only match single chars (mentioned due to duplicates).

* Fix SC2140: Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"?

* Fix SC2145: Argument mixes string and array. Use * or separate argument.

* Fix SC2209: warning: Use var=$(command) to assign output (or quote to assign string).

Co-authored-by: Mehrdad <noreply@github.com>
2020-07-21 21:56:41 -05:00

58 lines
1.4 KiB
Bash
Executable file

#!/usr/bin/env bash
set -euxo pipefail
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE:-$0}")"; pwd)"
asan_install() {
(cd "${ROOT_DIR}"/../python && pip install -e . --verbose)
}
asan_setup() {
echo "Setting up the environment"
pip install -r ray-project/requirements.txt
pip install -U pytest
echo "Installing cython example"
(cd "${ROOT_DIR}"/../doc/examples/cython && python setup.py install --user)
echo "Settting up the shell"
echo "build --config=asan" >> ~/.bazelrc # Setup cache
echo "LD_PRELOAD=/usr/lib/gcc/x86_64-linux-gnu/7/libasan.so" >> ~/.bashrc
echo "ASAN_OPTIONS=detect_leaks=0" >> ~/.bashrc
echo "Compiling ray"
git fetch
git pull origin master
asan_install || true
}
asan_run() {
(
export LD_PRELOAD="/usr/lib/gcc/x86_64-linux-gnu/7/libasan.so"
export ASAN_OPTIONS="detect_leaks=0"
cd "${ROOT_DIR}"/../..
# async plasma test
python -m pytest -v --durations=5 --timeout=300 python/ray/tests/test_async.py
# Ray tests
bazel test --test_tag_filters=-jenkins_only python/ray/serve/...
bazel test --test_tag_filters=-jenkins_only python/ray/dashboard/...
bazel test --test_tag_filters=-jenkins_only python/ray/tests/...
bazel test --test_tag_filters=-jenkins_only python/ray/tune/...
)
}
asan_recompile() {
git fetch
git checkout "${git_sha}"
asan_install || true
}
if [ 0 -lt "$#" ]; then
"asan_$1" "${@:2}"
else
echo "Available commands: setup, run, recompile"
fi