Skip to content

Merge pull request #18 from swarmproof/docs/readme-scrub #5

Merge pull request #18 from swarmproof/docs/readme-scrub

Merge pull request #18 from swarmproof/docs/readme-scrub #5

Workflow file for this run

name: release
# Cut a release by pushing a version tag: `git tag v0.1.0 && git push origin v0.1.0`.
# Builds + smoke-tests the wheel, creates a GitHub release, and publishes to PyPI
# via Trusted Publishing (OIDC — no API token stored). See docs/RELEASING.md for
# the one-time PyPI setup.
on:
push:
tags: ["v*"]
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v5
- name: Build sdist + wheel
run: uv build
- name: Smoke-test the wheel (clean install → run)
run: |
python -m venv /tmp/v
/tmp/v/bin/pip install dist/*.whl
/tmp/v/bin/mockworld list
/tmp/v/bin/mockworld demo mock:payments
- uses: actions/upload-artifact@v4
with:
name: dist
path: dist/
github-release:
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/download-artifact@v4
with:
name: dist
path: dist
- uses: softprops/action-gh-release@v2
with:
files: dist/*
generate_release_notes: true
pypi-publish:
needs: build
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write # Trusted Publishing
steps:
- uses: actions/download-artifact@v4
with:
name: dist
path: dist
- uses: pypa/gh-action-pypi-publish@release/v1