]> git.proxmox.com Git - ceph.git/blame - ceph/src/rocksdb/build_tools/rocksdb-lego-determinator
update sources to ceph Nautilus 14.2.1
[ceph.git] / ceph / src / rocksdb / build_tools / rocksdb-lego-determinator
CommitLineData
11fdf7f2 1#!/usr/bin/env bash
7c673cae
FG
2# This script is executed by Sandcastle
3# to determine next steps to run
4
5# Usage:
6# EMAIL=<email> ONCALL=<email> TRIGGER=<trigger> SUBSCRIBER=<email> rocks_ci.py <test-name>
7#
8# Input Value
9# -------------------------------------------------------------------------
10# EMAIL Email address to report on trigger conditions
11# ONCALL Email address to raise a task on failure
12# TRIGGER Trigger conditions for email. Valid values are fail, warn, all
13# SUBSCRIBER Email addresss to add as subscriber for task
14#
15
16#
17# Report configuration
18#
19REPORT_EMAIL=
20if [ ! -z $EMAIL ]; then
21 if [ -z $TRIGGER ]; then
22 TRIGGER="fail"
23 fi
24
25 REPORT_EMAIL="
26 {
27 'type':'email',
28 'triggers': [ '$TRIGGER' ],
29 'emails':['$EMAIL']
30 },"
31fi
32
33CREATE_TASK=
34if [ ! -z $ONCALL ]; then
35 CREATE_TASK="
36 {
37 'type':'task',
38 'triggers':[ 'fail' ],
39 'priority':0,
40 'subscribers':[ '$SUBSCRIBER' ],
41 'tags':[ 'rocksdb', 'ci' ],
42 },"
43fi
44
45# For now, create the tasks using only the dedicated task creation tool.
46CREATE_TASK=
47
48REPORT=
49if [[ ! -z $REPORT_EMAIL || ! -z $CREATE_TASK ]]; then
50 REPORT="'report': [
51 $REPORT_EMAIL
52 $CREATE_TASK
53 ]"
54fi
55
56#
57# Helper variables
58#
59CLEANUP_ENV="
60{
61 'name':'Cleanup environment',
62 'shell':'rm -rf /dev/shm/rocksdb && mkdir /dev/shm/rocksdb && (chmod +t /dev/shm || true) && make clean',
63 'user':'root'
64}"
65
66# We will eventually set the RATIO to 1, but we want do this
67# in steps. RATIO=$(nproc) will make it work as J=1
68if [ -z $RATIO ]; then
69 RATIO=$(nproc)
70fi
71
72if [ -z $PARALLEL_J ]; then
73 PARALLEL_J="J=$(expr $(nproc) / ${RATIO})"
74fi
75
76if [ -z $PARALLEL_j ]; then
77 PARALLEL_j="-j$(expr $(nproc) / ${RATIO})"
78fi
79
80PARALLELISM="$PARALLEL_J $PARALLEL_j"
81
82DEBUG="OPT=-g"
83SHM="TEST_TMPDIR=/dev/shm/rocksdb"
84NON_SHM="TMPD=/tmp/rocksdb_test_tmp"
85GCC_481="ROCKSDB_FBCODE_BUILD_WITH_481=1"
86ASAN="COMPILE_WITH_ASAN=1"
87CLANG="USE_CLANG=1"
88LITE="OPT=\"-DROCKSDB_LITE -g\""
89TSAN="COMPILE_WITH_TSAN=1"
90UBSAN="COMPILE_WITH_UBSAN=1"
11fdf7f2
TL
91TSAN_CRASH='CRASH_TEST_EXT_ARGS="--compression_type=zstd --log2_keys_per_lock=22"'
92NON_TSAN_CRASH="CRASH_TEST_EXT_ARGS=--compression_type=zstd"
7c673cae
FG
93DISABLE_JEMALLOC="DISABLE_JEMALLOC=1"
94HTTP_PROXY="https_proxy=http://fwdproxy.29.prn1:8080 http_proxy=http://fwdproxy.29.prn1:8080 ftp_proxy=http://fwdproxy.29.prn1:8080"
95SETUP_JAVA_ENV="export $HTTP_PROXY; export JAVA_HOME=/usr/local/jdk-8u60-64/; export PATH=\$JAVA_HOME/bin:\$PATH"
96PARSER="'parser':'python build_tools/error_filter.py $1'"
97
98CONTRUN_NAME="ROCKSDB_CONTRUN_NAME"
99
100# This code is getting called under various scenarios. What we care about is to
101# understand when it's called from nightly contruns because in that case we'll
102# create tasks for any failures. To follow the existing pattern, we'll check
103# the value of $ONCALL. If it's a diff then just call `false` to make sure
104# that errors will be properly propagated to the caller.
105if [ ! -z $ONCALL ]; then
106 TASK_CREATION_TOOL="/usr/local/bin/mysql_mtr_filter --rocksdb --oncall $ONCALL"
107else
108 TASK_CREATION_TOOL="false"
109fi
110
111ARTIFACTS=" 'artifacts': [
112 {
113 'name':'database',
114 'paths':[ '/dev/shm/rocksdb' ],
115 }
116]"
117
118#
119# A mechanism to disable tests temporarily
120#
121DISABLE_COMMANDS="[
122 {
123 'name':'Disable test',
124 'oncall':'$ONCALL',
125 'steps': [
126 {
127 'name':'Job disabled. Please contact test owner',
128 'shell':'exit 1',
129 'user':'root'
130 },
131 ],
132 }
133]"
134
7c673cae
FG
135#
136# RocksDB unit test
137#
138UNIT_TEST_COMMANDS="[
139 {
140 'name':'Rocksdb Unit Test',
141 'oncall':'$ONCALL',
142 'steps': [
143 $CLEANUP_ENV,
144 {
145 'name':'Build and test RocksDB debug version',
146 'shell':'$SHM $DEBUG make $PARALLELISM check || $CONTRUN_NAME=check $TASK_CREATION_TOOL',
147 'user':'root',
148 $PARSER
149 },
150 ],
151 $REPORT
152 }
153]"
154
155#
156# RocksDB unit test not under /dev/shm
157#
158UNIT_TEST_NON_SHM_COMMANDS="[
159 {
160 'name':'Rocksdb Unit Test',
161 'oncall':'$ONCALL',
162 'timeout': 86400,
163 'steps': [
164 $CLEANUP_ENV,
165 {
166 'name':'Build and test RocksDB debug version',
167 'timeout': 86400,
168 'shell':'$NON_SHM $DEBUG make $PARALLELISM check || $CONTRUN_NAME=non_shm_check $TASK_CREATION_TOOL',
169 'user':'root',
170 $PARSER
171 },
172 ],
173 $REPORT
174 }
175]"
176
177#
178# RocksDB release build and unit tests
179#
180RELEASE_BUILD_COMMANDS="[
181 {
182 'name':'Rocksdb Release Build',
183 'oncall':'$ONCALL',
184 'steps': [
185 $CLEANUP_ENV,
186 {
187 'name':'Build RocksDB release',
188 'shell':'make $PARALLEL_j release || $CONTRUN_NAME=release $TASK_CREATION_TOOL',
189 'user':'root',
190 $PARSER
191 },
192 ],
193 $REPORT
194 }
195]"
196
197#
198# RocksDB unit test on gcc-4.8.1
199#
200UNIT_TEST_COMMANDS_481="[
201 {
202 'name':'Rocksdb Unit Test on GCC 4.8.1',
203 'oncall':'$ONCALL',
204 'steps': [
205 $CLEANUP_ENV,
206 {
207 'name':'Build and test RocksDB debug version',
208 'shell':'$SHM $GCC_481 $DEBUG make $PARALLELISM check || $CONTRUN_NAME=unit_gcc_481_check $TASK_CREATION_TOOL',
209 'user':'root',
210 $PARSER
211 },
212 ],
213 $REPORT
214 }
215]"
216
217#
218# RocksDB release build and unit tests
219#
220RELEASE_BUILD_COMMANDS_481="[
221 {
222 'name':'Rocksdb Release on GCC 4.8.1',
223 'oncall':'$ONCALL',
224 'steps': [
225 $CLEANUP_ENV,
226 {
227 'name':'Build RocksDB release on GCC 4.8.1',
228 'shell':'$GCC_481 make $PARALLEL_j release || $CONTRUN_NAME=release_gcc481 $TASK_CREATION_TOOL',
229 'user':'root',
230 $PARSER
231 },
232 ],
233 $REPORT
234 }
235]"
236
237#
238# RocksDB unit test with CLANG
239#
240CLANG_UNIT_TEST_COMMANDS="[
241 {
242 'name':'Rocksdb Unit Test',
243 'oncall':'$ONCALL',
244 'steps': [
245 $CLEANUP_ENV,
246 {
247 'name':'Build and test RocksDB debug',
248 'shell':'$CLANG $SHM $DEBUG make $PARALLELISM check || $CONTRUN_NAME=clang_check $TASK_CREATION_TOOL',
249 'user':'root',
250 $PARSER
251 },
252 ],
253 $REPORT
254 }
255]"
256
257#
258# RocksDB release build with CLANG
259#
260CLANG_RELEASE_BUILD_COMMANDS="[
261 {
262 'name':'Rocksdb CLANG Release Build',
263 'oncall':'$ONCALL',
264 'steps': [
265 $CLEANUP_ENV,
266 {
267 'name':'Build RocksDB release',
268 'shell':'$CLANG make $PARALLEL_j release|| $CONTRUN_NAME=clang_release $TASK_CREATION_TOOL',
269 'user':'root',
270 $PARSER
271 },
272 ],
273 $REPORT
274 }
275]"
276
277#
278# RocksDB analyze
279#
280CLANG_ANALYZE_COMMANDS="[
281 {
282 'name':'Rocksdb analyze',
283 'oncall':'$ONCALL',
284 'steps': [
285 $CLEANUP_ENV,
286 {
287 'name':'RocksDB build and analyze',
288 'shell':'$CLANG $SHM $DEBUG make $PARALLEL_j analyze || $CONTRUN_NAME=clang_analyze $TASK_CREATION_TOOL',
289 'user':'root',
290 $PARSER
291 },
292 ],
293 $REPORT
294 }
295]"
296
297#
298# RocksDB code coverage
299#
300CODE_COV_COMMANDS="[
301 {
302 'name':'Rocksdb Unit Test Code Coverage',
303 'oncall':'$ONCALL',
304 'steps': [
305 $CLEANUP_ENV,
306 {
307 'name':'Build, test and collect code coverage info',
308 'shell':'$SHM $DEBUG make $PARALLELISM coverage || $CONTRUN_NAME=coverage $TASK_CREATION_TOOL',
309 'user':'root',
310 $PARSER
311 },
312 ],
313 $REPORT
314 }
315]"
316
317#
318# RocksDB unity
319#
320UNITY_COMMANDS="[
321 {
322 'name':'Rocksdb Unity',
323 'oncall':'$ONCALL',
324 'steps': [
325 $CLEANUP_ENV,
326 {
327 'name':'Build, test unity test',
328 'shell':'$SHM $DEBUG V=1 make J=1 unity_test || $CONTRUN_NAME=unity_test $TASK_CREATION_TOOL',
329 'user':'root',
330 $PARSER
331 },
332 ],
333 $REPORT
334 }
335]"
336
337#
338# Build RocksDB lite
339#
340LITE_BUILD_COMMANDS="[
341 {
342 'name':'Rocksdb Lite build',
343 'oncall':'$ONCALL',
344 'steps': [
345 $CLEANUP_ENV,
346 {
347 'name':'Build RocksDB debug version',
11fdf7f2 348 'shell':'$LITE make J=1 all check || $CONTRUN_NAME=lite $TASK_CREATION_TOOL',
7c673cae
FG
349 'user':'root',
350 $PARSER
351 },
352 ],
353 $REPORT
354 }
355]"
356
357#
11fdf7f2
TL
358# Report RocksDB lite binary size to scuba
359REPORT_LITE_BINARY_SIZE_COMMANDS="[
7c673cae 360 {
11fdf7f2 361 'name':'Rocksdb Lite Binary Size',
7c673cae
FG
362 'oncall':'$ONCALL',
363 'steps': [
364 $CLEANUP_ENV,
365 {
11fdf7f2
TL
366 'name':'Report RocksDB Lite binary size to scuba',
367 'shell':'tools/report_lite_binary_size.sh',
7c673cae 368 'user':'root',
7c673cae
FG
369 },
370 ],
7c673cae
FG
371]"
372
373#
374# RocksDB stress/crash test
375#
376STRESS_CRASH_TEST_COMMANDS="[
377 {
378 'name':'Rocksdb Stress/Crash Test',
379 'oncall':'$ONCALL',
380 'timeout': 86400,
381 'steps': [
382 $CLEANUP_ENV,
383 {
384 'name':'Build and run RocksDB debug stress tests',
11fdf7f2 385 'shell':'$SHM $DEBUG $NON_TSAN_CRASH make J=1 db_stress || $CONTRUN_NAME=db_stress $TASK_CREATION_TOOL',
7c673cae
FG
386 'user':'root',
387 $PARSER
388 },
389 {
390 'name':'Build and run RocksDB debug crash tests',
391 'timeout': 86400,
11fdf7f2 392 'shell':'$SHM $DEBUG $NON_TSAN_CRASH make J=1 crash_test || $CONTRUN_NAME=crash_test $TASK_CREATION_TOOL',
7c673cae
FG
393 'user':'root',
394 $PARSER
395 }
396 ],
397 $ARTIFACTS,
398 $REPORT
399 }
400]"
401
402# RocksDB write stress test.
403# We run on disk device on purpose (i.e. no $SHM)
404# because we want to add some randomness to fsync commands
405WRITE_STRESS_COMMANDS="[
406 {
407 'name':'Rocksdb Write Stress Test',
408 'oncall':'$ONCALL',
409 'steps': [
410 $CLEANUP_ENV,
411 {
412 'name':'Build and run RocksDB write stress tests',
413 'shell':'make write_stress && python tools/write_stress_runner.py --runtime_sec=3600 --db=/tmp/rocksdb_write_stress || $CONTRUN_NAME=write_stress $TASK_CREATION_TOOL',
414 'user':'root',
415 $PARSER
416 }
417 ],
418 'artifacts': [{'name': 'database', 'paths': ['/tmp/rocksdb_write_stress']}],
419 $REPORT
420 }
421]"
422
423
424#
425# RocksDB test under address sanitizer
426#
427ASAN_TEST_COMMANDS="[
428 {
429 'name':'Rocksdb Unit Test under ASAN',
430 'oncall':'$ONCALL',
431 'steps': [
432 $CLEANUP_ENV,
433 {
434 'name':'Test RocksDB debug under ASAN',
435'shell':'set -o pipefail && ($SHM $ASAN $DEBUG make $PARALLELISM asan_check || $CONTRUN_NAME=asan_check $TASK_CREATION_TOOL) |& /usr/facebook/ops/scripts/asan_symbolize.py -d',
436 'user':'root',
437 $PARSER
438 }
439 ],
440 $REPORT
441 }
442]"
443
444#
445# RocksDB crash testing under address sanitizer
446#
447ASAN_CRASH_TEST_COMMANDS="[
448 {
449 'name':'Rocksdb crash test under ASAN',
450 'oncall':'$ONCALL',
451 'timeout': 86400,
452 'steps': [
453 $CLEANUP_ENV,
454 {
455 'name':'Build and run RocksDB debug asan_crash_test',
456 'timeout': 86400,
11fdf7f2 457 'shell':'$SHM $DEBUG $NON_TSAN_CRASH make J=1 asan_crash_test || $CONTRUN_NAME=asan_crash_test $TASK_CREATION_TOOL',
7c673cae
FG
458 'user':'root',
459 $PARSER
460 },
461 ],
462 $REPORT
463 }
464]"
465
466#
467# RocksDB test under undefined behavior sanitizer
468#
469UBSAN_TEST_COMMANDS="[
470 {
471 'name':'Rocksdb Unit Test under UBSAN',
472 'oncall':'$ONCALL',
473 'steps': [
474 $CLEANUP_ENV,
475 {
476 'name':'Test RocksDB debug under UBSAN',
477 'shell':'set -o pipefail && $SHM $UBSAN $DEBUG make $PARALLELISM ubsan_check || $CONTRUN_NAME=ubsan_check $TASK_CREATION_TOOL',
478 'user':'root',
479 $PARSER
480 }
481 ],
482 $REPORT
483 }
484]"
485
486#
487# RocksDB crash testing under udnefined behavior sanitizer
488#
489UBSAN_CRASH_TEST_COMMANDS="[
490 {
491 'name':'Rocksdb crash test under UBSAN',
492 'oncall':'$ONCALL',
493 'timeout': 86400,
494 'steps': [
495 $CLEANUP_ENV,
496 {
497 'name':'Build and run RocksDB debug ubsan_crash_test',
498 'timeout': 86400,
11fdf7f2 499 'shell':'$SHM $DEBUG $NON_TSAN_CRASH make J=1 ubsan_crash_test || $CONTRUN_NAME=ubsan_crash_test $TASK_CREATION_TOOL',
7c673cae
FG
500 'user':'root',
501 $PARSER
502 },
503 ],
504 $REPORT
505 }
506]"
507
508#
509# RocksDB unit test under valgrind
510#
511VALGRIND_TEST_COMMANDS="[
512 {
513 'name':'Rocksdb Unit Test under valgrind',
514 'oncall':'$ONCALL',
515 'timeout': 86400,
516 'steps': [
517 $CLEANUP_ENV,
518 {
519 'name':'Run RocksDB debug unit tests',
520 'timeout': 86400,
521 'shell':'$SHM $DEBUG make $PARALLELISM valgrind_test || $CONTRUN_NAME=valgrind_check $TASK_CREATION_TOOL',
522 'user':'root',
523 $PARSER
524 },
525 ],
526 $REPORT
527 }
528]"
529
530#
531# RocksDB test under TSAN
532#
533TSAN_UNIT_TEST_COMMANDS="[
534 {
535 'name':'Rocksdb Unit Test under TSAN',
536 'oncall':'$ONCALL',
537 'timeout': 86400,
538 'steps': [
539 $CLEANUP_ENV,
540 {
541 'name':'Run RocksDB debug unit test',
542 'timeout': 86400,
543 'shell':'set -o pipefail && $SHM $DEBUG $TSAN make $PARALLELISM check || $CONTRUN_NAME=tsan_check $TASK_CREATION_TOOL',
544 'user':'root',
545 $PARSER
546 },
547 ],
548 $REPORT
549 }
550]"
551
552#
553# RocksDB crash test under TSAN
554#
555TSAN_CRASH_TEST_COMMANDS="[
556 {
557 'name':'Rocksdb Crash Test under TSAN',
558 'oncall':'$ONCALL',
559 'timeout': 86400,
560 'steps': [
561 $CLEANUP_ENV,
562 {
563 'name':'Compile and run',
564 'timeout': 86400,
11fdf7f2 565 'shell':'set -o pipefail && $SHM $DEBUG $TSAN $TSAN_CRASH CRASH_TEST_KILL_ODD=1887 make J=1 crash_test || $CONTRUN_NAME=tsan_crash_test $TASK_CREATION_TOOL',
7c673cae
FG
566 'user':'root',
567 $PARSER
568 },
569 ],
570 $REPORT
571 }
572]"
573
574#
575# RocksDB format compatible
576#
577
578run_format_compatible()
579{
580 export TEST_TMPDIR=/dev/shm/rocksdb
581 rm -rf /dev/shm/rocksdb
582 mkdir /dev/shm/rocksdb
583
11fdf7f2 584 tools/check_format_compatible.sh
7c673cae
FG
585}
586
587FORMAT_COMPATIBLE_COMMANDS="[
588 {
589 'name':'Rocksdb Format Compatible tests',
590 'oncall':'$ONCALL',
591 'steps': [
592 $CLEANUP_ENV,
593 {
594 'name':'Run RocksDB debug unit test',
595 'shell':'build_tools/rocksdb-lego-determinator run_format_compatible || $CONTRUN_NAME=run_format_compatible $TASK_CREATION_TOOL',
596 'user':'root',
597 $PARSER
598 },
599 ],
600 $REPORT
601 }
602]"
603
604#
605# RocksDB no compression
606#
607run_no_compression()
608{
609 export TEST_TMPDIR=/dev/shm/rocksdb
610 rm -rf /dev/shm/rocksdb
611 mkdir /dev/shm/rocksdb
612 make clean
613 cat build_tools/fbcode_config.sh | grep -iv dzlib | grep -iv dlz4 | grep -iv dsnappy | grep -iv dbzip2 > .tmp.fbcode_config.sh
614 mv .tmp.fbcode_config.sh build_tools/fbcode_config.sh
615 cat Makefile | grep -v tools/ldb_test.py > .tmp.Makefile
616 mv .tmp.Makefile Makefile
617 make $DEBUG J=1 check
618}
619
620NO_COMPRESSION_COMMANDS="[
621 {
622 'name':'Rocksdb No Compression tests',
623 'oncall':'$ONCALL',
624 'steps': [
625 $CLEANUP_ENV,
626 {
627 'name':'Run RocksDB debug unit test',
628 'shell':'build_tools/rocksdb-lego-determinator run_no_compression || $CONTRUN_NAME=run_no_compression $TASK_CREATION_TOOL',
629 'user':'root',
630 $PARSER
631 },
632 ],
633 $REPORT
634 }
635]"
636
637#
638# RocksDB regression
639#
640run_regression()
641{
642 time -v bash -vx ./build_tools/regression_build_test.sh $(mktemp -d $WORKSPACE/leveldb.XXXX) $(mktemp leveldb_test_stats.XXXX)
643
644 # ======= report size to ODS ========
645
646 # parameters: $1 -- key, $2 -- value
647 function send_size_to_ods {
648 curl -s "https://www.intern.facebook.com/intern/agent/ods_set.php?entity=rocksdb_build&key=rocksdb.build_size.$1&value=$2" \
649 --connect-timeout 60
650 }
651
652 # === normal build ===
653 make clean
654 make -j$(nproc) static_lib
655 send_size_to_ods static_lib $(stat --printf="%s" librocksdb.a)
656 strip librocksdb.a
657 send_size_to_ods static_lib_stripped $(stat --printf="%s" librocksdb.a)
658
659 make -j$(nproc) shared_lib
660 send_size_to_ods shared_lib $(stat --printf="%s" `readlink -f librocksdb.so`)
661 strip `readlink -f librocksdb.so`
662 send_size_to_ods shared_lib_stripped $(stat --printf="%s" `readlink -f librocksdb.so`)
663
664 # === lite build ===
665 make clean
666 OPT=-DROCKSDB_LITE make -j$(nproc) static_lib
667 send_size_to_ods static_lib_lite $(stat --printf="%s" librocksdb.a)
668 strip librocksdb.a
669 send_size_to_ods static_lib_lite_stripped $(stat --printf="%s" librocksdb.a)
670
671 OPT=-DROCKSDB_LITE make -j$(nproc) shared_lib
672 send_size_to_ods shared_lib_lite $(stat --printf="%s" `readlink -f librocksdb.so`)
673 strip `readlink -f librocksdb.so`
674 send_size_to_ods shared_lib_lite_stripped $(stat --printf="%s" `readlink -f librocksdb.so`)
675}
676
677REGRESSION_COMMANDS="[
678 {
679 'name':'Rocksdb regression commands',
680 'oncall':'$ONCALL',
681 'steps': [
682 $CLEANUP_ENV,
683 {
684 'name':'Make and run script',
685 'shell':'build_tools/rocksdb-lego-determinator run_regression || $CONTRUN_NAME=run_regression $TASK_CREATION_TOOL',
686 'user':'root',
687 $PARSER
688 },
689 ],
690 $REPORT
691 }
692]"
693
694#
695# RocksDB Java build
696#
697JAVA_BUILD_TEST_COMMANDS="[
698 {
699 'name':'Rocksdb Java Build',
700 'oncall':'$ONCALL',
701 'steps': [
702 $CLEANUP_ENV,
703 {
704 'name':'Build RocksDB for Java',
705 'shell':'$SETUP_JAVA_ENV; $SHM make rocksdbjava || $CONTRUN_NAME=rocksdbjava $TASK_CREATION_TOOL',
706 'user':'root',
707 $PARSER
708 },
709 ],
710 $REPORT
711 }
712]"
713
714
715case $1 in
7c673cae
FG
716 unit)
717 echo $UNIT_TEST_COMMANDS
718 ;;
719 unit_non_shm)
720 echo $UNIT_TEST_NON_SHM_COMMANDS
721 ;;
722 release)
723 echo $RELEASE_BUILD_COMMANDS
724 ;;
725 unit_481)
726 echo $UNIT_TEST_COMMANDS_481
727 ;;
728 release_481)
729 echo $RELEASE_BUILD_COMMANDS_481
730 ;;
731 clang_unit)
732 echo $CLANG_UNIT_TEST_COMMANDS
733 ;;
734 clang_release)
735 echo $CLANG_RELEASE_BUILD_COMMANDS
736 ;;
737 clang_analyze)
738 echo $CLANG_ANALYZE_COMMANDS
739 ;;
740 code_cov)
741 echo $CODE_COV_COMMANDS
742 ;;
743 unity)
744 echo $UNITY_COMMANDS
745 ;;
746 lite)
747 echo $LITE_BUILD_COMMANDS
748 ;;
11fdf7f2
TL
749 report_lite_binary_size)
750 echo $REPORT_LITE_BINARY_SIZE_COMMANDS
7c673cae
FG
751 ;;
752 stress_crash)
753 echo $STRESS_CRASH_TEST_COMMANDS
754 ;;
755 write_stress)
756 echo $WRITE_STRESS_COMMANDS
757 ;;
758 asan)
759 echo $ASAN_TEST_COMMANDS
760 ;;
761 asan_crash)
762 echo $ASAN_CRASH_TEST_COMMANDS
763 ;;
764 ubsan)
765 echo $UBSAN_TEST_COMMANDS
766 ;;
767 ubsan_crash)
768 echo $UBSAN_CRASH_TEST_COMMANDS
769 ;;
770 valgrind)
771 echo $VALGRIND_TEST_COMMANDS
772 ;;
773 tsan)
774 echo $TSAN_UNIT_TEST_COMMANDS
775 ;;
776 tsan_crash)
777 echo $TSAN_CRASH_TEST_COMMANDS
778 ;;
779 format_compatible)
780 echo $FORMAT_COMPATIBLE_COMMANDS
781 ;;
782 run_format_compatible)
783 run_format_compatible
784 ;;
785 no_compression)
786 echo $NO_COMPRESSION_COMMANDS
787 ;;
788 run_no_compression)
789 run_no_compression
790 ;;
791 regression)
792 echo $REGRESSION_COMMANDS
793 ;;
794 run_regression)
795 run_regression
796 ;;
797 java_build)
798 echo $JAVA_BUILD_TEST_COMMANDS
799 ;;
800 *)
801 echo "Invalid determinator command"
802 ;;
803esac