clusterfuzz icon indicating copy to clipboard operation
clusterfuzz copied to clipboard

[CLI] Pipelines to publish casp to PyPI

Open PauloVLB opened this issue 1 month ago • 1 comments

Summary

This PR establishes the CI/CD pipelines required to automate the publishing of the casp CLI to both TestPyPI (for development) and PyPI (for production).

Pipelines Added

1. Publish to PyPI (release event)

Trigger: runs when a new GitHub Release is published.

Change Detection: checks if there are actual changes in cli/casp compared to the previous tag before proceeding.

Versioning: automatically updates pyproject.toml to match the release tag (e.g., v1.2.0 -> 1.2.0).

Action: builds and uploads the package to the official PyPI repository.

2. Publish to TestPyPI (push event)

Trigger: runs on every push to master that modifies files within cli/casp/.

Versioning: generates a unique snapshot version using the format <last_tag>.<timestamp> (e.g., 1.2.0.17123456).

Action: builds and uploads the package to TestPyPI to facilitate immediate testing of new changes.

PauloVLB avatar Nov 27 '25 14:11 PauloVLB

Very nice

ViniciustCosta avatar Nov 27 '25 14:11 ViniciustCosta