bitcoin/ci/test
merge-script ffe4261cb0
Some checks failed
CI / ASan + LSan + UBSan + integer, no depends, USDT (push) Has been cancelled
CI / test each commit (push) Has been cancelled
CI / macOS 14 native, arm64, no depends, sqlite only, gui (push) Has been cancelled
CI / Win64 native, VS 2022 (push) Has been cancelled
Merge bitcoin/bitcoin#30935: ci: Approximate MAKEJOBS in image build phase
fa71bedf86 ci: Approximate MAKEJOBS in image build phase (MarcoFalke)

Pull request description:

  The `MAKEJOBS` env var is the default in image builds, which is fine, because it is only relevant when building msan (or iwyu) and only differs when setting MAKEJOBS to something other than `nproc` (currently used as an approximation).

  So the normal workflow of `MAKEJOBS="-j$(nproc)" FILE_ENV="./ci/test/00_setup_env_native_msan.sh" ./ci/test_run_all.sh` already works today.

  However, `MAKEJOBS="-j1" FILE_ENV="./ci/test/00_setup_env_native_msan.sh" ./ci/test_run_all.sh` does not.

  This is hard to fix, because making the env var a build arg means that changing it (and only it) requires a new (expensive and redundant) build.

  So add an option `HAVE_CGROUP_CPUSET`, which can be set to approximate `MAKEJOBS` a bit. Can be tested via:

  `HAVE_CGROUP_CPUSET=yo MAKEJOBS="-j_something"  FILE_ENV="./ci/test/00_setup_env_native_msan.sh" ./ci/test_run_all.sh`

ACKs for top commit:
  fanquake:
    ACK fa71bedf86

Tree-SHA512: 43ef194c71d726f4cfa3fe08a5894c7872150f37da7e4fa0c2d89e4572bc63acadb5dae3286a5e5cc14a8ce3e1ebcc14571f1a3541e8db2d18d2f7503764a2f3
2024-10-22 15:46:46 +01:00
..
00_setup_env.sh Merge bitcoin/bitcoin#30869: ci: Print inner env, Make ccache config more flexible 2024-09-19 10:42:09 +01:00
00_setup_env_arm.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00
00_setup_env_i686_centos.sh ci: Do not install Autotools packages 2024-09-14 13:09:11 +01:00
00_setup_env_i686_multiprocess.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00
00_setup_env_mac_cross.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00
00_setup_env_mac_native.sh ci: Remove natpmp build option and libnatpmp dependency 2024-09-30 11:37:56 +02:00
00_setup_env_native_asan.sh ci: Remove natpmp build option and libnatpmp dependency 2024-09-30 11:37:56 +02:00
00_setup_env_native_fuzz.sh ci: Bump default CCACHE_MAXSIZE to 500M 2024-09-12 12:34:02 +02:00
00_setup_env_native_fuzz_with_msan.sh ci: Bump default CCACHE_MAXSIZE to 500M 2024-09-12 12:34:02 +02:00
00_setup_env_native_fuzz_with_valgrind.sh ci: add LLVM_SYMBOLIZER_PATH to Valgrind fuzz job 2024-09-24 17:04:44 +01:00
00_setup_env_native_msan.sh ci: Bump default CCACHE_MAXSIZE to 500M 2024-09-12 12:34:02 +02:00
00_setup_env_native_nowallet_libbitcoinkernel.sh Bump python minimum supported version to 3.10 2024-08-28 15:53:07 +02:00
00_setup_env_native_previous_releases.sh Merge bitcoin/bitcoin#30527: Bump python minimum supported version to 3.10 2024-10-16 08:35:26 -04:00
00_setup_env_native_tidy.sh ci: Remove natpmp build option and libnatpmp dependency 2024-09-30 11:37:56 +02:00
00_setup_env_native_tsan.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00
00_setup_env_native_valgrind.sh ci: Remove natpmp build option and libnatpmp dependency 2024-09-30 11:37:56 +02:00
00_setup_env_s390x.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00
00_setup_env_win64.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00
01_base_install.sh ci: Approximate MAKEJOBS in image build phase 2024-10-08 17:09:54 +02:00
02_run_container.sh ci: Approximate MAKEJOBS in image build phase 2024-10-08 17:09:54 +02:00
03_test_script.sh Merge bitcoin/bitcoin#31045: ci: Add missing -DWERROR=ON to test-each-commit 2024-10-08 15:36:30 +01:00
GetCMakeLogFiles.cmake ci: Handle log files regardless of CMake's version 2024-09-07 14:38:14 +01:00
wrap-valgrind.sh scripted-diff: Bump copyright headers 2021-12-30 19:36:57 +02:00
wrap-wine.sh ci: Migrate CI scripts to CMake 2024-08-16 21:19:13 +01:00