This repository has no description
1on:
2 - push
3
4jobs:
5 list:
6 runs-on: ubuntu-24.04
7 outputs:
8 matrix: ${{ steps.list.outputs.matrix }}
9 steps:
10 - uses: actions/checkout@v4
11 - uses: DeterminateSystems/nix-installer-action@main
12 with:
13 extra-conf: accept-flake-config = true
14 - uses: DeterminateSystems/magic-nix-cache-action@main
15 - name: List packages
16 id: list
17 run: |
18 eval "$(nix print-dev-env .#ci)"
19 matrix="$(nix-eval-jobs --flake .#checks.x86_64-linux --check-cache-status | jq -sc '
20 [
21 .[]
22 | select(.isCached | not).attr
23 | select(test("-shell$") | not)
24 ]
25 | if length > 0 then . else ["pre-commit"] end
26 ')"
27 echo "matrix=$matrix" >> "$GITHUB_OUTPUT"
28
29 build:
30 needs: list
31 runs-on: ubuntu-24.04
32 strategy:
33 fail-fast: false
34 matrix:
35 pkg: ${{ fromJson(needs.list.outputs.matrix) }}
36 name: Build ${{ matrix.pkg }}
37 steps:
38 - uses: actions/checkout@v4
39 - uses: DeterminateSystems/nix-installer-action@main
40 with:
41 extra-conf: accept-flake-config = true
42 - uses: DeterminateSystems/magic-nix-cache-action@main
43 - name: Build
44 run: |
45 eval "$(nix print-dev-env .#ci)"
46 attic login --set-default tombl https://nix.tombl.net '${{secrets.ATTIC_TOKEN}}'
47 nix-fast-build --skip-cached --no-nom --flake '.#checks.x86_64-linux.${{ matrix.pkg }}^*' --attic-cache=linuxwasm
48
49 deploy:
50 needs: build
51 runs-on: ubuntu-24.04
52 steps:
53 - uses: actions/checkout@v4
54 - uses: DeterminateSystems/nix-installer-action@main
55 with:
56 extra-conf: accept-flake-config = true
57 - uses: DeterminateSystems/magic-nix-cache-action@main
58 - name: Build
59 run: |
60 eval "$(nix print-dev-env .#ci)"
61 nix build .#packages.x86_64-linux.site --print-build-logs
62 - uses: cloudflare/wrangler-action@v3
63 with:
64 apiToken: ${{secrets.CLOUDFLARE_API_TOKEN}}
65 accountId: 7d87194d9d4af2959fb81de343dd63d9
66 command: pages deploy result/ --project-name=linux