Files
beads/.github/workflows/release.yml
Steve Yegge 32ddf92007 feat: Automate PyPI publishing via GitHub Actions
- Add PyPI publish job to release workflow (runs after GoReleaser)
- Add manual TestPyPI workflow for testing uploads
- Update RELEASING.md:
  - Document automated PyPI publishing
  - Fix go install vs brew conflicts
  - Simplify Homebrew upgrade instructions
- Created bd-87 for epic command daemon support
- Closed bd-86 (merge transactions) as won't fix

Amp-Thread-ID: https://ampcode.com/threads/T-ea1982a4-56dc-482a-8c00-00963623cd64
Co-authored-by: Amp <amp@ampcode.com>
2025-10-23 19:58:11 -07:00

65 lines
1.3 KiB
YAML

name: Release
on:
push:
tags:
- 'v*'
concurrency:
group: release-${{ github.ref }}
cancel-in-progress: false
permissions:
contents: write
jobs:
goreleaser:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: '1.24'
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v6
with:
distribution: goreleaser
version: '~> v2'
args: release --clean
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
publish-pypi:
runs-on: ubuntu-latest
needs: goreleaser # Run after Go release succeeds
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install uv
run: pip install uv
- name: Build package
run: |
cd integrations/beads-mcp
uv build
- name: Publish to PyPI
env:
TWINE_USERNAME: __token__
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }}
run: |
cd integrations/beads-mcp
uv tool run twine upload dist/*