scylladb / scylladb/python-rs-driver

release: gate tag and PyPI publication on release blockers

Open
#182 2 comments 0 reactions 1 assignee View on GitHub

@dkropachev is already working on this.

Since Sep 10, 2026.

release-blocker
Dominant language
Rust
Stars
6
Forks
7
Avg merge
5d 13h
Merged PRs (30d)
9

Description

Problem

The release workflow publishes to PyPI on any v* tag and also on manual dispatch. A tag-triggered check is too late to stop the tag, while manual dispatch can publish without a release tag. GitHub Release creation is outside the workflow.

Related platform work: #152.

Required changes

  • Make workflow_dispatch the canonical production entrypoint with version, target commit, and dry-run inputs.
  • Validate CI, versions, wheels, source distribution, and supported platforms before publication.
  • Query release-blocker issues early and immediately before tag/PyPI publication.
  • Create the protected version tag, publish through the existing pypi environment/OIDC identity, verify PyPI, then create the GitHub Release.
  • Remove or constrain direct publishing from ordinary tag pushes/manual bypasses.
  • Protect v* tags and update trusted-publisher configuration if workflow identity changes.
  • Document retries, recovery, and break-glass access.

Acceptance criteria

  • One open release-blocker issue prevents tag, PyPI, and GitHub Release publication.
  • API failures fail closed.
  • Dry-run validates all artifacts without publication.
  • #152 remains linked so platform expansion matches release coverage.
  • Direct protected-tag creation is rejected.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.