Skip to content

CircleCI: first layer cache: musl-cross-make+packages downloaded, was still pointing to old musl-cross-make#1950

Merged
tlaurion merged 1 commit intolinuxboot:masterfrom
tlaurion:circleci_first_layer_cache-fix_musl-cross-make
Apr 3, 2025
Merged

CircleCI: first layer cache: musl-cross-make+packages downloaded, was still pointing to old musl-cross-make#1950
tlaurion merged 1 commit intolinuxboot:masterfrom
tlaurion:circleci_first_layer_cache-fix_musl-cross-make

Conversation

@tlaurion
Copy link
Copy Markdown
Collaborator

@tlaurion tlaurion commented Apr 3, 2025

Fixes #1948 (hopefully for real this time)


First layer cache of CircleCI is reused when more complete cache reusal are invalidated: that is, to not compiled musl-cross-make from source for x86/ppc64 at each build when any other thing changed under Heads.

Unfortunately, #1947 was incomplete in that regard, as showed per build:

It is also irrelevant to bind first layer cache with .circleci/config.yml, nor Makefile related changes. After all the first layer is related to reusing musl-cross-make to reduce build times on CI Therefore, only flake.lock and modules/musl-cross-make is relevant to be part of hashed files that should nto change to construct/reuse that cache

… still pointing to old musl-cross-make

First layer cache of CircleCI is reused when second cache is invalidated: that is, to not compiled musl-cross-make from source for x86/ppc64 at each build when any other thing changed under Heads.

Unfortunately, linuxboot#1947 was incomplete in that regard, as showed per build:
- last save cache step https://app.circleci.com/pipelines/github/tlaurion/heads/3270/workflows/07dee00e-926e-4023-b8a7-669078e6ef31/jobs/66483
  - first layer cache saving https://app.circleci.com/pipelines/github/tlaurion/heads/3270/workflows/07dee00e-926e-4023-b8a7-669078e6ef31/jobs/66483
    - Warning: could not archive /root/heads/build/ppc64/musl-cross-make-38e52db8358c043ae82b346a2e6e66bc86a53bc1 - Not found
    - Warning: could not archive /root/heads/build/x86/musl-cross-make-38e52db8358c043ae82b346a2e6e66bc86a53bc1 - Not found

It is also irrelevant to bind first layer cache with .circleci/config.yml, nor Makefile related changes. After all the first layer is related to reusing musl-cross-make to reduce build times on CI
Therefore, only flake.lock and modules/musl-cross-make is relevant to be part of hashed files that should nto change to construct/reuse that cache

Signed-off-by: Thierry Laurion <insurgo@riseup.net>
@tlaurion tlaurion merged commit 594abed into linuxboot:master Apr 3, 2025
46 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CircleCI: musl-cross-make not part of save_cache : so always rebuilt

1 participant