Skip to content

Add admin-triggered release workflow - #595

Merged
AndreyVMarkelov merged 8 commits into
mainfrom
andreymarkelov/admin-release-action
Sep 22, 2026
Merged

AndreyVMarkelov merged 8 commits into
mainfrom
andreymarkelov/admin-release-action

Conversation

@AndreyVMarkelov

@AndreyVMarkelov AndreyVMarkelov commented Sep 22, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add an admin-only Actions button for validated main releases
  • run validation, lint, unit tests, documentation, and package checks before creating an annotated vX.Y.Z tag at the exact validated commit
  • build final distributions from that immutable tag, verify their version, and upload them as a GitHub artifact
  • publish the prebuilt artifacts through a minimal OIDC-only PyPI Trusted Publishing job, then create the GitHub Release
  • keep the existing release.created publishing path and document the production release order
  • remove the temporary TestPyPI smoke-test path

Validation

  • actionlint .github/workflows/pypiupload.yml
  • YAML parsed successfully with Ruby Psych
  • git diff --check
  • production publisher structurally verified to contain only artifact download and pypa/gh-action-pypi-publish@release/v1, with only id-token: write
  • confirmed no TestPyPI, AWS, Secrets Manager, stored PyPI credentials, or pip-cache configuration remains
  • Ruff check and format check (excluding generated dropbox/_version.py)
  • pytest -q test/unit/ — 100 passed
  • sphinx-build -b html docs build/html
  • synthetic annotated v99.98.97 tag build without a version override
  • python -m build
  • twine check dist/*
  • wheel metadata verified as version 99.98.97

@codecov

codecov Bot commented Sep 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 65.31%. Comparing base (633b021) to head (72eead2).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #595   +/-   ##
=======================================
  Coverage   65.31%   65.31%           
=======================================
  Files          36       36           
  Lines       67969    67969           
  Branches     4904     4904           
=======================================
  Hits        44397    44397           
  Misses      23320    23320           
  Partials      252      252           
Flag Coverage Δ
integration 64.34% <ø> (ø)
unit 65.03% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Comment thread .github/workflows/pypiupload.yml Fixed
Comment thread .github/workflows/pypiupload.yml Fixed
Comment thread .github/workflows/pypiupload.yml Fixed
Comment thread .github/workflows/pypiupload.yml Fixed
@AndreyVMarkelov
AndreyVMarkelov merged commit 5d980b2 into main Sep 22, 2026
35 checks passed
@AndreyVMarkelov
AndreyVMarkelov deleted the andreymarkelov/admin-release-action branch September 22, 2026 21:21
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.

4 participants