- Guard deploy-docs job to only run in canonical repository - Guard goreleaser job to only run in canonical repository - Guard update-homebrew job to only run in canonical repository - Guard test-pypi job to only run in canonical repository Prevents fork workflows from attempting to deploy, release, or publish to external services.
35 lines
848 B
YAML
35 lines
848 B
YAML
name: Test PyPI Publish
|
|
|
|
on:
|
|
workflow_dispatch: # Manual trigger only
|
|
|
|
jobs:
|
|
test-publish:
|
|
# Guard: only allow test PyPI publish runs in the canonical repository
|
|
if: ${{ github.repository == 'steveyegge/beads' }}
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v6
|
|
|
|
- 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 TestPyPI
|
|
env:
|
|
TWINE_USERNAME: __token__
|
|
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_API_TOKEN }}
|
|
run: |
|
|
cd integrations/beads-mcp
|
|
uv tool run twine upload --repository testpypi dist/*
|