Skip to content
This repository has been archived by the owner on Dec 21, 2023. It is now read-only.

Hotfix Checklist

Johannes Bräuer edited this page Jun 7, 2021 · 2 revisions

Create a hotfix release for Keptn Core

Creating a hotfix release for Keptn Core is meant to be a simple process of just releasing the relevant changes, without having to go through the whole release process.

For that matter, a hotfix release should only contain those components that have been changed, it should not be a full release of Keptn.

Process

Within this process, an example based on "release-0.8.2" and "0.8.2-hotfix1" is provided, for which a new version of helm-service.tgz for execution plane installation was released. Please adapt instructions to your needs.

  1. Collect all PRs relevant for the hotfix:
  1. Create a simple release issue that provides more information about the release and links to the PRs:
  1. Create a release-branch based on an existing release using the Create Release Branch Action
  • Use workflow from: master
  • Version (e.g., 0.8.0): 0.8.2-hotfix1
  • Which branch to create the release from (e.g., master): release-0.8.2
  1. Wait for the action to run. This creates a new branch called release-0.8.2-hotfix1, a PR from this branch back to master, and CI tasks are running.

  2. Checkout the release branch locally, and create backports for each of the above linked PRs by cherry-picking all commits (not the Pull Requests)

For each backport, branch away from release-0.8.2-hotfix1 branch and create a PR

git checkout release-0.8.2-hotfix1
git pull
git checkout -b backport/1234/my-feature
git cherry-pick COMMITID
git push -u origin backport/1234/my-feature
  1. Get the backport reviewed and merged into the release-0.8.2-hotfix1 branch

  2. Create release notes as a PR to the release-0.8.2-hotfix1 branch

  3. Once everything has been approved and merged into the release-0.8.2-hotfix1 branch, check the CI pipeline for this branch: https://github.com/keptn/keptn/actions/workflows/CI.yml?query=branch%3Arelease-0.8.2-hotfix1+event%3Apush

  4. Download artifacts from the respective CI pipeline

  5. Create a draft release, copy-paste the release notes into it, and attach the respective artifacts (e.g., helm-service.tgz)

  6. In case you are not releasing the CLI, mark the release as a pre-release. (This is in order to ensure that curl get.keptn.sh still works)

  7. Ask other Keptn core developers for final approval of the release

  8. Once everything is approved/clear, please press the Publish button on the release.