17
17
ENVOY_SRCDIR=$PWD
18
18
ENVOY_CIDIR=${ENVOY_SRCDIR} /ci
19
19
# replace bazel cache to be in our volume
20
+ export USER=bazel
20
21
export TEST_TMPDIR=${BUILD_DIR} /tmp
21
- export USER=root
22
-
23
- BAZEL_OPTIONS=" --package_path %workspace%:${ENVOY_SRCDIR} "
22
+ export BAZEL=" bazel"
24
23
24
+ export PPROF_PATH=/thirdparty_build/bin/pprof
25
25
[ -z " ${NUM_CPUS} " ] && NUM_CPUS=` grep -c ^processor /proc/cpuinfo`
26
26
27
27
# Create a fake home. Python site libs tries to do getpwuid(3) if we don't and the CI
@@ -32,30 +32,58 @@ mkdir -p "${FAKE_HOME}"
32
32
export HOME=" ${FAKE_HOME} "
33
33
export PYTHONUSERBASE=" ${FAKE_HOME} "
34
34
35
- export BAZEL_BUILD_OPTIONS=" --strategy=Genrule=standalone --genrule_strategy=standalone \
36
- --spawn_strategy=standalone \
37
- --verbose_failures ${BAZEL_OPTIONS} --action_env=HOME --action_env=PYTHONUSERBASE \
38
- --jobs=${NUM_CPUS} --show_task_finish ${BAZEL_BUILD_EXTRA_OPTIONS} "
39
-
40
- export BAZEL_TEST_OPTIONS=" ${BAZEL_BUILD_OPTIONS} --test_env=HOME --test_env=PYTHONUSERBASE \
41
- --test_env=UBSAN_OPTIONS=print_stacktrace=1 \
42
- --cache_test_results=no --test_output=all ${BAZEL_EXTRA_TEST_OPTIONS} "
35
+ if [[ -f " /etc/redhat-release" ]]
36
+ then
37
+ export BAZEL_BUILD_EXTRA_OPTIONS=" --copt=-DENVOY_IGNORE_GLIBCXX_USE_CXX11_ABI_ERROR=1 --action_env=PATH ${BAZEL_BUILD_EXTRA_OPTIONS} "
38
+ else
39
+ export BAZEL_BUILD_EXTRA_OPTIONS=" --action_env=PATH=/bin:/usr/bin:/usr/lib/llvm-8/bin --linkopt=-fuse-ld=lld ${BAZEL_BUILD_EXTRA_OPTIONS} "
40
+ fi
43
41
44
42
# added by yuval-k for the integration tests to run on google cloud build
45
- export BAZEL_TEST_OPTIONS=" ${BAZEL_TEST_OPTIONS} --test_env=ENVOY_IP_TEST_VERSIONS=v4only --test_output=errors"
43
+ export BAZEL_EXTRA_TEST_OPTIONS=" --test_env=ENVOY_IP_TEST_VERSIONS=v4only --test_output=errors"
44
+
45
+ export BAZEL_QUERY_OPTIONS=" ${BAZEL_OPTIONS} "
46
+ export BAZEL_BUILD_OPTIONS=" --verbose_failures ${BAZEL_OPTIONS} --action_env=HOME --action_env=PYTHONUSERBASE \
47
+ --local_cpu_resources=${NUM_CPUS} --show_task_finish --experimental_generate_json_trace_profile \
48
+ --test_env=HOME --test_env=PYTHONUSERBASE --cache_test_results=no --test_output=all \
49
+ ${BAZEL_BUILD_EXTRA_OPTIONS} ${BAZEL_EXTRA_TEST_OPTIONS} "
46
50
47
51
function setup_gcc_toolchain() {
48
- export CC=gcc
49
- export CXX=g++
50
- echo " $CC /$CXX toolchain configured"
52
+ if [[ -z " ${ENVOY_RBE} " ]]; then
53
+ export CC=gcc
54
+ export CXX=g++
55
+ export BAZEL_COMPILER=gcc
56
+ echo " $CC /$CXX toolchain configured"
57
+ else
58
+ export BAZEL_BUILD_OPTIONS=" --config=rbe-toolchain-gcc ${BAZEL_BUILD_OPTIONS} "
59
+ fi
51
60
}
52
61
53
62
function setup_clang_toolchain() {
54
- export PATH=/usr/lib/llvm-8/bin:$PATH
55
- export CC=clang
56
- export CXX=clang++
57
- export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer
58
- echo " $CC /$CXX toolchain configured"
63
+ if [[ -z " ${ENVOY_RBE} " ]]; then
64
+ export PATH=/usr/lib/llvm-8/bin:$PATH
65
+ export CC=clang
66
+ export CXX=clang++
67
+ export BAZEL_COMPILER=clang
68
+ export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer
69
+ echo " $CC /$CXX toolchain configured"
70
+ else
71
+ export BAZEL_BUILD_OPTIONS=" --config=rbe-toolchain-clang ${BAZEL_BUILD_OPTIONS} "
72
+ fi
73
+ }
74
+
75
+ function setup_clang_libcxx_toolchain() {
76
+ if [[ -z " ${ENVOY_RBE} " ]]; then
77
+ export PATH=/usr/lib/llvm-8/bin:$PATH
78
+ export CC=clang
79
+ export CXX=clang++
80
+ export BAZEL_COMPILER=clang
81
+ export ASAN_SYMBOLIZER_PATH=/usr/lib/llvm-8/bin/llvm-symbolizer
82
+ export BAZEL_BUILD_OPTIONS=" --config=libc++ ${BAZEL_BUILD_OPTIONS} "
83
+ echo " $CC /$CXX toolchain with libc++ configured"
84
+ else
85
+ export BAZEL_BUILD_OPTIONS=" --config=rbe-toolchain-clang-libc++ ${BAZEL_BUILD_OPTIONS} "
86
+ fi
59
87
}
60
88
61
89
function cleanup() {
@@ -79,7 +107,9 @@ case "$1" in
79
107
${ENVOY_SRCDIR} test/run_envoy_bazel_coverage.sh
80
108
;;
81
109
" test" )
82
- bazel test ${BAZEL_TEST_OPTIONS} -c opt //test/...
110
+ bazel test ${BAZEL_BUILD_OPTIONS} -c opt //test/extensions/...
111
+ # bazel build ${BAZEL_BUILD_OPTIONS} -c opt //test/...
112
+ # bazel test ${BAZEL_BUILD_OPTIONS} -c opt //test/...
83
113
;;
84
114
" build" )
85
115
bazel build ${BAZEL_BUILD_OPTIONS} -c opt :envoy
0 commit comments