Skip to content

Add automated PyPI publish workflow#120

Open
hownowstephen wants to merge 1 commit intomainfrom
MESS-673_fix-packaging-hygiene
Open

Add automated PyPI publish workflow#120
hownowstephen wants to merge 1 commit intomainfrom
MESS-673_fix-packaging-hygiene

Conversation

@hownowstephen
Copy link
Copy Markdown
Contributor

@hownowstephen hownowstephen commented May 7, 2026

Summary

Setup required after merge

  1. Create a pypi environment in GitHub repo settings
  2. Configure trusted publishing on PyPI for customerio/customerio-pythonpublish.ymlpublish job

Closes #112

Test plan

  • python -m build produces both .whl and .tar.gz
  • Wheel contains only customerio/ package (no tests/)
  • Sdist contains only customerio/ package (no tests/)
  • Workflow YAML is valid (uses standard pypa/gh-action-pypi-publish@release/v1)

Note

Low Risk
Low risk: adds a new release-triggered CI workflow only; main risk is misconfiguration causing failed or unintended publishes.

Overview
Adds a new GitHub Actions workflow (.github/workflows/publish.yml) that runs on GitHub Release publish events to build both sdist/wheel (python -m build) and publish to PyPI via OIDC trusted publishing (pypa/gh-action-pypi-publish@release/v1).

The job uses a pypi GitHub environment and requests id-token: write permissions to enable tokenless publishing.

Reviewed by Cursor Bugbot for commit 601283f. Bugbot is set up for automated code reviews on this repo. Configure here.

Adds a GitHub Actions workflow triggered on releases that builds and
publishes both wheel and sdist to PyPI using trusted publishing (OIDC).
Previously only sdist was available on PyPI because publishing was manual.

Requires configuring a "pypi" environment in GitHub repo settings and
setting up trusted publishing on PyPI for this repo.

Closes #112
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.

publish a wheel

1 participant