Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Vector v0.39.0 release #20665

Closed
32 tasks done
jszwedko opened this issue Jun 13, 2024 · 0 comments
Closed
32 tasks done

Vector v0.39.0 release #20665

jszwedko opened this issue Jun 13, 2024 · 0 comments
Labels
domain: releasing Anything related to releasing Vector

Comments

@jszwedko
Copy link
Member

jszwedko commented Jun 13, 2024

The week before the release:

  • Check for any outstanding deprecation actions in DEPRECATIONS.md and
    take them (or have someone help you take them)
  • Create a new release branch from master to freeze commits
    • git fetch && git checkout origin/master && git checkout -b v0.<new version number> && git push -u
  • Create a new release preparation branch from master
    • git checkout -b prepare-v0.<new version number> && git push -u
  • Check if there is a newer version of Alpine or Debian available to update the release images
    in distribution/docker/. Update if so.
  • Run cargo vdev build release-cue to generate a new cue file for the release
    • Add description key to the generated cue file with a description of the release (see
      previous releases for examples).
    • Ensure any breaking changes are highlighted in the release upgrade guide
    • Ensure any deprecations are highlighted in the release upgrade guide
  • Update version number in website/cue/reference/administration/interfaces/kubectl.cue
  • Update version number in distribution/install.sh
  • Add new version to website/cue/reference/versions.cue
  • Create new release md file by copying an existing one in ./website/content/en/releases/ and
    updating version number
  • Commit these changes
  • Open PR against the release branch (v0.<new version number>) for review
  • PR approval

On the day of release:

  • Rebase the release preparation branch on the release branch
    • Squash the release preparation commits (but not the cherry-picked commits!) to a single
      commit. This makes it easier to cherry-pick to master after the release. 
    • Ensure release date in cue matches current date.
  • Merge release preparation branch into the release branch
    • git co v0.<new version number> && git merge --ff-only prepare-v0.<new version number>
  • Tag new release
    • git tag v0.<minor>.0 -a -m v0.<minor>.0
    • git push origin v0.<minor>.0
  • Wait for release workflow to complete
  • Release Linux packages. See vector-release usage.
  • Release updated Helm chart. See releasing Helm chart.
  • Once Helm chart is released, updated Vector manifests
    • Run cargo vdev build manifests and open a PR with changes
  • Add docker images to https://github.com/DataDog/images to have them available internally.
  • Cherry-pick any release commits from the release branch that are not on master, to master
  • Bump the release number in the Cargo.toml on master to the next major release
  • Reset the website branch to the HEAD of the release branch to update https://vector.dev
    • git checkout website && git reset --hard origin/v0.<new version number> && git push
  • Kick-off post-mortems for any regressions resolved by the release
@jszwedko jszwedko added the domain: releasing Anything related to releasing Vector label Jun 13, 2024
@jszwedko jszwedko added this to the Vector v0.39.0 milestone Jun 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain: releasing Anything related to releasing Vector
Projects
None yet
Development

No branches or pull requests

1 participant