diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 174af610..848f7253 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,6 +1,6 @@ jobs: - nixCI: - name: Nix CI + mainCI: + name: Main CI permissions: actions: write contents: write @@ -18,9 +18,9 @@ jobs: - name: Restore and cache Nix store uses: nix-community/cache-nix-action@v5 with: - primary-key: nix-update-${{ hashfiles('**/flake.nix', '**/flake.lock', 'haskell/**/*') }} + primary-key: nix-update-${{ hashfiles('**/flake.nix', 'flake.lock', 'nix-dev/flake.lock', 'haskell/**/*') }} restore-prefixes-first-match: nix-update- - gc-max-store-size-linux: 7500000000 + gc-max-store-size-linux: 4000000000 purge: true purge-prefixes: nix-update- purge-created: 0 @@ -63,14 +63,48 @@ jobs: || echo "commit failed!" git push + - name: Save flakes + run: |- + nix profile install nix-dev/#saveFlakes + nix run nix-dev/#saveFlakes + templateCI: + name: Template + permissions: + actions: write + runs-on: ubuntu-22.04 + needs: [ "mainCI" ] + steps: + - name: Checkout this repo + uses: actions/checkout@v4 + - name: Pull latest changes + run: git pull + - name: Install Nix + uses: nixbuild/nix-quick-install-action@v27 + with: + nix_conf: | + access-tokens = github.com=${{ secrets.GITHUB_TOKEN }} + substituters = https://cache.nixos.org/ https://nix-community.cachix.org https://cache.iog.io + trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY= nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs= hydra.iohk.io:f/Ea+s+dFdN+3Y/G+FDgSq+a5NEWhJGzdjvKNGv0/EQ= + - name: Restore and cache Nix store + uses: nix-community/cache-nix-action@v5 + with: + primary-key: nix-update-${{ hashfiles('template') }} + restore-prefixes-first-match: nix-template- + gc-max-store-size-linux: 4000000000 + purge: true + purge-prefixes: nix-template- + purge-created: 0 + purge-primary-key: never + - name: Remove old cache profiles + run: rm -rf /nix/var/nix/profiles/cache - name: Check template VSCodium run: | nix profile install template/ nix run template/ -- --list-extensions - name: Save flakes run: |- - nix profile install nix-dev/#saveFlakes - nix run nix-dev/#saveFlakes + nix profile install nix-dev/#saveTemplateFlake + nix run nix-dev/#saveTemplateFlake name: Nix CI "on": pull_request: {}