Fix Pages deploy by dispatching workflow from CI
The release trigger in pages.yml never fires because events created
by GITHUB_TOKEN don't trigger other workflows. Switch to explicit
workflow_dispatch from CI after uploading snapshots, which is exempt
from this restriction.
Closes #8
https://claude.ai/code/session_01YUdY5FQHCAunQHXdgdFiME
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 4ed90af..081d8e0 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -7,6 +7,7 @@ on:
branches: [main]
permissions:
+ actions: write
contents: write
packages: write
@@ -71,6 +72,10 @@ jobs:
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release upload "${{ steps.meta.outputs.version }}" snapshots.tar.gz
+ - if: github.ref == 'refs/heads/main' && github.event_name == 'push'
+ env:
+ GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: gh workflow run pages.yml --field tag=${{ steps.meta.outputs.version }}
deploy:
name: Deploy to Fly.io
diff --git a/.github/workflows/pages.yml b/.github/workflows/pages.yml
index 64fa875..40fc503 100644
--- a/.github/workflows/pages.yml
+++ b/.github/workflows/pages.yml
@@ -1,8 +1,6 @@
name: Pages
on:
- release:
- types: [published]
workflow_dispatch:
inputs:
tag:
@@ -32,7 +30,7 @@ jobs:
- env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
- tag="${{ inputs.tag || github.event.release.tag_name }}"
+ tag="${{ inputs.tag }}"
if [ -z "$tag" ]; then
tag="$(gh release view --json tagName -q .tagName)"
fi