Skip to content

Release to PyPI

Release to PyPI #7

Workflow file for this run

name: Release to PyPI
on:
release:
types: [published]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
version: "latest"
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install dependencies
run: uv sync --extra dev
- name: Run tests
run: uv run pytest tests/ -v
- name: Build package
run: uv build
- name: Upload dist artifacts
uses: actions/upload-artifact@v4
with:
name: dist
path: dist/
publish:
needs: build
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write
steps:
- name: Download dist artifacts
uses: actions/download-artifact@v4
with:
name: dist
path: dist/
- name: Publish to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
update-homebrew:
needs: publish
runs-on: ubuntu-latest
steps:
- name: Trigger Homebrew formula update
uses: peter-evans/repository-dispatch@v3
with:
token: ${{ secrets.DEPLOYER_CI_TOKEN }}
repository: Unsupervisedcom/homebrew-deepwork
event-type: update-formula
client-payload: '{"version": "${{ github.event.release.tag_name }}"}'