Skip to content

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.1.0

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:

  1. Install build tools
  2. Set dev version for TestPyPI
  3. Build wheel and sdist
  4. Inspect package contents
  5. Safety check
  6. Upload build artifacts โ€” actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f

test-install โ€” Test Install (Python ${{ matrix.python-version }})

Runs on: ubuntu-latest ยท Depends on: build

Steps:

  1. Download built package โ€” actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e
  2. Install from wheel
  3. Smoke test

publish-testpypi โ€” Publish to TestPyPI

Runs on: ubuntu-latest ยท Depends on: build, test-install

Steps:

  1. Download built package โ€” actions/download-artifact@95815c38cf2ff2164869cbab79da8d1f422bc89e
  2. Publish to TestPyPI โ€” pypa/gh-action-pypi-publish@cef221092ed1bacb1cc03d23a2d87d1d172e277b