Althought, we changed the script "gen_versions_txt.sh" to accept a tag rather than a branch, this change is not sufficient. This script generates the right version file based on a tag, but function `get_from_kata_deps` does not use this, and ends up using the master branch instead. This is because this function looks at an env variable called $BRANCH and ends up using master branch if the variable is not defined. Pass the tag/new version to the build scripts, so that this tag is passed along to `get_from_kata_dep`. With this change, the correct version information is consumed by the build scripts for the various hypervisors and kernel. Fixes #831 Signed-off-by: Archana Shinde <archana.m.shinde@intel.com>
Release information
Introduction
This directory contains information of the process and tools used for creating Kata Containers releases.
Create a Kata Containers release
See the release documentation.
Release tools
update-repository-version.sh
This script creates a GitHub pull request (a.k.a PR) to change the version in all the Kata repositories.
For more information on using the script, run the following:
$ ./update-repository-version.sh -h
Update Kata projects to a new version
Kata Containers is divided into multiple projects. With each release, all project versions are updated to keep the version consistent.
To update all versions for all projects, use the following:
$ make bump-kata-version NEW_VERSION=<new-version>
The makefile target bump-kata-version creates a GitHub pull request in the
Kata repositories. These pull requests are tested by the Kata CI to ensure the
entire project is working prior to the release. Next, the PR is approved and
merged by Kata Containers members.
tag_repos.sh
After all the Kata repositories are updated with a new version, they need to be tagged.
The tag_repos.sh script is used to create tags for the Kata Containers
repositories. This script ensures that all the repositories are in the same
version (by checking the VERSION file).
The script creates an annotated tag for the new release version for the following repositories:
- agent
- proxy
- runtime
- shim
- throttler
The script also tags the tests and osbuilder repositories to make it clear which versions of these supporting repositories are used for the release.