Documentation for version v0.15.1 is no longer actively maintained. The version you are currently viewing is a static snapshot. For up-to-date documentation, see the latest version.
pkg/buildinfo/version.go
.pkg/image/
, copy the latest v1.x.go
file to a file which corresponds to the new Kubernetes release number.
For example, if the new Sonobuoy release corresponds to Kubernetes v1.15
, copy the v1.14.go
file to v1.15.go
.
cp pkg/image/v1.{14,15}.go
This file will contain a function to return the list of test images for this new release.
v1_15
.config
map and replace with those copied from the Kubernetes repository.
The entries from the Kubernetes repository use an int
as the key in the map however in the Sonobuoy repository the keys are strings.
Convert the new key names to strings.GetImageConfigs
function within pkg/image/manifest.go
.
Add a new case to the minor version check which will be the minor version of the new Kubernetes release.
In this new case, call the newly created function (e.g. r.v1_15()
).pkg/buildinfo/version.go
and update the MinimumKubeVersion
to be 2 minor version below the new Kubernetes release version and update the MaximumKubeVersion
to support future point releases.
For example, for the Kubernetes 1.15.0 release, the MinimumKubeVersion
would become 1.13.0
and the MaximumKubeVersion
would become 1.15.99
. git tag -a v0.x.y -m "Release v0.x.y"
github.com/vmware-tanzu/sonobuoy
repository.
git remote -v
The output of this command should include at least two configured remotes, typically origin
, which refers to your personal fork, and upstream
which refers to the upstream Sonobuoy repository.
For example:
origin git@github.com:<username>/sonobuoy.git (fetch)
origin git@github.com:<username>/sonobuoy.git (push)
upstream https://github.com/vmware-tanzu/sonobuoy (fetch)
upstream https://github.com/vmware-tanzu/sonobuoy (push)
For the following steps, use the remote configured for the vmware-tanzu/sonobuoy
repository.
The following instructions will use upstream
.
NOTE: This will push all tags.
git push upstream --tags
To push just one tag, use the following command format (replacing v0.x.y
with the tag created in the previous step):
git push upstream refs/tags/v0.x.y
If there is a problem and you need to remove the tag, run the following commands:
git tag -d v0.x.y
git push upstream :refs/tags/v0.x.y
NOTE: The
:
preceding the tag ref is necessary to delete the tag from the remote repository. Git refspecs have the format<+><src>:<dst>
. By pushing an emptysrc
to the remotedst
, it makes the destination ref empty, effectively deleting it. For more details, see thegit push
documentation or this concise explanation on Stack Overflow.
v0.x.y
and confirm that the images get pushed correctly.docker run -it gcr.io/heptio-images/sonobuoy:v0.x.y /sonobuoy version
The Sonobuoy Version
in the output should match the release tag above.
sonobuoy run --mode quick
.
If this release corresponds to a new Kubernetes release as well, ensure:
export KUBECONFIG="$(kind get kubeconfig-path --name="kind")"
kubectl version --short
and verify that the server version matches the intended Kubernetes version.
sonobuoy images
and get a list of test images as expectedFollowing the release when the new tag is made, the documentation will need to be updated to include the new version.
The changes for this can almost all be completed by running the command:
./scripts/update_docs.sh v0.15.0
This will copy the current master docs into the version given and update a few of the links in the README to be correct. It will also update the website config to add the new version and consider it the newest version of the docs.
To help you get started, see the documentation.