The release manager will need the right permissions for:
- github.com (includes the PyPI credentials)
If you are new in this role, ask for the proper setup you need to run this process manually.
- Begin to draft a new release in Github, using the appropriate version tag
- Note we follow semver
- Create a new branch off of staging, named
changelog/<VERSION> - After generating the release notes, copy these into the CHANGELOG.md file, with the appropriate header
- Bump the version in pyproject.toml
- Open a Pull Request against staging for this changelog
- Once approved and merged into staging, delete the branch, and create a new branch off staging, named
release/<VERSION> - Push this branch, and open a PR against master, which should include the changelog from step 3
- Once this passes tests, is approved, and merged to master, run Build and Publish Python Package with the new version
- Verify the release is successful and pushed to PyPI