@@ -67,20 +67,6 @@ compute_credits_template: &CREDITS_TEMPLATE
67
67
# Only use credits for pull requests to the main repo
68
68
use_compute_credits : $CIRRUS_REPO_FULL_NAME == 'ElementsProject/elements' && $CIRRUS_PR != ""
69
69
70
- task :
71
- name : ' lint [bionic]'
72
- << : *BASE_TEMPLATE
73
- container :
74
- image : ubuntu:bionic # For python 3.6, oldest supported version according to doc/dependencies.md
75
- cpu : 1
76
- memory : 1G
77
- # For faster CI feedback, immediately schedule the linters
78
- << : *CREDITS_TEMPLATE
79
- lint_script :
80
- - ./ci/lint_run_all.sh
81
- env :
82
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
83
-
84
70
win64_native_common : &win64_native_common
85
71
<< : *FILTER_TEMPLATE
86
72
windows_container :
@@ -171,181 +157,9 @@ task:
171
157
- mkdir artifactsdir
172
158
# Heavier tests are moved to a secondary task
173
159
# Exclude feature_dbcrash and feature_fee_estimation, failing https://github.com/ElementsProject/elements/pull/1298
174
- - python test\functional\test_runner.py --tmpdirprefix=artifactsdir/ --ci --quiet --combinedlogslen=4000 --jobs=4 --timeout-factor=8 --extended --exclude wallet_avoidreuse,feature_trim_headers,feature_dbcrash,feature_fee_estimation
175
- artifacts :
176
- paths :
177
- - artifactsdir/**/*.log
178
- - artifactsdir/**/tmp*
179
- - artifactsdir/**/*.conf
180
-
181
- task :
182
- name : " Win64 native [vs2022] (Long running functional tests + unit tests)"
183
- << : *win64_native_common
184
- unit_tests_script :
185
- - src\test_elements.exe -l test_suite
186
- - src\bench_elements.exe > NUL
187
- - python test\util\test_runner.py
188
- - python test\util\rpcauth-test.py
189
- functional_tests_script :
190
- # Increase the dynamic port range to the maximum allowed value to mitigate "OSError: [WinError 10048] Only one usage of each socket address (protocol/network address/port) is normally permitted".
191
- # See: https://docs.microsoft.com/en-us/biztalk/technical-guides/settings-that-can-be-modified-to-improve-network-performance
192
- - netsh int ipv4 set dynamicport tcp start=1025 num=64511
193
- - netsh int ipv6 set dynamicport tcp start=1025 num=64511
194
- - mkdir artifactsdir
195
- # Execute tests excluded from the main task
196
- # Ignore failures for now until https://github.com/ElementsProject/elements/pull/1298 is merged
197
- - python test\functional\test_runner.py --tmpdirprefix=artifactsdir/ --ci --quiet --combinedlogslen=4000 --jobs=4 --timeout-factor=8 wallet_avoidreuse feature_trim_headers feature_dbcrash feature_fee_estimation || true
160
+ # - python test\functional\test_runner.py --tmpdirprefix=artifactsdir/ --ci --quiet --combinedlogslen=4000 --jobs=4 --timeout-factor=8 --extended --exclude wallet_avoidreuse,feature_trim_headers,feature_dbcrash,feature_fee_estimation
198
161
artifacts :
199
162
paths :
200
163
- artifactsdir/**/*.log
201
164
- artifactsdir/**/tmp*
202
165
- artifactsdir/**/*.conf
203
-
204
- task :
205
- name : ' ARM [unit tests, no functional tests] [bullseye]'
206
- << : *GLOBAL_TASK_TEMPLATE
207
- container :
208
- image : debian:bullseye
209
- docker_arguments :
210
- CI_IMAGE_NAME_TAG : debian:bullseye
211
- << : *CREDITS_TEMPLATE
212
- env :
213
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
214
- FILE_ENV : " ./ci/test/00_setup_env_arm.sh"
215
-
216
- task :
217
- name : ' Win64 [unit tests, no gui tests, no boost::process, no functional tests] [jammy]'
218
- << : *GLOBAL_TASK_TEMPLATE
219
- container :
220
- image : ubuntu:jammy
221
- env :
222
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
223
- FILE_ENV : " ./ci/test/00_setup_env_win64.sh"
224
-
225
- task :
226
- name : ' 32-bit + dash [gui] [Rocky 8]'
227
- << : *GLOBAL_TASK_TEMPLATE
228
- container :
229
- image : quay.io/rockylinux/rockylinux:8
230
- env :
231
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
232
- PACKAGE_MANAGER_INSTALL : " yum install -y"
233
- FILE_ENV : " ./ci/test/00_setup_env_i686_centos.sh"
234
-
235
- task :
236
- name : ' [previous releases, uses qt5 dev package and some depends packages, DEBUG] [unsigned char] [bionic]'
237
- previous_releases_cache :
238
- folder : " releases"
239
- << : *GLOBAL_TASK_TEMPLATE
240
- << : *PERSISTENT_WORKER_TEMPLATE
241
- env :
242
- << : *PERSISTENT_WORKER_TEMPLATE_ENV
243
- FILE_ENV : " ./ci/test/00_setup_env_native_qt5.sh"
244
-
245
- task :
246
- name : ' [TSan, depends, gui] [2404]'
247
- << : *GLOBAL_TASK_TEMPLATE
248
- container :
249
- image : ubuntu:24.04
250
- cpu : 6 # Increase CPU and Memory to avoid timeout
251
- memory : 24G
252
- env :
253
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
254
- FILE_ENV : " ./ci/test/00_setup_env_native_tsan.sh"
255
- MAKEJOBS : " -j2" # Avoid excessive memory use due to MSan
256
-
257
- task :
258
- name : ' [MSan, depends] [focal]'
259
- << : *GLOBAL_TASK_TEMPLATE
260
- container :
261
- image : ubuntu:focal
262
- env :
263
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
264
- FILE_ENV : " ./ci/test/00_setup_env_native_msan.sh"
265
-
266
- task :
267
- name : ' [ASan + LSan + UBSan + integer, no depends] [jammy]'
268
- << : *GLOBAL_TASK_TEMPLATE
269
- container :
270
- image : ubuntu:jammy
271
- memory : 16G # ELEMENTS: need more memory
272
- cpu : 4 # ELEMENTS: cirrus wants more CPUs if you want more memory
273
- env :
274
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
275
- FILE_ENV : " ./ci/test/00_setup_env_native_asan.sh"
276
-
277
- task :
278
- name : ' [fuzzer,address,undefined,integer, no depends] [jammy]'
279
- << : *GLOBAL_TASK_TEMPLATE
280
- container :
281
- image : ubuntu:jammy
282
- cpu : 8 # Increase CPU and memory to avoid timeout
283
- memory : 16G
284
- env :
285
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
286
- FILE_ENV : " ./ci/test/00_setup_env_native_fuzz.sh"
287
-
288
- task :
289
- name : ' [multiprocess, i686, DEBUG] [focal]'
290
- # Disable for Elements for now; Multiprocess build is not supported or tested and fails CI.
291
- only_if : false
292
- << : *GLOBAL_TASK_TEMPLATE
293
- container :
294
- image : ubuntu:focal
295
- cpu : 4
296
- memory : 16G # The default memory is sometimes just a bit too small, so double everything
297
- env :
298
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
299
- FILE_ENV : " ./ci/test/00_setup_env_i686_multiprocess.sh"
300
-
301
- task :
302
- name : ' [no wallet, libbitcoinkernel] [bionic]'
303
- << : *GLOBAL_TASK_TEMPLATE
304
- container :
305
- image : ubuntu:bionic
306
- env :
307
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
308
- FILE_ENV : " ./ci/test/00_setup_env_native_nowallet_libbitcoinkernel.sh"
309
-
310
- task :
311
- name : ' macOS 10.15 [gui, no tests] [focal]'
312
- << : *BASE_TEMPLATE
313
- macos_sdk_cache :
314
- folder : " depends/SDKs/$MACOS_SDK"
315
- fingerprint_key : " $MACOS_SDK"
316
- << : *MAIN_TEMPLATE
317
- container :
318
- image : ubuntu:focal
319
- env :
320
- MACOS_SDK : " Xcode-12.2-12B45b-extracted-SDK-with-libcxx-headers"
321
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
322
- FILE_ENV : " ./ci/test/00_setup_env_mac.sh"
323
-
324
- task :
325
- name : ' macOS 13 native arm64 [gui, sqlite only] [no depends]'
326
- macos_instance :
327
- # Use latest image, but hardcode version to avoid silent upgrades (and breaks)
328
- image : ghcr.io/cirruslabs/macos-ventura-xcode:14.1 # https://cirrus-ci.org/guide/macOS
329
- << : *MACOS_NATIVE_TASK_TEMPLATE
330
- env :
331
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
332
- CI_USE_APT_INSTALL : " no"
333
- PACKAGE_MANAGER_INSTALL : " echo" # Nothing to do
334
- FILE_ENV : " ./ci/test/00_setup_env_mac_native_arm64.sh"
335
-
336
- task :
337
- name : ' ARM64 Android APK [focal]'
338
- # Disable for Elements; Android build is broken and unsupported.
339
- only_if : false
340
- android_sdk_cache :
341
- folder : " depends/SDKs/android"
342
- fingerprint_key : " ANDROID_API_LEVEL=28 ANDROID_BUILD_TOOLS_VERSION=28.0.3 ANDROID_NDK_VERSION=23.1.7779620"
343
- depends_sources_cache :
344
- folder : " depends/sources"
345
- fingerprint_script : git rev-list -1 HEAD ./depends
346
- << : *MAIN_TEMPLATE
347
- container :
348
- image : ubuntu:focal
349
- env :
350
- << : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
351
- FILE_ENV : " ./ci/test/00_setup_env_android.sh"
0 commit comments