Release Process
This document describes how to perform a new Theodolite release.
We assume that we are creating the release v0.3.1. Please make sure to adjust
the following steps according to the release, you are actually performing.
-
Create a new branch
v0.3if it does not already exist. This branch will never again be merged into main. -
Checkout the
v0.3branch. -
Update all references to artifacts which are versioned. This includes:
- Update all references to Theodolite Docker images to tag
v0.3.1. These are:- the default
helm/values.yamlfile, - the example
execution/theodolite.yamljob, - the Kubernetes benchmark resources in
theodolite-benchmarks/definitions/**/resourcesand - the Docker Compose files in
theodolite-benchmarks/docker-test.
- the default
-
Update both, the
versionand theappVersionfields, in the HelmCharts.yamlfile to0.3.1. -
Update the
versionfield of thetheodolite/build.gradlefile to0.3.1. Make sure to also adjust all references to the build artifact in thetheodolite/README.md. -
Update
codemeta.jsonto match the new version. In particular, make sure thatversionpoints to the version you are releasing anddateModifiedpoints to the date you are relasing this version. CodeMeta generator may help you in updating the file. - Update
CITATION.cffto match the new version. At least update theversionfield.
- Update all references to Theodolite Docker images to tag
-
Create a Helm package by running
./build-package.shfrom the chart directory. -
Update the Helm repository index of located at
/docsby running./update-index.sh v0.3.1. -
Commit these changes to the
v0.3branch. -
Tag this commit
v0.3.1(can be done via GitLab). The corresponding Docker images will be uploaded from the CI/CD pipeline. -
Create releases on GitLab and GitHub. Upload the generated Helm package to these releases via the UIs of GitLab and GitHub.
-
Switch to the
mainbranch. -
Re-run
./update-index.sh v0.3.1to include the latest release in the upstream Helm repository. You can now delete the packaged Helm chart. -
If this release increments Theodolite’s latest version number,
-
Update the Helm
Charts.yamlfile to0.4.0-SNAPSHOT(see Step 3). -
Update the Theodolite
build.gradleandREADME.mdfiles0.4.0-SNAPSHOT(see Step 3). -
Update the
codemeta.jsonfile according to Step 3. -
Update the
CITATION.cfffile according to Step 3.
-
-
Commit these changes to the
mainbranch.