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: nixbuild/nix-quick-install-action@v32
12 - name: List packages
13 id: list
14 run: |
15 eval "$(nix print-dev-env .#ci)"
16 matrix="$(nix-eval-jobs --flake .#checks.x86_64-linux --check-cache-status | jq -sc '
17 [
18 .[]
19 | select(.isCached | not).attr
20 | select(test("-shell$") | not)
21 ]
22 | if length > 0 then . else ["pre-commit"] end
23 ')"
24 echo "matrix=$matrix" >> "$GITHUB_OUTPUT"
25
26 build:
27 needs: list
28 runs-on: ubuntu-24.04
29 strategy:
30 fail-fast: false
31 matrix:
32 pkg: ${{ fromJson(needs.list.outputs.matrix) }}
33 name: Build ${{ matrix.pkg }}
34 steps:
35 - uses: actions/checkout@v4
36 - uses: nixbuild/nix-quick-install-action@v32
37 - name: Build
38 run: |
39 eval "$(nix print-dev-env .#ci)"
40 attic login --set-default tombl https://nix.tombl.net '${{secrets.ATTIC_TOKEN}}'
41 nix build '.#checks.x86_64-linux.${{ matrix.pkg }}^*'
42 attic push linuxwasm ./result*
43
44 deploy:
45 needs: build
46 runs-on: ubuntu-24.04
47 steps:
48 - uses: actions/checkout@v4
49 - uses: nixbuild/nix-quick-install-action@v32
50 - name: Build
51 run: |
52 eval "$(nix print-dev-env .#ci)"
53 nix build .#packages.x86_64-linux.site --print-build-logs
54 - uses: cloudflare/wrangler-action@v3
55 with:
56 apiToken: ${{secrets.CLOUDFLARE_API_TOKEN}}
57 accountId: 7d87194d9d4af2959fb81de343dd63d9
58 command: pages deploy result/ --project-name=linux