Skip to content

Publish to PyPI

Publish to PyPI #10

Workflow file for this run

name: Publish to PyPI
on:
release:
types: [ published ]
jobs:
build_and_publish:
name: 📦 Build and publish
runs-on: ubuntu-latest
env:
UV_PYTHON: "3.12.7"
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Install uv
uses: astral-sh/setup-uv@v3
with:
version: "latest"
enable-cache: true
cache-dependency-glob: "uv.lock"
- name: Set up Python ${{ env.UV_PYTHON }}
run: uv python install ${{ env.UV_PYTHON }}
- name: Install the project
run: uv sync --extra dev --extra tests
- name: Minimize uv cache
run: uv cache prune --ci
- name: Build dist
run: uv build
- name: Verify wheel installation
run: uv run --verbose --with ./dist/$(find ./dist/*.whl -printf "%f") --no-project --refresh-package ftl_extract -- python -c "import ftl_extract; print(ftl_extract.__version__)"
- name: 🐍 Publish distribution 📦
run: uv publish