0
0
Fork 0
mirror of https://github.com/bitcoin/bitcoin.git synced 2025-02-23 12:33:26 -05:00
bitcoin-bitcoin-core/ci/test
Ava Chow 6835e9686c
Merge bitcoin/bitcoin#31545: ci: optionally use local docker build cache
e87429a2d0 ci: optionally use local docker build cache (0xb10c)

Pull request description:

  By setting `DANGER_DOCKER_BUILD_CACHE_HOST_DIR`, the task-specific docker images built during the CI run can be cached. This allows, for example, ephemeral CI runners to reuse the docker images (or layers of it) from earlier runs, by persisting the image cache before the ephemeral CI runner is shut down. The cache keyed by `CONTAINER_NAME`.

  As `--cache-to` doesn't remove old cache files, the existing cache is removed after a successful `docker build` and the newly cached image is moved to it's location to avoid the cache from growing indefinitely with old, unused layers.

  When `--cache-from` doesn't find the directory, the cached version is a cache-miss, or the cache can't be imported for whatever other reason, it warns and `docker build` continues by building the docker image.

  This feature is opt-in. The documentation for the docker build cache of `type=local` can be found on https://docs.docker.com/build/cache/backends/local/

  This replaces https://github.com/bitcoin/bitcoin/pull/31377 - some of the discussion there might provide more context.

ACKs for top commit:
  maflcko:
    I haven't tested this, and it looks harmless and is easy to revert, if needed. So lgtm ACK e87429a2d0
  achow101:
    ACK e87429a2d0
  TheCharlatan:
    tACK e87429a2d0
  willcl-ark:
    ACK e87429a2d0

Tree-SHA512: 0887c395dee2e2020394933246d4c1bfb6dde7165219cbe93eccfe01379e05c75dce8920b6edd7df07364c703fcee7be4fba8fa45fd0e0e89da9e24759f67a71
2025-01-29 16:50:19 -05:00
..
00_setup_env.sh ci: Supply platform argument to docker commands. 2025-01-17 10:36:41 -08:00
00_setup_env_arm.sh ci: Supply platform argument to docker commands. 2025-01-17 10:36:41 -08:00
00_setup_env_i686_multiprocess.sh ci: Supply platform argument to docker commands. 2025-01-17 10:36:41 -08: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: Temporarily disable macOS/Windows fuzz step 2024-10-31 13:51:13 +01:00
00_setup_env_mac_native_fuzz.sh [ci] Split out native fuzz jobs for macOS and windows 2024-11-25 10:41:17 +00:00
00_setup_env_native_asan.sh ci: Use clang-19 from apt.llvm.org 2024-10-28 14:34:54 +01:00
00_setup_env_native_centos.sh ci: Enable DEBUG=1 for one GCC-12+ build to catch 117966 regressions 2025-01-20 17:43:52 +01:00
00_setup_env_native_fuzz.sh ci: Use clang-19 from apt.llvm.org 2024-10-28 14:34:54 +01: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: Run functional tests in msan task 2025-01-02 13:46:52 +01: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 ci: remove UPnP options 2024-10-25 09:27:12 -04:00
00_setup_env_native_tidy.sh ci: Update Clang in "tidy" job 2024-12-05 14:37:47 +00:00
00_setup_env_native_tsan.sh ci: Use clang-19 from apt.llvm.org 2024-10-28 14:34:54 +01:00
00_setup_env_native_valgrind.sh ci: remove UPnP options 2024-10-25 09:27:12 -04:00
00_setup_env_s390x.sh ci: Supply platform argument to docker commands. 2025-01-17 10:36:41 -08:00
00_setup_env_win64.sh ci: Supply platform argument to docker commands. 2025-01-17 10:36:41 -08:00
01_base_install.sh ci: build msan's libc++ with _LIBCPP_ABI_BOUNDED_* 2025-01-07 15:57:01 +01:00
02_run_container.sh Merge bitcoin/bitcoin#31545: ci: optionally use local docker build cache 2025-01-29 16:50:19 -05:00
03_test_script.sh ci: Bump centos stream 10 2025-01-17 15:34:11 +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