diff --git a/vhdbuilder/prefetch/Makefile b/vhdbuilder/prefetch/Makefile index be5fe775507..b05eea54491 100644 --- a/vhdbuilder/prefetch/Makefile +++ b/vhdbuilder/prefetch/Makefile @@ -5,13 +5,9 @@ SHELL = bash all: generate .PHONY: generate -generate: generate-testdata +generate: REGENERATE_CONTAINER_IMAGE_PREFETCH_TESTDATA="true" go test ./... .PHONY: test test: - go test ./... - -.PHONY: generate-testdata -generate-testdata: - @bash ./hack/generate-testdata.sh \ No newline at end of file + go test ./... \ No newline at end of file diff --git a/vhdbuilder/prefetch/hack/generate-testdata.sh b/vhdbuilder/prefetch/hack/generate-testdata.sh deleted file mode 100755 index 04e61a94170..00000000000 --- a/vhdbuilder/prefetch/hack/generate-testdata.sh +++ /dev/null @@ -1,19 +0,0 @@ -#!/bin/bash -set -euo pipefail - -SCRIPT_PATH="$( cd -- "$(dirname "$0")" >/dev/null 2>&1 ; pwd -P )" -COMPONENTS_RELPATH="$SCRIPT_PATH/../../../parts/linux/cloud-init/artifacts/components.json" - -main() { - if [ ! -f "$COMPONENTS_RELPATH" ]; then - echo "unable to generate testdata, components.json does not exist at: $COMPONENTS_RELPATH" - exit 1 - fi - - echo "generating prefetch testdata from $COMPONENTS_RELPATH" - TESTDATA_PATH="$SCRIPT_PATH/../internal/containerimage/testdata" - mkdir -p "$TESTDATA_PATH" - cp -r "$COMPONENTS_RELPATH" "$TESTDATA_PATH" -} - -main "$@" \ No newline at end of file diff --git a/vhdbuilder/prefetch/internal/containerimage/containerimage.go b/vhdbuilder/prefetch/internal/containerimage/containerimage.go index 3a9cc5621dc..fc31e56d418 100644 --- a/vhdbuilder/prefetch/internal/containerimage/containerimage.go +++ b/vhdbuilder/prefetch/internal/containerimage/containerimage.go @@ -19,7 +19,7 @@ var ( // GeneratePrefetchScript generates the container image prefetch script based on the specified component list. func GeneratePrefetchScript(list *components.List) ([]byte, error) { if list == nil { - return nil, fmt.Errorf("components list generate opt must be non-nil") + return nil, fmt.Errorf("components list must be non-nil") } var args TemplateArgs for _, image := range list.Images { diff --git a/vhdbuilder/prefetch/internal/containerimage/containerimage_test.go b/vhdbuilder/prefetch/internal/containerimage/containerimage_test.go index a4427b98242..f3007c78910 100644 --- a/vhdbuilder/prefetch/internal/containerimage/containerimage_test.go +++ b/vhdbuilder/prefetch/internal/containerimage/containerimage_test.go @@ -2,6 +2,7 @@ package containerimage_test import ( "os" + "os/exec" "path/filepath" "strings" "testing" @@ -13,23 +14,25 @@ import ( const ( testDataPath = "testdata/" + artifactsRelPath = "parts/linux/cloud-init/artifacts" regenerateTestData = "REGENERATE_CONTAINER_IMAGE_PREFETCH_TESTDATA" ) var ( - componentsTestDataPath = filepath.Join(testDataPath, "components.json") prefetchScriptTestDataPath = filepath.Join(testDataPath, "prefetch.sh") ) func TestContianerImage(t *testing.T) { + componentsPath := resolveComponentsBasePath(t) + if strings.EqualFold(os.Getenv(regenerateTestData), "true") { - generate(t) + generate(t, componentsPath) } expectedContent, err := os.ReadFile(prefetchScriptTestDataPath) assert.NoError(t, err) - list, err := components.ParseList(componentsTestDataPath) + list, err := components.ParseList(componentsPath) assert.NoError(t, err) actualContent, err := containerimage.GeneratePrefetchScript(list) @@ -38,13 +41,13 @@ func TestContianerImage(t *testing.T) { assert.Equal(t, expectedContent, actualContent) } -func generate(t *testing.T) { +func generate(t *testing.T, componentsPath string) { t.Log("generating container image prefetch.sh testdata...") err := os.MkdirAll(testDataPath, os.ModePerm) assert.NoError(t, err) - list, err := components.ParseList(componentsTestDataPath) + list, err := components.ParseList(componentsPath) assert.NoError(t, err) content, err := containerimage.GeneratePrefetchScript(list) @@ -53,3 +56,11 @@ func generate(t *testing.T) { err = os.WriteFile(prefetchScriptTestDataPath, content, os.ModePerm) assert.NoError(t, err) } + +func resolveComponentsBasePath(t *testing.T) string { + // this is hack until we can get rid of storing static testdata altogether + repoBasePath, err := exec.Command("git", "rev-parse", "--show-toplevel").Output() + assert.NoError(t, err, "unable to determine repo root with git rev-parse") + basePath := strings.ReplaceAll(string(repoBasePath), "\n", "") + return filepath.Join(filepath.Join(basePath, artifactsRelPath), "components.json") +} diff --git a/vhdbuilder/prefetch/internal/containerimage/testdata/components.json b/vhdbuilder/prefetch/internal/containerimage/testdata/components.json deleted file mode 100644 index 1e5ffc4f638..00000000000 --- a/vhdbuilder/prefetch/internal/containerimage/testdata/components.json +++ /dev/null @@ -1,835 +0,0 @@ -{ - "ContainerImages": [ - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/autoscaler/addon-resizer:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/autoscaler/addon-resizer", - "latestVersion": "1.8.22", - "previousLatestVersion": "1.8.20" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/pause:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/pause", - "latestVersion": "3.6" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/coredns:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/coredns", - "latestVersion": "v1.9.4-hotfix.20240704", - "previousLatestVersion": "v1.9.4-hotfix.20240627" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/containernetworking/azure-cni:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-cni", - "latestVersion": "v1.5.35", - "previousLatestVersion": "v1.5.32", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/dropgz" - ] - }, - "previousLatestVersion": { - "binaries": [ - "/dropgz" - ] - } - } - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-cni", - "latestVersion": "v1.6.13", - "previousLatestVersion": "v1.6.7", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/dropgz" - ] - }, - "previousLatestVersion": { - "binaries": [ - "/dropgz" - ] - } - } - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/containernetworking/azure-cns:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-cns", - "latestVersion": "v1.4.52", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/usr/local/bin/azure-cns" - ] - } - } - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-cns", - "latestVersion": "v1.5.35", - "previousLatestVersion": "v1.5.32", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/usr/local/bin/azure-cns" - ] - }, - "previousLatestVersion": { - "binaries": [ - "/usr/local/bin/azure-cns" - ] - } - } - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-cns", - "latestVersion": "v1.6.13", - "previousLatestVersion": "v1.6.7", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/usr/local/bin/azure-cns" - ] - }, - "previousLatestVersion": { - "binaries": [ - "/usr/local/bin/azure-cns" - ] - } - } - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/containernetworking/azure-ipam:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-ipam", - "latestVersion": "v0.2.0", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/dropgz" - ] - } - } - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/containernetworking/cni-dropgz:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/cni-dropgz", - "latestVersion": "v0.0.20", - "containerImagePrefetch": { - "latestVersion": { - "binaries": [ - "/dropgz" - ] - } - } - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/containernetworking/azure-npm:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=containernetworking/azure-npm", - "latestVersion": "v1.5.34" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/apiserver-network-proxy/agent:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/apiserver-network-proxy/agent", - "latestVersion": "v0.1.6-hotfix.20240116" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/apiserver-network-proxy/agent", - "latestVersion": "v0.30.3-hotfix.20240819" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes-csi/secrets-store/driver:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/secrets-store/driver", - "latestVersion": "v1.4.5", - "previousLatestVersion": "v1.4.4" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/azure/secrets-store/provider-azure:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/azure/secrets-store/provider-azure", - "latestVersion": "v1.5.3", - "previousLatestVersion": "v1.5.2" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/azuremonitor/containerinsights/ciprod:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azuremonitor/containerinsights/ciprod", - "latestVersion": "3.1.23" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/aks/msi/addon-token-adapter:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=aks/msi/addon-token-adapter", - "latestVersion": "master.221118.2" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/azuremonitor/containerinsights/ciprod/prometheus-collector/images:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azuremonitor/containerinsights/ciprod/prometheus-collector/images", - "latestVersion": "6.10.0-main-09-16-2024-85a71678", - "previousLatestVersion": "6.9.1-main-08-28-2024-f33aacb5" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azuremonitor/containerinsights/ciprod/prometheus-collector/images", - "latestVersion": "6.10.0-main-09-16-2024-85a71678-targetallocator", - "previousLatestVersion": "6.9.1-main-08-28-2024-f33aacb5-targetallocator" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azuremonitor/containerinsights/ciprod/prometheus-collector/images", - "latestVersion": "6.10.0-main-09-16-2024-85a71678-cfg", - "previousLatestVersion": "6.9.1-main-08-28-2024-f33aacb5-cfg" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/kube-state-metrics:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/kube-state-metrics", - "latestVersion": "v2.11.0" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/cilium/cilium:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/cilium/cilium", - "latestVersion": "1.13.13-4", - "previousLatestVersion": "1.13.13-3" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/cilium/cilium", - "latestVersion": "1.14.10-2", - "previousLatestVersion": "1.14.10-1" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/azure-cloud-node-manager:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/azure-cloud-node-manager", - "latestVersion": "v1.27.21", - "previousLatestVersion": "v1.27.20" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/azure-cloud-node-manager", - "latestVersion": "v1.28.13", - "previousLatestVersion": "v1.28.11" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/azure-cloud-node-manager", - "latestVersion": "v1.29.11", - "previousLatestVersion": "v1.29.9" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/azure-cloud-node-manager", - "latestVersion": "v1.30.7", - "previousLatestVersion": "v1.30.5" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/azure-cloud-node-manager", - "latestVersion": "v1.31.1", - "previousLatestVersion": "v1.30.0" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/autoscaler/cluster-proportional-autoscaler:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/autoscaler/cluster-proportional-autoscaler", - "latestVersion": "v1.8.9" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/aks/ip-masq-agent-v2:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=aks/ip-masq-agent-v2", - "latestVersion": "v0.1.13", - "previousLatestVersion": "v0.1.11" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes-csi/azuredisk-csi:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/azuredisk-csi", - "latestVersion": "v1.28.10", - "previousLatestVersion": "v1.28.9" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/azuredisk-csi", - "latestVersion": "v1.29.9", - "previousLatestVersion": "v1.29.8" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/azuredisk-csi", - "latestVersion": "v1.30.4", - "previousLatestVersion": "v1.30.3" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes-csi/azurefile-csi:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/azurefile-csi", - "latestVersion": "v1.28.12", - "previousLatestVersion": "v1.28.11" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/azurefile-csi", - "latestVersion": "v1.29.8", - "previousLatestVersion": "v1.29.7" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/azurefile-csi", - "latestVersion": "v1.30.5", - "previousLatestVersion": "v1.30.3" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes-csi/blob-csi:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/blob-csi", - "latestVersion": "v1.22.9", - "previousLatestVersion": "v1.22.8" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/blob-csi", - "latestVersion": "v1.23.8", - "previousLatestVersion": "v1.23.7" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/blob-csi", - "latestVersion": "v1.24.4", - "previousLatestVersion": "v1.24.3" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes-csi/livenessprobe:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/livenessprobe", - "latestVersion": "v2.13.1", - "previousLatestVersion": "v2.13.0" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/livenessprobe", - "latestVersion": "v2.12.0" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes-csi/csi-node-driver-registrar:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/csi-node-driver-registrar", - "latestVersion": "v2.11.1" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes-csi/csi-node-driver-registrar", - "latestVersion": "v2.10.1" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/open-policy-agent/gatekeeper:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/open-policy-agent/gatekeeper", - "latestVersion": "v3.17.1" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/open-policy-agent/gatekeeper", - "latestVersion": "v3.16.3" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/aks/aks-app-routing-operator:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [] - }, - { - "downloadURL": "mcr.microsoft.com/oss/virtual-kubelet/virtual-kubelet:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [] - }, - { - "downloadURL": "mcr.microsoft.com/azure-policy/policy-kubernetes-addon-prod:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azure-policy/policy-kubernetes-addon-prod", - "latestVersion": "1.7.1", - "previousLatestVersion": "1.7.0" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azure-policy/policy-kubernetes-addon-prod", - "latestVersion": "1.5.0" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/azure-policy/policy-kubernetes-webhook:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azure-policy/policy-kubernetes-webhook", - "latestVersion": "1.7.1", - "previousLatestVersion": "1.7.0" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=azure-policy/policy-kubernetes-webhook", - "latestVersion": "1.5.0" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/azure-application-gateway/kubernetes-ingress:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [] - }, - { - "downloadURL": "mcr.microsoft.com/aks/aks-node-ca-watcher:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=aks/aks-node-ca-watcher", - "latestVersion": "master.240820.1" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/windows-gmsa-webhook:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/windows-gmsa-webhook", - "latestVersion": "v0.7.1" - } - ] - }, - { - "downloadURL": "mcr.microsoft.com/oss/kubernetes/kube-proxy:*", - "amd64OnlyVersions": [], - "multiArchVersionsV2": [ - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/kube-proxy", - "latestVersion": "v1.27.16", - "previousLatestVersion": "v1.27.15" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/kube-proxy", - "latestVersion": "v1.28.14", - "previousLatestVersion": "v1.28.13" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/kube-proxy", - "latestVersion": "v1.29.9", - "previousLatestVersion": "v1.29.8" - }, - { - "renovateTag": "registry=https://mcr.microsoft.com, name=oss/kubernetes/kube-proxy", - "latestVersion": "v1.30.5", - "previousLatestVersion": "v1.30.4" - } - ] - } - ], - "Packages": [ - { - "name": "oras", - "downloadLocation": "/usr/local/bin", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.2.0" - } - ], - "downloadURL": "https://github.com/oras-project/oras/releases/download/v${version}/oras_${version}_linux_${CPU_ARCH}.tar.gz" - } - } - } - }, - { - "name": "runc", - "downloadLocation": "/opt/runc/downloads", - "downloadURIs": { - "ubuntu": { - "r1804": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.1.14-ubuntu18.04u1" - } - ] - }, - "r2004": { - "versionsV2": [ - { - "renovateTag": "name=moby-runc, os=ubuntu, release=20.04", - "latestVersion": "1.1.14-ubuntu20.04u1" - } - ] - }, - "r2204": { - "versionsV2": [ - { - "renovateTag": "name=moby-runc, os=ubuntu, release=22.04", - "latestVersion": "1.1.14-ubuntu22.04u1" - } - ] - }, - "r2404": { - "versionsV2": [ - { - "renovateTag": "name=moby-runc, os=ubuntu, release=24.04", - "latestVersion": "1.1.14-ubuntu24.04u1" - } - ] - } - }, - "mariner": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.1.9-5.cm2" - } - ] - } - }, - "azurelinux": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.1.12-1.azl3" - } - ] - } - } - } - }, - { - "name": "containerd", - "downloadLocation": "/opt/containerd/downloads", - "downloadURIs": { - "ubuntu": { - "r2204": { - "versionsV2": [ - { - "renovateTag": "name=moby-containerd, os=ubuntu, release=22.04", - "latestVersion": "1.7.22-ubuntu22.04u1" - } - ] - }, - "r2004": { - "versionsV2": [ - { - "renovateTag": "name=moby-containerd, os=ubuntu, release=20.04", - "latestVersion": "1.7.22-ubuntu20.04u1" - } - ] - }, - "r1804": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.7.1-1" - } - ] - } - }, - "mariner": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.6.26-5.cm2" - } - ] - } - }, - "marinerkata": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "" - } - ] - } - }, - "azurelinux": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.7.13-3.azl3" - } - ] - } - }, - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.7.20" - } - ] - } - } - } - }, - { - "name": "cni-plugins", - "downloadLocation": "/opt/cni/downloads", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.4.1" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/cni-plugins/v${version}/binaries/cni-plugins-linux-${CPU_ARCH}-v${version}.tgz" - } - } - } - }, - { - "name": "azure-cni", - "downloadLocation": "/opt/cni/downloads", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.4.54" - }, - { - "renovateTag": "", - "latestVersion": "1.5.32", - "previousLatestVersion": "1.5.35" - }, - { - "renovateTag": "", - "latestVersion": "1.6.10", - "previousLatestVersion": "1.6.7" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/azure-cni/v${version}/binaries/azure-vnet-cni-linux-${CPU_ARCH}-v${version}.tgz" - } - } - } - }, - { - "name": "cri-tools", - "downloadLocation": "/opt/crictl/downloads", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.29.0" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/cri-tools/v${version}/binaries/crictl-v${version}-linux-${CPU_ARCH}.tar.gz" - } - } - } - }, - { - "name": "kubernetes-binaries", - "downloadLocation": "/opt/kubernetes/downloads", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "k8sVersion": "1.27", - "renovateTag": "", - "latestVersion": "1.27.16", - "previousLatestVersion": "1.27.15" - }, - { - "k8sVersion": "1.28", - "renovateTag": "", - "latestVersion": "1.28.14", - "previousLatestVersion": "1.28.13" - }, - { - "k8sVersion": "1.29", - "renovateTag": "", - "latestVersion": "1.29.9", - "previousLatestVersion": "1.29.8" - }, - { - "k8sVersion": "1.30", - "renovateTag": "", - "latestVersion": "1.30.5", - "previousLatestVersion": "1.30.4" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/kubernetes/v${version}/binaries/kubernetes-node-linux-${CPU_ARCH}.tar.gz" - } - } - } - }, - { - "name": "azure-acr-credential-provider", - "downloadLocation": "/opt/credentialprovider/downloads", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "1.30.0" - }, - { - "renovateTag": "", - "latestVersion": "1.29.2" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/cloud-provider-azure/v${version}/binaries/azure-acr-credential-provider-linux-${CPU_ARCH}-v${version}.tar.gz" - } - } - } - }, - { - "name": "containerd-wasm-shims", - "downloadLocation": "/usr/local/bin", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "0.3.0" - }, - { - "renovateTag": "", - "latestVersion": "0.5.1" - }, - { - "renovateTag": "", - "latestVersion": "0.8.0" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/containerd-wasm-shims/v${version}/linux/${CPU_ARCH}" - } - } - } - }, - { - "name": "spinkube", - "downloadLocation": "/usr/local/bin", - "downloadURIs": { - "default": { - "current": { - "versionsV2": [ - { - "renovateTag": "", - "latestVersion": "0.15.1" - } - ], - "downloadURL": "https://acs-mirror.azureedge.net/spinkube/v${version}/linux/${CPU_ARCH}" - } - } - } - } - ] -} diff --git a/vhdbuilder/prefetch/internal/containerimage/testdata/prefetch.sh b/vhdbuilder/prefetch/internal/containerimage/testdata/prefetch.sh index aee43b45019..af95e0cbb5c 100755 --- a/vhdbuilder/prefetch/internal/containerimage/testdata/prefetch.sh +++ b/vhdbuilder/prefetch/internal/containerimage/testdata/prefetch.sh @@ -27,4 +27,4 @@ prefetch "mcr.microsoft.com/containernetworking/azure-cns:v1.5.32" "/usr/local/b prefetch "mcr.microsoft.com/containernetworking/azure-cns:v1.6.13" "/usr/local/bin/azure-cns" prefetch "mcr.microsoft.com/containernetworking/azure-cns:v1.6.7" "/usr/local/bin/azure-cns" prefetch "mcr.microsoft.com/containernetworking/azure-ipam:v0.2.0" "/dropgz" -prefetch "mcr.microsoft.com/containernetworking/cni-dropgz:v0.0.20" "/dropgz" +prefetch "mcr.microsoft.com/containernetworking/cni-dropgz:v0.0.20" "/dropgz" \ No newline at end of file