aboutsummaryrefslogtreecommitdiff
path: root/.cirrus.yml
diff options
context:
space:
mode:
authorMarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>2023-03-27 11:24:45 +0200
committerMarcoFalke <*~=`'#}+{/-|&$^_@721217.xyz>2023-04-11 14:11:48 +0200
commitfacae3b149d7dfe84ef46c69c1d6fb586c08848d (patch)
treea4852e58eac18fc606ee100707abce7c301461dd /.cirrus.yml
parentb24553c04cc4f6da5491f4648b67ae5a1b2769f9 (diff)
downloadbitcoin-facae3b149d7dfe84ef46c69c1d6fb586c08848d.tar.xz
ci: Use Cirrus CI dockerfile env
Diffstat (limited to '.cirrus.yml')
-rw-r--r--.cirrus.yml52
1 files changed, 32 insertions, 20 deletions
diff --git a/.cirrus.yml b/.cirrus.yml
index 5c319c08b7..26cc383647 100644
--- a/.cirrus.yml
+++ b/.cirrus.yml
@@ -47,6 +47,7 @@ container_depends_template: &CONTAINER_DEPENDS_TEMPLATE
cpu: 2
greedy: true
memory: 8G # Set to 8GB to avoid OOM. https://cirrus-ci.org/guide/linux/#linux-containers
+ dockerfile: ci/test_imagefile # https://cirrus-ci.org/guide/docker-builder-vm/#dockerfile-as-a-ci-environment
depends_built_cache:
folder: "depends/built"
fingerprint_script: echo $CIRRUS_TASK_NAME $(git rev-parse HEAD:depends)
@@ -83,14 +84,15 @@ task:
name: 'tidy [lunar]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: ubuntu:lunar
cpu: 2
memory: 5G
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:lunar
+ FILE_ENV: "./ci/test/00_setup_env_native_tidy.sh"
# For faster CI feedback, immediately schedule the linters
<< : *CREDITS_TEMPLATE
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_native_tidy.sh"
task:
name: "Win64 native [vs2022]"
@@ -195,6 +197,7 @@ task:
image: debian:bullseye
cpu: 2
memory: 8G
+ # docker_arguments: # Can use dockerfile after https://github.com/cirruslabs/cirrus-ci-docs/issues/1154
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
FILE_ENV: "./ci/test/00_setup_env_arm.sh"
@@ -204,22 +207,24 @@ task:
name: 'Win64 [unit tests, no gui tests, no boost::process, no functional tests] [jammy]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: ubuntu:jammy
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:jammy
+ FILE_ENV: "./ci/test/00_setup_env_win64.sh"
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_win64.sh"
task:
name: '32-bit + dash [gui] [CentOS 8]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: quay.io/centos/centos:stream8
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: quay.io/centos/centos:stream8
+ FILE_ENV: "./ci/test/00_setup_env_i686_centos.sh"
# For faster CI feedback, immediately schedule one task that runs all tests
<< : *CREDITS_TEMPLATE
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
PACKAGE_MANAGER_INSTALL: "yum install -y"
- FILE_ENV: "./ci/test/00_setup_env_i686_centos.sh"
task:
name: '[previous releases, uses qt5 dev package and some depends packages, DEBUG] [unsigned char] [buster]'
@@ -235,21 +240,23 @@ task:
name: '[TSan, depends, gui] [lunar]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: ubuntu:lunar
cpu: 6 # Increase CPU and Memory to avoid timeout
memory: 24G
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:lunar
+ FILE_ENV: "./ci/test/00_setup_env_native_tsan.sh"
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_native_tsan.sh"
task:
name: '[MSan, depends] [lunar]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: ubuntu:lunar
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:lunar
+ FILE_ENV: "./ci/test/00_setup_env_native_msan.sh"
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_native_msan.sh"
MAKEJOBS: "-j4" # Avoid excessive memory use due to MSan
task:
@@ -274,38 +281,43 @@ task:
name: '[fuzzer,address,undefined,integer, no depends] [lunar]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: ubuntu:lunar
cpu: 4 # Increase CPU and memory to avoid timeout
memory: 16G
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:lunar
+ FILE_ENV: "./ci/test/00_setup_env_native_fuzz.sh"
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_native_fuzz.sh"
task:
name: '[multiprocess, i686, DEBUG] [focal]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: ubuntu:focal
cpu: 4
memory: 16G # The default memory is sometimes just a bit too small, so double everything
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:focal
+ FILE_ENV: "./ci/test/00_setup_env_i686_multiprocess.sh"
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_i686_multiprocess.sh"
task:
name: '[no wallet, libbitcoinkernel] [buster]'
<< : *GLOBAL_TASK_TEMPLATE
container:
- image: debian:buster
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: debian:buster
+ FILE_ENV: "./ci/test/00_setup_env_native_nowallet_libbitcoinkernel.sh"
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_native_nowallet_libbitcoinkernel.sh"
task:
name: 'macOS 10.15 [gui, no tests] [focal]'
<< : *CONTAINER_DEPENDS_TEMPLATE
container:
- image: ubuntu:focal
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:focal
+ FILE_ENV: "./ci/test/00_setup_env_mac.sh"
macos_sdk_cache:
folder: "depends/SDKs/$MACOS_SDK"
fingerprint_key: "$MACOS_SDK"
@@ -313,7 +325,6 @@ task:
env:
MACOS_SDK: "Xcode-12.2-12B45b-extracted-SDK-with-libcxx-headers"
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_mac.sh"
task:
name: 'macOS 13 native arm64 [gui, sqlite only] [no depends]'
@@ -336,7 +347,9 @@ task:
name: 'ARM64 Android APK [jammy]'
<< : *CONTAINER_DEPENDS_TEMPLATE
container:
- image: ubuntu:jammy
+ docker_arguments:
+ CI_IMAGE_NAME_TAG: ubuntu:jammy
+ FILE_ENV: "./ci/test/00_setup_env_android.sh"
android_sdk_cache:
folder: "depends/SDKs/android"
fingerprint_key: "ANDROID_API_LEVEL=28 ANDROID_BUILD_TOOLS_VERSION=28.0.3 ANDROID_NDK_VERSION=23.2.8568313"
@@ -346,4 +359,3 @@ task:
<< : *MAIN_TEMPLATE
env:
<< : *CIRRUS_EPHEMERAL_WORKER_TEMPLATE_ENV
- FILE_ENV: "./ci/test/00_setup_env_android.sh"