Skip to content

ci: add GitHub Actions release pipeline#6

Merged
johncburns1 merged 2 commits intomainfrom
jburns/ci-setup
Mar 16, 2026
Merged

ci: add GitHub Actions release pipeline#6
johncburns1 merged 2 commits intomainfrom
jburns/ci-setup

Conversation

@johncburns1
Copy link
Collaborator

Summary

  • add reusable GitHub Actions CI for lint, format check, mypy, pytest, and build
  • add a version policy gate that checks feature branches against main and checks main against the latest semver tag
  • add an automated GitHub Release flow for main that uploads built artifacts without any PyPI publish step

Details

  • introduces .github/scripts/version_policy.py and focused unit coverage in .github/tests/test_version_policy.py
  • keeps the release surface repo-specific by deriving shipped package paths from pyproject.toml
  • avoids the tag-before-release rerun wedge from the SDK MR by creating or updating the GitHub Release directly from the workflow
  • uses uv sync --group dev --locked in CI to keep workflow installs pinned to uv.lock

Verification

  • uv run pytest .github/tests/test_version_policy.py -q
  • uv run ruff check .
  • uv run ruff format --check .
  • uv run mypy dispatch_cli
  • uv run pytest --cov=dispatch_cli --cov-report=term-missing tests .github/tests/test_version_policy.py
  • uv build

@johncburns1 johncburns1 merged commit 10f14fd into main Mar 16, 2026
5 checks passed
@johncburns1 johncburns1 deleted the jburns/ci-setup branch March 16, 2026 21:20
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.

2 participants