ci: route all release publishing through a single Release Router workflow (#5475)

This commit is contained in:
Saket Aryan
2026-06-10 22:16:58 +05:30
committed by GitHub
parent 0ffaffa88c
commit 437f0b5495
10 changed files with 213 additions and 31 deletions
+16 -4
View File
@@ -1,20 +1,33 @@
name: Publish Python 🐍 distributions 📦 to PyPI and TestPyPI
# Dispatched by release.yml (Release Router) when a release tagged v* is
# published. Can also be dispatched manually to re-publish a tag.
on:
release:
types: [published]
workflow_dispatch:
inputs:
tag:
description: 'Release tag to build and publish (e.g. v1.2.3)'
required: true
type: string
prerelease:
description: 'Unused for PyPI (pre-releases are expressed in the version itself); accepted for router uniformity'
required: false
type: boolean
default: false
jobs:
build-n-publish:
name: Build and publish Python 🐍 distributions 📦 to PyPI and TestPyPI
# Pure SDK version tags only (v1.2.3) — excludes package-prefixed tags
# like vercel-ai-v* that also start with 'v'
if: startsWith(github.event.release.tag_name, 'v') && !contains(github.event.release.tag_name, '-v')
if: startsWith(inputs.tag, 'v') && !contains(inputs.tag, '-v')
runs-on: ubuntu-latest
permissions:
id-token: write
steps:
- uses: actions/checkout@v2
with:
ref: ${{ inputs.tag }}
- name: Set up Python
uses: actions/setup-python@v2
@@ -41,7 +54,6 @@ jobs:
# packages_dir: dist/
- name: Publish distribution 📦 to PyPI
if: startsWith(github.ref, 'refs/tags/v') && !contains(github.ref, '-v')
uses: pypa/gh-action-pypi-publish@release/v1
with:
packages_dir: dist/