Skip to content

Cached checks, cachix push, and the cache declared for consumers - #1

Merged
clhodapp merged 1 commit into
mainfrom
feature/cached-ci
Sep 8, 2026
Merged

clhodapp merged 1 commit into
mainfrom
feature/cached-ci

Conversation

@clhodapp

@clhodapp clhodapp commented Sep 8, 2026

Copy link
Copy Markdown
Owner

Brings flake-sync in line with the other public repositories on
caching and the binary cache.

  • CI. The two-job check.yml (package + format, VM lifecycle)
    becomes the three-file set the other public repositories run:
    check.yml, main's copy, with the cached store, the two-hop trusted
    build for pull requests, the priority-pruned union entry, and the
    push of the kept roots' closure to the clhodapp cache from the
    cachix environment; check-pr.yml, the request's own copy,
    building only when .github/ changed; and cache-cleanup.yml at
    close. One job runs nix flake check, which covers what the two jobs
    did. Timeouts are 30 minutes; the VM lifecycle test took about seven
    on a cold runner.
  • nixConfig declares the clhodapp cache and its two upstreams,
    honored when the flake is evaluated directly and the settings are
    accepted, as the other public flakes do.
  • README gains the CI paragraph and the "Binary cache" section with
    the three substituters and keys a consumer needs.

actionlint passes on all three workflows; nix flake check --no-build
evaluates clean; nix fmt is clean. Because this changes .github/,
check-pr builds it; the first main run after merge is the first
push to the cache.

🤖 Generated with Claude Code

The two-job check.yml becomes the three-file set the other public
repositories run: main's copy with the cached store, the two-hop
trusted build for pull requests, and the push of the kept roots'
closure to the clhodapp cache; the request's own copy, building only
when .github/ changed; and the close-time cache cleanup. nixConfig
declares the cache and its upstreams for direct evaluation, and the
README states the three substituters and keys a consumer needs.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@clhodapp clhodapp self-assigned this Sep 8, 2026
@clhodapp
clhodapp merged commit 667363e into main Sep 8, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant