1name: Push
2
3on:
4 push:
5 branches:
6 - master
7 - staging
8 - release-*
9 - staging-*
10 - haskell-updates
11 workflow_call:
12 inputs:
13 mergedSha:
14 required: true
15 type: string
16 secrets:
17 CACHIX_AUTH_TOKEN:
18 required: true
19
20permissions: {}
21
22jobs:
23 prepare:
24 runs-on: ubuntu-24.04-arm
25 outputs:
26 systems: ${{ steps.systems.outputs.systems }}
27 steps:
28 - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
29 with:
30 sparse-checkout: |
31 ci/supportedSystems.json
32
33 - name: Load supported systems
34 id: systems
35 run: |
36 echo "systems=$(jq -c <ci/supportedSystems.json)" >> "$GITHUB_OUTPUT"
37
38 eval:
39 name: Eval
40 needs: [prepare]
41 uses: ./.github/workflows/eval.yml
42 # Those are not actually used on push, but will throw an error if not set.
43 permissions:
44 # compare
45 statuses: write
46 secrets:
47 CACHIX_AUTH_TOKEN: ${{ secrets.CACHIX_AUTH_TOKEN }}
48 with:
49 mergedSha: ${{ inputs.mergedSha || github.sha }}
50 systems: ${{ needs.prepare.outputs.systems }}