Skip to content

ci: tag-triggered PyPI release pipeline with VCS versioning#4

Merged
eywalker merged 8 commits intomainfrom
feat/plt-1251-pypi-release-pipeline
Apr 8, 2026
Merged

ci: tag-triggered PyPI release pipeline with VCS versioning#4
eywalker merged 8 commits intomainfrom
feat/plt-1251-pypi-release-pipeline

Conversation

@kurodo3
Copy link
Copy Markdown
Contributor

@kurodo3 kurodo3 bot commented Apr 8, 2026

Summary

  • Switches build backend to hatchling + hatch-vcs for tag-based dynamic versioning (v0.1.00.1.0)
  • Adds publish.yml: tag-triggered workflow with test → build → TestPyPI (auto) → PyPI (manual approval gate)
  • Uses OIDC Trusted Publishing (no secrets) and Sigstore build attestations
  • Adds license-check and dependency-review jobs to ci.yml to block copyleft dependencies
  • Adds pip-licenses to dev deps

Test plan

  • CI passes on this PR (test matrix + license-check)
  • After merge: configure GitHub environments testpypi and pypi (repo Settings → Environments)
  • After merge: configure Trusted Publishers on test.pypi.org and pypi.org
  • Push tag v0.1.0 — verify TestPyPI publishes automatically
  • Approve PyPI deployment in GitHub UI — verify pypi.org package and GitHub Release appear

@eywalker eywalker merged commit 7243112 into main Apr 8, 2026
9 of 10 checks passed
@eywalker eywalker deleted the feat/plt-1251-pypi-release-pipeline branch April 8, 2026 04:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant