Skip to content

Latest commit

 

History

History
58 lines (49 loc) · 2.77 KB

RELEASES.MD

File metadata and controls

58 lines (49 loc) · 2.77 KB

Release Candidates

  • Push a semver tag to main. Something like:
    • git tag -a v1.2.0-rc.0
    • git push origin v1.2.0-rc.0
  • This will initiate the build process in Github Actions and Drone. The tagged docker image should be available here shortly: https://hub.docker.com/r/grafana/tempo/tags?page=1&ordering=last_updated
  • A Github Release Draft should also be available here: https://github.com/grafana/tempo/releases
    • Copy over the CHANGELOG entries for the release
    • Call out contributors for their work
    • Cull unnecessary changes that don't impact the Tempo binary or deployment
    • Call out breaking changes!
  • Publish the release making sure that "This is a pre-release" is checked.

Releases

This document details release procedures for Tempo. Currently it's pretty dang easy.

  • Follow all steps in Release Candidates except:
    • Drop the -rc.# postfix from the tag. For instance use v1.2.0 instead. Something like:
      • git tag -a v1.2.0
      • git push origin v1.2.0
    • Make sure that the "This is a pre-release" is unchecked when publishing the release.
  • Submit a PR cleaning up the changelog and moving everything under "main/unreleased" to be under the newly minted version.
  • Update helm
    • Submit PRs to github.com/grafana/helm-charts to update to the newly cut version.
      • One PR each for the tempo, tempo-distributed and tempo-vulture helm charts.
      • Search the chart for the previous version and udpate each version number to current.

Patch Releases

Patches release should be cut for serious bug fixes or security issues.

  • Check to see if a release branch already exists. The release branch will match the same major and minor versions. If this branch doesn't exist then you will need to create it. See nested instructions. git checkout release-vX.Y

    • Checkout to the release tag we are branching off. e.g.:
      git checkout vX.Y.Z
    • Create a new branch. It should be named release-<base version>.
      git checkout -b release-vX.Y
  • Cherry-pick the commit hash that you want to apply to this release.
    git cherry-pick <commit hash>

  • Push the commit
    git push

  • Create and push a tag to initiate the release.
    git tag -a v1.0.1
    git push origin v1.0.1
    This triggers the build.

  • Follow CHANGELOG procedures above.

  • Update the docs

    • Patch release
      • Update version_latest in _index.md if patching the current stable release.
      • ./scripts/docs-release.sh tempo vX.Y.Z++ v.X.Y.Z and then rm -R content/docs/tempo/v.X.Y.Z if patching a previous release.
      • Include the new bug fixes in the release notes in content/docs/tempo/latest/release-notes and Tempo's main branch.
  • Submit a PR to the Helm repo as described above.