ci: only build nightlies if there are something to build (#126)

Carlos Alexandro Becker created

this should save us a bit of actions money

Change summary

.github/workflows/nightly.yml | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)

Detailed changes

.github/workflows/nightly.yml 🔗

@@ -6,7 +6,25 @@ on:
   workflow_dispatch: # allows manual triggering
 
 jobs:
+  check:
+    runs-on: ubuntu-latest
+    outputs:
+      should_run: ${{ steps.check.outputs.should_run }}
+    steps:
+      - uses: actions/checkout@v4
+        with:
+          fetch-depth: 1
+      - id: check
+        env:
+          GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
+        run: |
+          if gh run list --workflow nightly.yml -c $(git rev-parse HEAD) -s success | grep 'completed'; then
+            echo "should_run=false" >> $GITHUB_OUTPUT
+          else
+            echo "should_run=true" >> $GITHUB_OUTPUT
+          fi
   nightly:
+    needs: check
     uses: charmbracelet/meta/.github/workflows/nightly.yml@main
     secrets:
       goreleaser_key: ${{ secrets.GORELEASER_KEY }}