feat: workflow caching

This commit is contained in:
trev 2025-03-18 22:05:36 -04:00
parent 0ffc1cd7f9
commit 2b03164307

View File

@ -16,9 +16,27 @@ jobs:
uses: actions/checkout@v4
- name: Install Nix
uses: cachix/install-nix-action@v31
uses: nixbuild/nix-quick-install-action@v30
- uses: nix-community/cache-nix-action@v6
with:
nix_path: nixpkgs=channel:nixos-unstable
# restore and save a cache using this key
primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix', '**/flake.lock') }}
# if there's no cache hit, restore a cache by this prefix
restore-prefixes-first-match: nix-${{ runner.os }}-
# collect garbage until Nix store size (in bytes) is at most this number
# before trying to save a new cache
# 1G = 1073741824
gc-max-store-size-linux: 1G
# do purge caches
purge: true
# purge all versions of the cache
purge-prefixes: nix-${{ runner.os }}-
# created more than this number of seconds ago
# relative to the start of the `Post Restore and save Nix store` phase
purge-created: 0
# except any version with the key that is the same as the `primary-key`
purge-primary-key: never
- name: Build
run: nix develop --command ts-build