@@ -214,6 +214,16 @@ defaults:
214
214
command : ./test/lsp.py ./build/solc/solc
215
215
- gitter_notify_failure_unless_pr
216
216
217
+ - steps_build : &steps_build
218
+ steps :
219
+ - checkout
220
+ - run : *run_build
221
+ - store_artifacts : *artifacts_solc
222
+ - store_artifacts : *artifact_solidity_upgrade
223
+ - store_artifacts : *artifact_yul_phaser
224
+ - persist_to_workspace : *artifacts_executables
225
+ - gitter_notify_failure_unless_pr
226
+
217
227
- steps_soltest_all : &steps_soltest_all
218
228
steps :
219
229
- checkout
@@ -234,6 +244,14 @@ defaults:
234
244
- store_artifacts : *artifacts_test_results
235
245
- gitter_notify_failure_unless_pr
236
246
247
+ - steps_install_dependencies_osx : &steps_install_dependencies_osx
248
+ steps :
249
+ - restore_cache :
250
+ keys :
251
+ - dependencies-osx-{{ arch }}-{{ checksum ".circleci/osx_install_dependencies.sh" }}
252
+ - attach_workspace :
253
+ at : .
254
+
237
255
# --------------------------------------------------------------------------
238
256
# Base Image Templates
239
257
@@ -586,6 +604,15 @@ defaults:
586
604
nodejs_version : ' 14'
587
605
resource_class : medium
588
606
607
+ - job_b_ubu_asan_clang : &job_b_ubu_asan_clang
608
+ << : *workflow_trigger_on_tags
609
+ name : b_ubu_asan_clang
610
+ cmake_options : -DSANITIZE=address
611
+ - job_b_ubu_ubsan_clang : &job_b_ubu_ubsan_clang
612
+ << : *workflow_trigger_on_tags
613
+ name : b_ubu_ubsan_clang
614
+ cmake_options : -DSANITIZE=address
615
+
589
616
# -----------------------------------------------------------------------------------------------
590
617
jobs :
591
618
@@ -731,14 +758,7 @@ jobs:
731
758
# this runs 2x faster on xlarge but takes 4x more resources (compared to medium).
732
759
# Enough other jobs depend on it that it's worth it though.
733
760
<< : *base_ubuntu2004_xlarge
734
- steps :
735
- - checkout
736
- - run : *run_build
737
- - store_artifacts : *artifacts_solc
738
- - store_artifacts : *artifact_solidity_upgrade
739
- - store_artifacts : *artifact_yul_phaser
740
- - persist_to_workspace : *artifacts_executables
741
- - gitter_notify_failure_unless_pr
761
+ << : *steps_build
742
762
743
763
# x64 ASAN build, for testing for memory related bugs
744
764
b_ubu_asan : &b_ubu_asan
@@ -748,12 +768,7 @@ jobs:
748
768
CMAKE_OPTIONS : -DSANITIZE=address
749
769
MAKEFLAGS : -j 3
750
770
CMAKE_BUILD_TYPE : Release
751
- steps :
752
- - checkout
753
- - run : *run_build
754
- - store_artifacts : *artifacts_solc
755
- - persist_to_workspace : *artifacts_executables
756
- - gitter_notify_failure_unless_pr
771
+ << : *steps_build
757
772
758
773
b_ubu_clang : &b_ubu_clang
759
774
<< : *base_ubuntu2004_clang_large
@@ -762,42 +777,21 @@ jobs:
762
777
CC : clang
763
778
CXX : clang++
764
779
MAKEFLAGS : -j 10
765
- steps :
766
- - checkout
767
- - run : *run_build
768
- - store_artifacts : *artifacts_solc
769
- - persist_to_workspace : *artifacts_executables
770
- - gitter_notify_failure_unless_pr
780
+ << : *steps_build
771
781
772
- b_ubu_asan_clang : &b_ubu_asan_clang
773
- # This runs a bit faster on large and xlarge but on nightly efficiency matters more.
774
- << : *base_ubuntu2004_clang
775
- environment :
776
- CC : clang
777
- CXX : clang++
778
- CMAKE_OPTIONS : -DSANITIZE=address
779
- MAKEFLAGS : -j 3
780
- steps :
781
- - checkout
782
- - run : *run_build
783
- - store_artifacts : *artifacts_solc
784
- - persist_to_workspace : *artifacts_executables
785
- - gitter_notify_failure_unless_pr
786
-
787
- b_ubu_ubsan_clang : &b_ubu_ubsan_clang
782
+ b_ubu_san_clang :
788
783
# This runs a bit faster on large and xlarge but on nightly efficiency matters more.
784
+ parameters :
785
+ cmake_options :
786
+ type : string
789
787
<< : *base_ubuntu2004_clang
790
788
environment :
789
+ TERM : xterm
791
790
CC : clang
792
791
CXX : clang++
793
- CMAKE_OPTIONS : -DSANITIZE=undefined
794
792
MAKEFLAGS : -j 3
795
- steps :
796
- - checkout
797
- - run : *run_build
798
- - store_artifacts : *artifacts_solc
799
- - persist_to_workspace : *artifacts_executables
800
- - gitter_notify_failure_unless_pr
793
+ CMAKE_OPTIONS : << parameters.cmake_options >>
794
+ << : *steps_build
801
795
802
796
b_ubu_release : &b_ubu_release
803
797
<< : *b_ubu
@@ -949,19 +943,17 @@ jobs:
949
943
- build/test/tools/solfuzzer
950
944
- gitter_notify_failure_unless_pr
951
945
952
- t_osx_soltest :
946
+ t_osx_soltest : &t_osx_soltest
953
947
<< : *base_osx
954
948
environment :
955
949
EVM : << pipeline.parameters.evm-version >>
956
950
OPTIMIZE : 0
957
951
TERM : xterm
958
952
steps :
959
953
- checkout
960
- - restore_cache :
961
- keys :
962
- - dependencies-osx-{{ arch }}-{{ checksum ".circleci/osx_install_dependencies.sh" }}
963
- - attach_workspace :
964
- at : .
954
+ - when :
955
+ condition : true
956
+ << : *steps_install_dependencies_osx
965
957
- run : *run_soltest
966
958
- store_test_results : *store_test_results
967
959
- store_artifacts : *artifacts_test_results
@@ -971,11 +963,9 @@ jobs:
971
963
<< : *base_osx
972
964
steps :
973
965
- checkout
974
- - restore_cache :
975
- keys :
976
- - dependencies-osx-{{ arch }}-{{ checksum ".circleci/osx_install_dependencies.sh" }}
977
- - attach_workspace :
978
- at : .
966
+ - when :
967
+ condition : true
968
+ << : *steps_install_dependencies_osx
979
969
- run : *run_cmdline_tests
980
970
- store_artifacts : *artifacts_test_results
981
971
- gitter_notify_failure_unless_pr
@@ -1519,13 +1509,13 @@ workflows:
1519
1509
1520
1510
# ASan build and tests
1521
1511
- b_ubu_asan : *workflow_trigger_on_tags
1522
- - b_ubu_asan_clang : *workflow_trigger_on_tags
1512
+ - b_ubu_san_clang : *job_b_ubu_asan_clang
1523
1513
- t_ubu_asan_soltest : *workflow_ubuntu2004_asan
1524
1514
- t_ubu_asan_clang_soltest : *workflow_ubuntu2004_asan_clang
1525
1515
- t_ubu_asan_cli : *workflow_ubuntu2004_asan
1526
1516
1527
1517
# UBSan build and tests
1528
- - b_ubu_ubsan_clang : *workflow_trigger_on_tags
1518
+ - b_ubu_san_clang : *job_b_ubu_ubsan_clang
1529
1519
- t_ubu_ubsan_clang_soltest : *workflow_ubuntu2004_ubsan_clang
1530
1520
- t_ubu_ubsan_clang_cli : *workflow_ubuntu2004_ubsan_clang
1531
1521
0 commit comments