magic-nix-cache-action icon indicating copy to clipboard operation
magic-nix-cache-action copied to clipboard

no caching after timeout of a very long pipeline: "no substituter" for `...drv.chroot`

Open hraban opened this issue 1 year ago • 0 comments

I have a giant nix build step with a 5h timeout. When the build fails early for some reason, I can see the caching action store successfully built paths. But when it hits the timeout, I see this error:

Post job cleanup.
  2024-03-02T17:22:02.595769Z  INFO magic_nix_cache::api: Workflow finished
    at magic-nix-cache/src/api.rs:50

  2024-03-02T17:22:02.615213Z  INFO magic_nix_cache::api: Pushing 3274 new paths
    at magic-nix-cache/src/api.rs:59

don't know how to build these paths:
  /nix/store/xlz372iydqc1llh6ji6bmmqmzqfrpbqn-system-eager-future2.drv.chroot
error: path '/nix/store/xlz372iydqc1llh6ji6bmmqmzqfrpbqn-system-eager-future2.drv.chroot' is required, but there is no substituter that can build it
  2024-03-02T17:22:03.880063Z ERROR magic_nix_cache::util: Failed to upload batch: ExitStatus(unix_wait_status(256))
    at magic-nix-cache/src/util.rs:79

I have simultaneously enabled the cachix action, and that action's post job cleanup does in fact upload built paths to cachix.

Does anyone recognize this .drv.chroot path? I couldn't find it in the magic cache source. Is there a builder for this which might die after hours of runtime, or be killed on timeout?

Example: https://github.com/hraban/cl-nix-lite/actions/runs/8122709877/job/22202434455

hraban avatar Mar 02 '24 17:03 hraban