@@ -121,18 +121,7 @@ defaults:
121
121
no_output_timeout : 30m
122
122
command : ./.circleci/soltest_all.sh
123
123
124
- - run_cmdline_tests : &run_cmdline_tests
125
- name : command line tests
126
- no_output_timeout : 30m
127
- command : ./test/cmdlineTests.sh
128
-
129
- - run_docs_pragma_min_version : &run_docs_pragma_min_version
130
- name : docs pragma version check
131
- command : ./scripts/docs_version_pragma_check.sh
132
-
133
- - test_ubuntu1604_clang : &test_ubuntu1604_clang
134
- docker :
135
- - image : << pipeline.parameters.ubuntu-1604-clang-ossfuzz-docker-image >>
124
+ - run_soltest_steps : &run_soltest_steps
136
125
steps :
137
126
- checkout
138
127
- attach_workspace :
@@ -141,50 +130,57 @@ defaults:
141
130
- store_test_results : *store_test_results
142
131
- store_artifacts : *artifacts_test_results
143
132
144
- - test_ubuntu2004_clang : &test_ubuntu2004_clang
145
- docker :
146
- - image : << pipeline.parameters.ubuntu-2004-clang-docker-image >>
133
+ - run_soltest_all_steps : &run_soltest_all_steps
147
134
steps :
148
135
- checkout
149
136
- attach_workspace :
150
137
at : build
151
- - run : *run_soltest
138
+ - run : *run_soltest_all
152
139
- store_test_results : *store_test_results
153
140
- store_artifacts : *artifacts_test_results
154
141
155
- - test_ubuntu2004 : &test_ubuntu2004
156
- docker :
157
- - image : << pipeline.parameters.ubuntu-2004-docker-image >>
158
- parallelism : 6
142
+ - run_cmdline_tests : &run_cmdline_tests
143
+ name : command line tests
144
+ no_output_timeout : 30m
145
+ command : ./test/cmdlineTests.sh
146
+
147
+ - run_cmdline_tests_steps : &run_cmdline_tests_steps
159
148
steps :
160
149
- checkout
161
150
- attach_workspace :
162
151
at : build
163
- - run : *run_soltest_all
152
+ - run : *run_cmdline_tests
164
153
- store_test_results : *store_test_results
165
154
- store_artifacts : *artifacts_test_results
166
155
156
+ - run_docs_pragma_min_version : &run_docs_pragma_min_version
157
+ name : docs pragma version check
158
+ command : ./scripts/docs_version_pragma_check.sh
159
+
160
+ - test_ubuntu1604_clang : &test_ubuntu1604_clang
161
+ docker :
162
+ - image : << pipeline.parameters.ubuntu-1604-clang-ossfuzz-docker-image >>
163
+ << : *run_soltest_steps
164
+
165
+ - test_ubuntu2004_clang : &test_ubuntu2004_clang
166
+ docker :
167
+ - image : << pipeline.parameters.ubuntu-2004-clang-docker-image >>
168
+ << : *run_soltest_steps
169
+
170
+ - test_ubuntu2004 : &test_ubuntu2004
171
+ docker :
172
+ - image : << pipeline.parameters.ubuntu-2004-docker-image >>
173
+ parallelism : 6
174
+ << : *run_soltest_all_steps
175
+
167
176
- test_asan : &test_asan
168
177
<< : *test_ubuntu2004
169
- steps :
170
- - checkout
171
- - attach_workspace :
172
- at : build
173
- - run :
174
- << : *run_soltest
175
- - store_test_results : *store_test_results
176
- - store_artifacts : *artifacts_test_results
178
+ << : *run_soltest_steps
177
179
178
- - test_asan_clang : &test_asan_clang
179
- << : *test_ubuntu2004_clang
180
- steps :
181
- - checkout
182
- - attach_workspace :
183
- at : build
184
- - run :
185
- << : *run_soltest
186
- - store_test_results : *store_test_results
187
- - store_artifacts : *artifacts_test_results
180
+ - test_ubuntu2004_clang_cli : &test_ubuntu2004_clang_cli
181
+ docker :
182
+ - image : << pipeline.parameters.ubuntu-2004-clang-docker-image >>
183
+ << : *run_cmdline_tests_steps
188
184
189
185
# --------------------------------------------------------------------------
190
186
# Workflow Templates
@@ -239,6 +235,11 @@ defaults:
239
235
requires :
240
236
- b_ubu_asan_clang
241
237
238
+ - workflow_ubuntu2004_ubsan_clang : &workflow_ubuntu2004_ubsan_clang
239
+ << : *workflow_trigger_on_tags
240
+ requires :
241
+ - b_ubu_ubsan_clang
242
+
242
243
- workflow_emscripten : &workflow_emscripten
243
244
<< : *workflow_trigger_on_tags
244
245
requires :
@@ -447,8 +448,7 @@ jobs:
447
448
- store_artifacts : *artifacts_solc
448
449
- persist_to_workspace : *artifacts_executables
449
450
450
-
451
- b_ubu_asan_clang : &build_ubuntu2004_clang
451
+ b_ubu_asan_clang : &b_ubu_asan_clang
452
452
docker :
453
453
- image : << pipeline.parameters.ubuntu-2004-clang-docker-image >>
454
454
environment :
@@ -462,6 +462,20 @@ jobs:
462
462
- store_artifacts : *artifacts_solc
463
463
- persist_to_workspace : *artifacts_executables
464
464
465
+ b_ubu_ubsan_clang : &b_ubu_ubsan_clang
466
+ docker :
467
+ - image : << pipeline.parameters.ubuntu-2004-clang-docker-image >>
468
+ environment :
469
+ CC : clang
470
+ CXX : clang++
471
+ CMAKE_OPTIONS : -DSANITIZE=undefined
472
+ MAKEFLAGS : -j 3
473
+ steps :
474
+ - checkout
475
+ - run : *run_build
476
+ - store_artifacts : *artifacts_solc
477
+ - persist_to_workspace : *artifacts_executables
478
+
465
479
b_ubu : &build_ubuntu2004
466
480
resource_class : xlarge
467
481
docker :
@@ -768,13 +782,7 @@ jobs:
768
782
- image : << pipeline.parameters.ubuntu-2004-docker-image >>
769
783
environment :
770
784
TERM : xterm
771
- steps :
772
- - checkout
773
- - attach_workspace :
774
- at : build
775
- - run : *run_cmdline_tests
776
- - store_test_results : *store_test_results
777
- - store_artifacts : *artifacts_test_results
785
+ << : *run_cmdline_tests_steps
778
786
779
787
t_ubu_release_cli : &t_ubu_release_cli
780
788
<< : *t_ubu_cli
@@ -784,14 +792,7 @@ jobs:
784
792
environment :
785
793
TERM : xterm
786
794
ASAN_OPTIONS : check_initialization_order=true:detect_stack_use_after_return=true:strict_init_order=true:strict_string_checks=true:detect_invalid_pointer_pairs=2
787
- steps :
788
- - checkout
789
- - attach_workspace :
790
- at : build
791
- - run :
792
- << : *run_cmdline_tests
793
- - store_test_results : *store_test_results
794
- - store_artifacts : *artifacts_test_results
795
+ << : *run_cmdline_tests_steps
795
796
796
797
t_ubu_asan_constantinople :
797
798
<< : *test_asan
@@ -802,13 +803,19 @@ jobs:
802
803
ASAN_OPTIONS : check_initialization_order=true:detect_stack_use_after_return=true:strict_init_order=true:strict_string_checks=true:detect_invalid_pointer_pairs=2
803
804
804
805
t_ubu_asan_constantinople_clang :
805
- << : *test_asan_clang
806
+ << : *test_ubuntu2004_clang
806
807
environment :
807
808
EVM : constantinople
808
809
OPTIMIZE : 0
809
810
SOLTEST_FLAGS : --no-smt
810
811
ASAN_OPTIONS : check_initialization_order=true:detect_stack_use_after_return=true:strict_init_order=true:strict_string_checks=true:detect_invalid_pointer_pairs=2
811
812
813
+ t_ubu_ubsan_clang :
814
+ << : *test_ubuntu2004_clang
815
+
816
+ t_ubu_ubsan_clang_cli :
817
+ << : *test_ubuntu2004_clang_cli
818
+
812
819
t_ems_solcjs :
813
820
docker :
814
821
- image : << pipeline.parameters.ubuntu-2004-docker-image >>
@@ -1208,6 +1215,11 @@ workflows:
1208
1215
- t_ubu_asan_constantinople_clang : *workflow_ubuntu2004_asan_clang
1209
1216
- t_ubu_asan_cli : *workflow_ubuntu2004_asan
1210
1217
1218
+ # UBSan build and tests
1219
+ - b_ubu_ubsan_clang : *workflow_trigger_on_tags
1220
+ - t_ubu_ubsan_clang : *workflow_ubuntu2004_ubsan_clang
1221
+ - t_ubu_ubsan_clang_cli : *workflow_ubuntu2004_ubsan_clang
1222
+
1211
1223
# Emscripten build and tests that take more than 15 minutes to execute
1212
1224
- b_ems : *workflow_trigger_on_tags
1213
1225
- t_ems_ext :
0 commit comments