Package Validation
Validate PyPI package build on PRs
Builds the wheel, runs safety checks, and tests installation across Python versions. Optionally publishes to TestPyPI for validation.
Production PyPI publishing happens in release.yml (protected environment).
uses: huntridge-labs/argus/.github/workflows/publish-pypi.yml@1.8.1
Pipeline
3 jobs (1 matrix) ยท scroll to zoom ยท drag to pan
Triggers
- Pull request
Permissions
| Scope | Access |
|---|---|
contents |
read |
id-token |
write |
Jobs
build โ Build Package
Runs on: ubuntu-latest
Steps:
- Install build tools
- Set dev version for TestPyPI
- Build wheel and sdist
- Inspect package contents
- Safety check
- Upload build artifacts โ
actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a
test-install โ Test Install (Python ${{ matrix.python-version }})
Runs on: ubuntu-latest ยท Depends on: build
Steps:
- Download built package โ
actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c - Install from wheel
- Smoke test
publish-testpypi โ Publish to TestPyPI
Runs on: ubuntu-latest ยท Depends on: build, test-install
Steps:
- Download built package โ
actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c - Publish to TestPyPI โ
pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b