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 0.43.0 release #21893

Open
27 of 36 tasks
pront opened this issue Nov 26, 2024 · 0 comments
Open
27 of 36 tasks

Vector 0.43.0 release #21893

pront opened this issue Nov 26, 2024 · 0 comments
Labels
domain: releasing Anything related to releasing Vector

Comments

@pront
Copy link
Member

pront commented Nov 26, 2024

The week before the release:

  • Cut a new release of VRL if needed
  • 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
  • Pin VRL to latest released version rather than main
  • 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
    • Review generated changelog entries to ensure they are understandable to end-users
    • Copy VRL changelogs from the VRL version in the last Vector release as a new changelog entry
      (example)
  • 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
@pront pront added the domain: releasing Anything related to releasing Vector label Nov 26, 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