nightly.yml

 1name: nightly
 2
 3on:
 4  schedule:
 5    - cron: "0 0 * * *" # every day at midnight
 6  workflow_dispatch: # allows manual triggering
 7
 8jobs:
 9  check:
10    runs-on: ubuntu-latest
11    outputs:
12      should_run: ${{ steps.check.outputs.should_run }}
13    steps:
14      - uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
15        with:
16          fetch-depth: 1
17      - id: check
18        env:
19          GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
20        run: |
21          if gh run list --workflow nightly.yml -c $(git rev-parse HEAD) -s success | grep 'completed'; then
22            echo "should_run=false" >> $GITHUB_OUTPUT
23          else
24            echo "should_run=true" >> $GITHUB_OUTPUT
25          fi
26  nightly:
27    needs: check
28    if: needs.check.outputs.should_run == 'true'
29    uses: charmbracelet/meta/.github/workflows/nightly.yml@main
30    secrets:
31      goreleaser_key: ${{ secrets.GORELEASER_KEY }}