Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions addons/sonobuoy/0.57.5/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
asset sonobuoy.tar.gz https://github.com/vmware-tanzu/sonobuoy/releases/download/v0.57.5/sonobuoy_0.57.5_linux_amd64.tar.gz

image systemd-logs sonobuoy/systemd-logs:v0.4
image sonobuoy sonobuoy/sonobuoy:v0.57.5
Comment on lines +3 to +4

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Conformance Image Missing From Bundle

In airgap installs, this Manifest only packages the Sonobuoy and systemd-logs images. The installer later tries to retag k8s.gcr.io/conformance:v${KUBERNETES_VERSION} and registry.k8s.io/conformance:v${KUBERNETES_VERSION}, but if neither source image was bundled for this new version those retag calls are no-ops, and Sonobuoy conformance runs can fail when the plugin cannot pull the conformance image.

73 changes: 73 additions & 0 deletions addons/sonobuoy/0.57.5/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@

function sonobuoy() {
sonobuoy_binary

sonobuoy_airgap_maybe_tag_image "k8s.gcr.io/conformance:v${KUBERNETES_VERSION}" "registry.k8s.io/conformance:v${KUBERNETES_VERSION}"
sonobuoy_airgap_maybe_tag_image "registry.k8s.io/conformance:v${KUBERNETES_VERSION}" "k8s.gcr.io/conformance:v${KUBERNETES_VERSION}"
}

function sonobuoy_already_applied() {
sonobuoy_airgap_maybe_tag_image "k8s.gcr.io/conformance:v${KUBERNETES_VERSION}" "registry.k8s.io/conformance:v${KUBERNETES_VERSION}"
sonobuoy_airgap_maybe_tag_image "registry.k8s.io/conformance:v${KUBERNETES_VERSION}" "k8s.gcr.io/conformance:v${KUBERNETES_VERSION}"
}

function sonobuoy_join() {
sonobuoy_binary

sonobuoy_airgap_maybe_tag_image "k8s.gcr.io/conformance:v${KUBERNETES_VERSION}" "registry.k8s.io/conformance:v${KUBERNETES_VERSION}"
sonobuoy_airgap_maybe_tag_image "registry.k8s.io/conformance:v${KUBERNETES_VERSION}" "k8s.gcr.io/conformance:v${KUBERNETES_VERSION}"
}

function sonobuoy_binary() {
local src="${DIR}/addons/sonobuoy/${SONOBUOY_VERSION}"

if ! kubernetes_is_master; then
return 0
fi

if [ "${AIRGAP}" != "1" ]; then
mkdir -p "${src}/assets"
curl -L -o "${src}/assets/sonobuoy.tar.gz" "https://github.com/vmware-tanzu/sonobuoy/releases/download/v${SONOBUOY_VERSION}/sonobuoy_${SONOBUOY_VERSION}_linux_amd64.tar.gz"
fi

tar xzf "${src}/assets/sonobuoy.tar.gz" -C /usr/local/bin
}

function sonobuoy_airgap_maybe_tag_image() {
if [ "$AIRGAP" != "1" ]; then
return
fi
if [ -n "$DOCKER_VERSION" ]; then
sonobuoy_docker_maybe_tag_image "$@"
else
sonobuoy_ctr_maybe_tag_image "$@"
fi
}

function sonobuoy_docker_maybe_tag_image() {
local src="$1"
local dst="$2"
if ! docker image inspect "$src" >/dev/null 2>&1 ; then
# source image does not exist, will not tag
return
fi
if docker image inspect "$dst" >/dev/null 2>&1 ; then
# destination image exists, will not tag
return
fi
docker image tag "$src" "$dst"
}

function sonobuoy_ctr_maybe_tag_image() {
local src="$1"
local dst="$2"
if [ "$(ctr -n=k8s.io images list -q name=="$src" 2>/dev/null | wc -l)" = "0" ] ; then
# source image does not exist, will not tag
return
fi
if [ "$(ctr -n=k8s.io images list -q name=="$dst" 2>/dev/null | wc -l)" = "1" ] ; then
# destination image exists, will not tag
return
fi
ctr -n=k8s.io images tag "$src" "$dst"
}
1 change: 1 addition & 0 deletions web/src/installers/versions.js
Original file line number Diff line number Diff line change
Expand Up @@ -778,6 +778,7 @@ module.exports.InstallerVersions = {
],
sonobuoy: [
// cron-sonobuoy-update
"0.57.5",
"0.57.3",
"0.57.2",
"0.57.1",
Expand Down
Loading