Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Example Release Workflow for HL Besu 23.7.3

  1. Create a PR against main to bump the build version to 23.7.4-SNAPSHOT and add a new version section to CHANGELOG.md to reflect the next snapshot revision
    1. This prevents blocking main during the release but creates a bookmark to indicate that the release will up to the commit before this.
  2. Create a release candidate PR which merges `main` into the `release` branch, which also updates the build version to reflect 23.7.3-RC
    1. During the actual 23.7.3 release, it became clear that the only way to do this nicely is by cherry-picking the commit range from main onto the release branch, e.g. git cherry-pick 6dc10a9..eef40bd 
    2. Due to 1, we need to use a subset of main commits, not including the bump to 23.7.4-SNAPSHOT
  3. Upon merge into the release branch, CI builds and publishes the necessary artifacts for the release candidate
  4. Deploy canary and burn-in builds with the published release candidate artifactsCreate a PR against main to bump the build version to 23.7.4-SNAPSHOT and add a new version section to CHANGELOG.md to reflect the next snapshot revision
  5. Upon successful validation of the release candidate burn-in:
    1. create a PR against the release branch to update ONLY the build version to 23.7.3, removing the -RC suffix
    2. upon successful build and merge of the release PR:
      1. draft a new github release for 23.7.3
      2. wait for docker artifacts to build and publish
      3. publish the github release with artifact SHAs and announce on HL discord

...