ci: add debug step to dump workflow_run payload
the release job kept getting skipped even though the if-expression should have evaluated true. adding a diagnostic job (no if-filter) that prints github.event.workflow_run so we can see what fields are actually populated on the webhook payload at eval time. removing the [skip-release] guard temporarily to reduce variables.
- commit
- 75aa6d4771e96f9e5d4560e2325e2969c3a34e9b
- author
- patriceckhart · · 2026-04-18 09:17 UTC
- parent
- f0014f1
- signature
- unsigned
- refs
- tag: v0.0.1
1 file · +20 -2
M .github/workflows/release.yml +20 -2
| @@ -30,10 +30,28 @@ concurrency: | |||
| 30 | 30 | cancel-in-progress: false | |
| 31 | 31 | ||
| 32 | 32 | jobs: | |
| 33 | + | debug: | |
| 34 | + | # One-shot diagnostic job with no if-filter: dumps the full | |
| 35 | + | # workflow_run context so we can see what fields are actually | |
| 36 | + | # populated on the webhook payload. Remove once the release job | |
| 37 | + | # starts firing reliably. | |
| 38 | + | runs-on: ubuntu-latest | |
| 39 | + | steps: | |
| 40 | + | - name: dump workflow_run | |
| 41 | + | env: | |
| 42 | + | WR: ${{ toJSON(github.event.workflow_run) }} | |
| 43 | + | run: | | |
| 44 | + | echo "conclusion: ${{ github.event.workflow_run.conclusion }}" | |
| 45 | + | echo "head_branch: ${{ github.event.workflow_run.head_branch }}" | |
| 46 | + | echo "head_sha: ${{ github.event.workflow_run.head_sha }}" | |
| 47 | + | echo "---" | |
| 48 | + | printenv WR | head -c 2000 | |
| 49 | + | ||
| 33 | 50 | release: | |
| 51 | + | needs: debug | |
| 34 | 52 | # Only run when ci succeeded and we're on main, and when the head | |
| 35 | - | # commit doesn't opt out via [skip release]. | |
| 36 | - | if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.head_branch == 'main' && !contains(github.event.workflow_run.head_commit.message, '[skip-release]') }} | |
| 53 | + | # commit doesn't opt out via [skip-release]. | |
| 54 | + | if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.head_branch == 'main' }} | |
| 37 | 55 | runs-on: ubuntu-latest | |
| 38 | 56 | steps: | |
| 39 | 57 | - name: checkout | |
| @@ -30,10 +30,28 @@ concurrency: | |||||
| 30 | cancel-in-progress: false | 30 | cancel-in-progress: false | ||
| 31 | 31 | ||||
| 32 | jobs: | 32 | jobs: | ||
| 33 | + | debug: | |||
| 34 | + | # One-shot diagnostic job with no if-filter: dumps the full | |||
| 35 | + | # workflow_run context so we can see what fields are actually | |||
| 36 | + | # populated on the webhook payload. Remove once the release job | |||
| 37 | + | # starts firing reliably. | |||
| 38 | + | runs-on: ubuntu-latest | |||
| 39 | + | steps: | |||
| 40 | + | - name: dump workflow_run | |||
| 41 | + | env: | |||
| 42 | + | WR: ${{ toJSON(github.event.workflow_run) }} | |||
| 43 | + | run: | | |||
| 44 | + | echo "conclusion: ${{ github.event.workflow_run.conclusion }}" | |||
| 45 | + | echo "head_branch: ${{ github.event.workflow_run.head_branch }}" | |||
| 46 | + | echo "head_sha: ${{ github.event.workflow_run.head_sha }}" | |||
| 47 | + | echo "---" | |||
| 48 | + | printenv WR | head -c 2000 | |||
| 49 | + | ||||
| 33 | release: | 50 | release: | ||
| 51 | + | needs: debug | |||
| 34 | # Only run when ci succeeded and we're on main, and when the head | 52 | # Only run when ci succeeded and we're on main, and when the head | ||
| 35 | - | # commit doesn't opt out via [skip release]. | 53 | + | # commit doesn't opt out via [skip-release]. |
| 36 | - | if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.head_branch == 'main' && !contains(github.event.workflow_run.head_commit.message, '[skip-release]') }} | 54 | + | if: ${{ github.event.workflow_run.conclusion == 'success' && github.event.workflow_run.head_branch == 'main' }} |
| 37 | runs-on: ubuntu-latest | 55 | runs-on: ubuntu-latest | ||
| 38 | steps: | 56 | steps: | ||
| 39 | - name: checkout | 57 | - name: checkout | ||