Story #4440
closedImprove the CI/CD pipeline for pulp_python
0%
Description
As a pulp developer, I would like for pulp_python to have a better CI/CD pipeline, so that we can release pulp_python more often.
Currently the release process is:
1. update documentation with release notes
2. Create a PR with release notes and version bump
3. Create a new tag in pulp_python which triggers the travis PyPI deployment job
A simpler workflow would be to have this all be done without needing to create a new commit.
There are projects that allow us to auto-increment the version number [0] or detect the version in tag[1] and use that to generate our released version.
The optimal solution would be a combination of both:
Updating the travis deployment to always use the tagged version to release. And always bump the version in source control to be [released_version]+1 (so when installing from source the version in master is always > version in release)
We can add an post_deploy action [2] to our travis deployment [3] in order to do this version bump.
Instead of having release notes in docs, we can instead keep release note in github release [4], and update our docs to point to that page for releases. This way no new doc commit need to be done for each release.
Bonus Points:
For maximum CD points, we can have a .dev release for every new commit. To ensure that PyPI is always up to date.
[0] https://github.com/warner/python-versioneer
[1] https://pypi.org/project/bumpversion/
[2] https://docs.travis-ci.com/user/job-lifecycle/#the-job-lifecycle
[3] https://github.com/pulp/pulp_python/blob/master/.travis.yml#L32
[4] https://github.com/pulp/pulp_python/releases
Updated by CodeHeeler over 5 years ago
- Tracker changed from Issue to Story
- % Done set to 0
Updated by bmbouter over 5 years ago
- Status changed from NEW to CLOSED - WONTFIX
Pulp 2 is approaching maintenance mode, and this Pulp 2 ticket is not being actively worked on. As such, it is being closed as WONTFIX. Pulp 2 is still accepting contributions though, so if you want to contribute a fix for this ticket, please reopen or comment on it. If you don't have permissions to reopen this ticket, or you want to discuss an issue, please reach out via the developer mailing list.