diff --git a/.github/workflows/check.yaml b/.github/workflows/check.yaml index 487f3b4..39ba8d0 100644 --- a/.github/workflows/check.yaml +++ b/.github/workflows/check.yaml @@ -42,10 +42,18 @@ jobs: {"env": "pkg_meta", "os": "windows-2025-vs2026"}, {"env": "3.15", "os": "macos-26"} ] + release: + name: 🏷️ Release dry run + uses: $/.github/workflows/prepare-release.yaml + permissions: + contents: read + pull-requests: read + with: + dry-run: true gate: name: 🚦 ${{ github.event_name == 'pull_request' && 'Required checks pass' || 'Non-PR checks pass' }} if: ${{ !cancelled() }} # codespell:ignore cancelled - needs: [test] + needs: [test, release] runs-on: ubuntu-26.04 steps: - name: 🚦 Require all needed jobs to pass diff --git a/.github/workflows/prepare-release.yaml b/.github/workflows/prepare-release.yaml index 9b0bba8..c196970 100644 --- a/.github/workflows/prepare-release.yaml +++ b/.github/workflows/prepare-release.yaml @@ -12,15 +12,22 @@ on: - minor - patch default: auto + workflow_call: + inputs: + dry-run: + description: Assemble the release without pushing, for the pull request gate + type: boolean + required: true permissions: {} jobs: prepare: name: 🏷️ Prepare Towncrier release - uses: tox-dev/github-workflows/.github/workflows/prepare-towncrier-release.yaml@bceb5c005e19823dc8835f536f53f172ae223927 # 6.5.0 + uses: tox-dev/github-workflows/.github/workflows/prepare-towncrier-release.yaml@2a3b863f4563ce9891d2cee1ed381b6f82654836 # 6.6.0 permissions: contents: read pull-requests: read secrets: RELEASE_APP_PRIVATE_KEY: ${{ secrets.RELEASE_APP_PRIVATE_KEY }} with: - bump: ${{ inputs.bump }} + bump: ${{ inputs.bump || 'auto' }} + dry-run: ${{ inputs.dry-run == true }}