@@ -2,8 +2,12 @@ image: "ubuntu:noble"
22
33variables :
44 DOCKER_DRIVER : overlay2
5- FAST_MODE : " false" # when "true", only run linter on arm and unit/functional tests on linux64, skip everything else
65 CI_FAILFAST_TEST_LEAVE_DANGLING : " 1" # Gitlab CI does not care about dangling process and setting this variable avoids killing the CI script itself on error
6+ # BUILD_TARGETS: '/^(arm-linux|linux64|linux64_fuzz|linux64_multiprocess|linux64_nowallet|linux64_sqlite|linux64_tsan|linux64_ubsan|mac|win64)$/'
7+ # Set BUILD_TARGETS variable in Gitlab CI/CD settings using the template above excluding the build targets you don't need.
8+ # For example, the old FAST_MODE would be '/^(arm-linux|linux64)$/'.
9+ # If BUILD_TARGETS is not set or it's an empty string then no filtering is applied.
10+ # NOTE: "Value" MUST be wrapped in '' i.e. it should be '/reg_exp/' ('' included) and not /reg_exp/ (no '').
711
812workflow :
913 rules :
@@ -38,13 +42,16 @@ builder-image:
3842.build-depends-template :
3943 stage : build-depends
4044 rules :
41- - when : on_success
45+ - if : ' $BUILD_TARGETS == null || $BUILD_TARGETS == "" || $BUILD_TARGET =~ $BUILD_TARGETS'
46+ when : on_success
47+ - when : never
4248 needs :
4349 - builder-image
4450 image : $CI_REGISTRY_IMAGE:builder-$CI_COMMIT_REF_SLUG
4551 before_script :
4652 - |
4753 echo BUILD_TARGET="${BUILD_TARGET}"
54+ echo BUILD_TARGETS="${BUILD_TARGETS}"
4855 source ./ci/dash/matrix.sh
4956 echo HOST="${HOST}"
5057 echo DEP_OPTS="${DEP_OPTS}"
@@ -72,10 +79,13 @@ builder-image:
7279.base-template :
7380 image : $CI_REGISTRY_IMAGE:builder-$CI_COMMIT_REF_SLUG
7481 rules :
75- - when : on_success
82+ - if : ' $BUILD_TARGETS == null || $BUILD_TARGETS == "" || $BUILD_TARGET =~ $BUILD_TARGETS'
83+ when : on_success
84+ - when : never
7685 before_script :
7786 - export CACHE_DIR=$CI_PROJECT_DIR/cache
7887 - echo BUILD_TARGET=$BUILD_TARGET
88+ - echo BUILD_TARGETS="${BUILD_TARGETS}"
7989 - source ./ci/dash/matrix.sh
8090 - echo HOST=${HOST}
8191 - echo DEP_OPTS=${DEP_OPTS}
@@ -165,12 +175,6 @@ builder-image:
165175 - testlogs
166176 expire_in : 3 days
167177
168- .skip-in-fast-mode-template :
169- rules :
170- - if : ' $FAST_MODE == "true"'
171- when : never
172- - when : on_success
173-
174178# ##
175179
176180arm-linux-gnueabihf :
@@ -181,7 +185,6 @@ arm-linux-gnueabihf:
181185x86_64-w64-mingw32 :
182186 extends :
183187 - .build-depends-template
184- - .skip-in-fast-mode-template
185188 variables :
186189 BUILD_TARGET : win64
187190
@@ -193,21 +196,18 @@ x86_64-pc-linux-gnu:
193196x86_64-pc-linux-gnu_nowallet :
194197 extends :
195198 - .build-depends-template
196- - .skip-in-fast-mode-template
197199 variables :
198200 BUILD_TARGET : linux64_nowallet
199201
200202x86_64-pc-linux-gnu_multiprocess :
201203 extends :
202204 - .build-depends-template
203- - .skip-in-fast-mode-template
204205 variables :
205206 BUILD_TARGET : linux64_multiprocess
206207
207208x86_64-apple-darwin :
208209 extends :
209210 - .build-depends-template
210- - .skip-in-fast-mode-template
211211 variables :
212212 BUILD_TARGET : mac
213213
@@ -223,7 +223,6 @@ arm-linux-build:
223223win64-build :
224224 extends :
225225 - .build-template
226- - .skip-in-fast-mode-template
227226 needs :
228227 - x86_64-w64-mingw32
229228 variables :
@@ -239,7 +238,6 @@ linux64-build:
239238linux64_sqlite-build :
240239 extends :
241240 - .build-template
242- - .skip-in-fast-mode-template
243241 needs :
244242 - x86_64-pc-linux-gnu
245243 variables :
@@ -248,7 +246,6 @@ linux64_sqlite-build:
248246linux64_fuzz-build :
249247 extends :
250248 - .build-template
251- - .skip-in-fast-mode-template
252249 needs :
253250 - x86_64-pc-linux-gnu
254251 variables :
@@ -257,7 +254,6 @@ linux64_fuzz-build:
257254# linux64_asan-build:
258255# extends:
259256# - .build-template
260- # - .skip-in-fast-mode-template
261257# needs:
262258# - x86_64-pc-linux-gnu
263259# variables:
@@ -266,7 +262,6 @@ linux64_fuzz-build:
266262linux64_tsan-build :
267263 extends :
268264 - .build-template
269- - .skip-in-fast-mode-template
270265 needs :
271266 - x86_64-pc-linux-gnu_multiprocess
272267 variables :
@@ -275,7 +270,6 @@ linux64_tsan-build:
275270linux64_ubsan-build :
276271 extends :
277272 - .build-template
278- - .skip-in-fast-mode-template
279273 needs :
280274 - x86_64-pc-linux-gnu
281275 variables :
@@ -284,7 +278,6 @@ linux64_ubsan-build:
284278linux64_nowallet-build :
285279 extends :
286280 - .build-template
287- - .skip-in-fast-mode-template
288281 needs :
289282 - x86_64-pc-linux-gnu_nowallet
290283 variables :
@@ -293,7 +286,6 @@ linux64_nowallet-build:
293286linux64_multiprocess-build :
294287 extends :
295288 - .build-template
296- - .skip-in-fast-mode-template
297289 needs :
298290 - x86_64-pc-linux-gnu_multiprocess
299291 variables :
@@ -302,7 +294,6 @@ linux64_multiprocess-build:
302294# linux64_valgrind-build:
303295# extends:
304296# - .build-template
305- # - .skip-in-fast-mode-template
306297# needs:
307298# - x86_64-pc-linux-gnu
308299# variables:
@@ -311,7 +302,6 @@ linux64_multiprocess-build:
311302mac-build :
312303 extends :
313304 - .build-template
314- - .skip-in-fast-mode-template
315305 needs :
316306 - x86_64-apple-darwin
317307 variables :
@@ -329,7 +319,6 @@ linux64-test:
329319linux64_sqlite-test :
330320 extends :
331321 - .test-template
332- - .skip-in-fast-mode-template
333322 needs :
334323 - linux64_sqlite-build
335324 variables :
@@ -338,7 +327,6 @@ linux64_sqlite-test:
338327# linux64_asan-test:
339328# extends:
340329# - .test-template
341- # - .skip-in-fast-mode-template
342330# needs:
343331# - linux64_asan-build
344332# variables:
@@ -347,7 +335,6 @@ linux64_sqlite-test:
347335linux64_tsan-test :
348336 extends :
349337 - .test-template
350- - .skip-in-fast-mode-template
351338 needs :
352339 - linux64_tsan-build
353340 variables :
@@ -356,7 +343,6 @@ linux64_tsan-test:
356343linux64_ubsan-test :
357344 extends :
358345 - .test-template
359- - .skip-in-fast-mode-template
360346 needs :
361347 - linux64_ubsan-build
362348 variables :
@@ -365,7 +351,6 @@ linux64_ubsan-test:
365351linux64_multiprocess-test :
366352 extends :
367353 - .test-template
368- - .skip-in-fast-mode-template
369354 needs :
370355 - linux64_multiprocess-build
371356 variables :
@@ -374,7 +359,6 @@ linux64_multiprocess-test:
374359linux64_nowallet-test :
375360 extends :
376361 - .test-template
377- - .skip-in-fast-mode-template
378362 needs :
379363 - linux64_nowallet-build
380364 variables :
@@ -383,7 +367,6 @@ linux64_nowallet-test:
383367# linux64_valgrind-test:
384368# extends:
385369# - .test-template
386- # - .skip-in-fast-mode-template
387370# needs:
388371# - linux64_valgrind-build
389372# variables:
0 commit comments