Skip to main content

Release Checklist

  • On main Create a git tag with pattern X.Y.Z where X, Y, and Z follow the semver pattern. Then push the tag to the origin git repo (github).
    • git tag X.Y.Z
      git push origin --tags
    • This will trigger the github action to build and release the package.
  • Confirm the tests pass and the package has been published to pypi.
    • If the tests fail, you can remove the tag from your local and github repo using:
    git push origin --delete X.Y.Z # Delete on Github
    git tag -d X.Y.Z # Delete locally
    • Fix the errors and then repeat the steps above to recreate the tag locally and push to Github to restart the process.
    • Note that the github action takes care of incrementing the release version on test-pypi automatically by adding a pre-release identifier in the scenario where the tests fail and you need to delete and push the same tag again.
  • Create a release
  • Add release notes. You can make use of automatically generated release notes
  • If creating a new release for major or minor version:
    • Create a new release branch with the last commit and name it 'release/X.Y`
    • Update the default branch on the github rep to the new release branch.

Prerequisites

The automation requires a trusted publisher to be set up on both the pypi and test-pypi packages. If the package is migrated to a new project, please follow the steps to create a trusted publisher. If you have no releases on the new project, you may have to create a pending trusted publisher to allow the first automated deployment.