diff --git a/.github/workflows/publish-docs-manual.yml b/.github/workflows/publish-docs-manual.yml index 8738905b8dcc..d368274296ee 100644 --- a/.github/workflows/publish-docs-manual.yml +++ b/.github/workflows/publish-docs-manual.yml @@ -3,7 +3,7 @@ on: workflow_dispatch: inputs: version: - description: 'Version tag (e.g."v1.31.5+k0s.0")' + description: 'Version tag (e.g."v1.32.1+k0s.0")' required: true env: diff --git a/Makefile b/Makefile index 03d215872d55..9c38578eea72 100644 --- a/Makefile +++ b/Makefile @@ -146,10 +146,14 @@ $(controller_gen_targets): $(GO_ENV_REQUISITES) hack/tools/boilerplate.go.txt ha touch -- '$@' # Run register-gen for each API group version. +# Usually register-gen should should be: +# k8s.io/code-generator/cmd/register-gen@v$(kubernetes_version:1.%=0.%) +# However, due to https://github.com/kubernetes/kubernetes/issues/129290 in 1.32.1 we +# need to hardcode it to 0.31.5 instead of the appropriate 0.32.1. register_gen_targets := $(foreach gv,$(api_group_versions),pkg/apis/$(gv)/zz_generated.register.go) codegen_targets += $(register_gen_targets) $(register_gen_targets): $(GO_ENV_REQUISITES) hack/tools/boilerplate.go.txt embedded-bins/Makefile.variables - CGO_ENABLED=0 $(GO) run k8s.io/code-generator/cmd/register-gen@v$(kubernetes_version:1.%=0.%) \ + CGO_ENABLED=0 $(GO) run k8s.io/code-generator/cmd/register-gen@v0.31.5 \ --go-header-file=hack/tools/boilerplate.go.txt \ --output-file='_$(notdir $@).tmp' \ 'github.com/k0sproject/k0s/$(dir $@)' || { \ diff --git a/cncf/GTR.md b/cncf/GTR.md index ca0413587a2a..53a322efd207 100644 --- a/cncf/GTR.md +++ b/cncf/GTR.md @@ -329,17 +329,17 @@ k0s project follows closely the upstream Kubernetes release cycle. The only diff The k0s version string consists of the Kubernetes version and the k0s version. For example: ```text -v1.31.5+k0s.0 +v1.32.1+k0s.0 ``` -The Kubernetes version (1.31.5) is the first part, and the last part (k0s.0) reflects the k0s version, which is built on top of the certain Kubernetes version. +The Kubernetes version (1.32.1) is the first part, and the last part (k0s.0) reflects the k0s version, which is built on top of the certain Kubernetes version. ## Installation Here’s an example of how to set a single node cluster: ```console -# export K0S_VERSION=v1.31.2+k0s.0 +# export K0S_VERSION=v1.32.1+k0s.0 # curl -sSfL https://github.com/k0sproject/k0s/releases/download/$K0S_VERSION/k0s-$K0S_VERSION-amd64 -o k0s # chmod u+x k0s # ./k0s install controller --single && ./k0s start diff --git a/cncf/security-self-assessment.md b/cncf/security-self-assessment.md index 5e4a008847dc..6f592049d042 100644 --- a/cncf/security-self-assessment.md +++ b/cncf/security-self-assessment.md @@ -9,7 +9,7 @@ This document serves as the k0s project [CNCF security self-assessment](https:// | Software | https://github.com/k0sproject/k0s | | Security Provider | No | | Languages | Golang | -| SBOM | [https://github.com/k0sproject/k0s/releases/download/v1.31.5%2Bk0s.0/spdx.json](https://github.com/k0sproject/k0s/releases/download/v1.31.5%2Bk0s.0/spdx.json) | +| SBOM | [https://github.com/k0sproject/k0s/releases/download/v1.32.1%2Bk0s.0/spdx.json](https://github.com/k0sproject/k0s/releases/download/v1.32.1%2Bk0s.0/spdx.json) | ## Security links diff --git a/embedded-bins/Makefile.variables b/embedded-bins/Makefile.variables index 926130d2ee46..bc32a196d469 100644 --- a/embedded-bins/Makefile.variables +++ b/embedded-bins/Makefile.variables @@ -22,7 +22,7 @@ containerd_build_shim_go_cgo_enabled = 0 #containerd_build_go_ldflags = containerd_build_go_ldflags_extra = "-w -s -extldflags=-static" -kubernetes_version = 1.31.5 +kubernetes_version = 1.32.1 helm_version = 3.11.1 kubernetes_buildimage = $(golang_buildimage) kubernetes_build_go_tags = "providerless" diff --git a/go.mod b/go.mod index 8dd4409523d3..83a86ec1e0d2 100644 --- a/go.mod +++ b/go.mod @@ -42,7 +42,7 @@ require ( github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.10.0 github.com/urfave/cli v1.22.16 - github.com/vishvananda/netlink v1.3.0 + github.com/vishvananda/netlink v1.3.1-0.20240905180732-b1ce50cfa9be github.com/vmware-tanzu/sonobuoy v0.57.2 github.com/zcalusic/sysinfo v1.1.3 go.etcd.io/etcd/api/v3 v3.5.17 @@ -63,31 +63,32 @@ require ( // Kubernetes require ( - k8s.io/api v0.31.5 - k8s.io/apiextensions-apiserver v0.31.5 - k8s.io/apimachinery v0.31.5 - k8s.io/cli-runtime v0.31.5 - k8s.io/client-go v0.31.5 - k8s.io/cloud-provider v0.31.5 - k8s.io/cluster-bootstrap v0.31.5 - k8s.io/component-base v0.31.5 - k8s.io/component-helpers v0.31.5 - k8s.io/cri-api v0.31.5 - k8s.io/kube-aggregator v0.31.5 - k8s.io/kubectl v0.31.5 - k8s.io/kubelet v0.31.5 - k8s.io/kubernetes v1.31.5 - k8s.io/mount-utils v0.31.5 - k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 + k8s.io/api v0.32.1 + k8s.io/apiextensions-apiserver v0.32.1 + k8s.io/apimachinery v0.32.1 + k8s.io/cli-runtime v0.32.1 + k8s.io/client-go v0.32.1 + k8s.io/cloud-provider v0.32.1 + k8s.io/cluster-bootstrap v0.32.1 + k8s.io/component-base v0.32.1 + k8s.io/component-helpers v0.32.1 + k8s.io/cri-api v0.32.1 + k8s.io/kube-aggregator v0.32.1 + k8s.io/kubectl v0.32.1 + k8s.io/kubelet v0.32.1 + k8s.io/kubernetes v1.32.1 + k8s.io/mount-utils v0.32.1 + k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 sigs.k8s.io/controller-runtime v0.19.4 sigs.k8s.io/yaml v1.4.0 ) require ( + cel.dev/expr v0.18.0 // indirect dario.cat/mergo v1.0.1 // indirect github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 // indirect github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20230306123547-8075edf89bb0 // indirect - github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect + github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect github.com/MakeNowJust/heredoc v1.0.0 // indirect github.com/Masterminds/goutils v1.1.1 // indirect github.com/Masterminds/semver v1.5.0 // indirect @@ -121,7 +122,6 @@ require ( github.com/cpuguy83/go-md2man/v2 v2.0.5 // indirect github.com/cyphar/filepath-securejoin v0.3.5 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect - github.com/daviddengcn/go-colortext v1.0.0 // indirect github.com/docker/cli v25.0.1+incompatible // indirect github.com/docker/distribution v2.8.3+incompatible // indirect github.com/docker/docker v27.1.1+incompatible // indirect @@ -133,7 +133,7 @@ require ( github.com/dustin/go-humanize v1.0.1 // indirect github.com/emicklei/go-restful/v3 v3.11.0 // indirect github.com/evanphx/json-patch/v5 v5.9.0 // indirect - github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d // indirect + github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect github.com/fatih/camelcase v1.0.0 // indirect github.com/fatih/color v1.14.1 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect @@ -153,8 +153,8 @@ require ( github.com/golang-jwt/jwt/v4 v4.5.1 // indirect github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect github.com/golang/protobuf v1.5.4 // indirect - github.com/google/btree v1.1.2 // indirect - github.com/google/cel-go v0.20.1 // indirect + github.com/google/btree v1.1.3 // indirect + github.com/google/cel-go v0.22.0 // indirect github.com/google/certificate-transparency-go v1.1.4 // indirect github.com/google/gnostic-models v0.6.8 // indirect github.com/google/gofuzz v1.2.0 // indirect @@ -163,7 +163,7 @@ require ( github.com/gorilla/mux v1.8.0 // indirect github.com/gorilla/websocket v1.5.0 // indirect github.com/gosuri/uitable v0.0.4 // indirect - github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 // indirect + github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect @@ -174,7 +174,7 @@ require ( github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/intel/goresctrl v0.3.0 // indirect github.com/jmoiron/sqlx v1.4.0 // indirect - github.com/jonboulle/clockwork v0.3.0 // indirect + github.com/jonboulle/clockwork v0.4.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect github.com/kisielk/sqlstruct v0.0.0-20201105191214-5f3e10d3ab46 // indirect @@ -195,8 +195,8 @@ require ( github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/moby/docker-image-spec v1.3.1 // indirect github.com/moby/locker v1.0.1 // indirect - github.com/moby/spdystream v0.4.0 // indirect - github.com/moby/sys/mountinfo v0.7.1 // indirect + github.com/moby/spdystream v0.5.0 // indirect + github.com/moby/sys/mountinfo v0.7.2 // indirect github.com/moby/sys/sequential v0.5.0 // indirect github.com/moby/sys/signal v0.7.0 // indirect github.com/moby/sys/symlink v0.2.0 // indirect @@ -209,8 +209,7 @@ require ( github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect github.com/opencontainers/go-digest v1.0.0 // indirect - github.com/opencontainers/runc v1.2.3 // indirect - github.com/opencontainers/selinux v1.11.0 // indirect + github.com/opencontainers/selinux v1.11.1 // indirect github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect @@ -226,7 +225,7 @@ require ( github.com/segmentio/backo-go v0.0.0-20200129164019-23eae7c10bd3 // indirect github.com/shopspring/decimal v1.4.0 // indirect github.com/spf13/cast v1.7.0 // indirect - github.com/stoewer/go-strcase v1.2.0 // indirect + github.com/stoewer/go-strcase v1.3.0 // indirect github.com/stretchr/objx v0.5.2 // indirect github.com/vishvananda/netns v0.0.4 // indirect github.com/weppos/publicsuffix-go v0.15.1-0.20210511084619-b1f36a2d6c0b // indirect @@ -234,7 +233,7 @@ require ( github.com/xeipuuv/gojsonpointer v0.0.0-20190905194746-02993c407bfb // indirect github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 // indirect github.com/xeipuuv/gojsonschema v1.2.0 // indirect - github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 // indirect + github.com/xiang90/probing v0.0.0-20221125231312-a49e3df8f510 // indirect github.com/xlab/treeprint v1.2.0 // indirect github.com/xtgo/uuid v0.0.0-20140804021211-a0b114877d4c // indirect github.com/zmap/zcrypto v0.0.0-20210511125630-18f1e0152cfc // indirect @@ -254,13 +253,12 @@ require ( go.opentelemetry.io/otel/sdk v1.31.0 // indirect go.opentelemetry.io/otel/trace v1.31.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect - go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect go.uber.org/multierr v1.11.0 // indirect golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f // indirect golang.org/x/net v0.34.0 // indirect golang.org/x/oauth2 v0.23.0 // indirect golang.org/x/term v0.28.0 // indirect - golang.org/x/time v0.5.0 // indirect + golang.org/x/time v0.7.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect google.golang.org/genproto v0.0.0-20240227224415-6ceb2ff114de // indirect google.golang.org/genproto/googleapis/api v0.0.0-20241015192408-796eee8c2d53 // indirect @@ -271,52 +269,52 @@ require ( gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiserver v0.31.5 // indirect - k8s.io/controller-manager v0.31.5 // indirect + k8s.io/apiserver v0.32.1 // indirect + k8s.io/controller-manager v0.32.1 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/kms v0.31.5 // indirect - k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect - k8s.io/metrics v0.31.5 // indirect + k8s.io/kms v0.32.1 // indirect + k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f // indirect + k8s.io/metrics v0.32.1 // indirect oras.land/oras-go v1.2.5 // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.0 // indirect - sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect - sigs.k8s.io/kustomize/api v0.17.2 // indirect - sigs.k8s.io/kustomize/kustomize/v5 v5.4.2 // indirect - sigs.k8s.io/kustomize/kyaml v0.17.1 // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect + sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 // indirect + sigs.k8s.io/kustomize/api v0.18.0 // indirect + sigs.k8s.io/kustomize/kustomize/v5 v5.5.0 // indirect + sigs.k8s.io/kustomize/kyaml v0.18.1 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.4.2 // indirect ) // Replacements duplicated from upstream Kubernetes replace ( - // https://github.com/kubernetes/kubernetes/blob/v1.31.5/go.mod#L227-L258 - k8s.io/api => k8s.io/api v0.31.5 - k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.31.5 - k8s.io/apimachinery => k8s.io/apimachinery v0.31.5 - k8s.io/apiserver => k8s.io/apiserver v0.31.5 - k8s.io/cli-runtime => k8s.io/cli-runtime v0.31.5 - k8s.io/client-go => k8s.io/client-go v0.31.5 - k8s.io/cloud-provider => k8s.io/cloud-provider v0.31.5 - k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.31.5 - k8s.io/code-generator => k8s.io/code-generator v0.31.5 - k8s.io/component-base => k8s.io/component-base v0.31.5 - k8s.io/component-helpers => k8s.io/component-helpers v0.31.5 - k8s.io/controller-manager => k8s.io/controller-manager v0.31.5 - k8s.io/cri-api => k8s.io/cri-api v0.31.5 - k8s.io/cri-client => k8s.io/cri-client v0.31.5 - k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.31.5 - k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.31.5 - k8s.io/endpointslice => k8s.io/endpointslice v0.31.5 - k8s.io/kms => k8s.io/kms v0.31.5 - k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.31.5 - k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.31.5 - k8s.io/kube-proxy => k8s.io/kube-proxy v0.31.5 - k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.31.5 - k8s.io/kubectl => k8s.io/kubectl v0.31.5 - k8s.io/kubelet => k8s.io/kubelet v0.31.5 - k8s.io/metrics => k8s.io/metrics v0.31.5 - k8s.io/mount-utils => k8s.io/mount-utils v0.31.5 - k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.31.5 - k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.31.5 - k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.31.5 - k8s.io/sample-controller => k8s.io/sample-controller v0.31.5 + // https://github.com/kubernetes/kubernetes/blob/v1.32.1/go.mod#L225-L257 + k8s.io/api => k8s.io/api v0.32.1 + k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.32.1 + k8s.io/apimachinery => k8s.io/apimachinery v0.32.1 + k8s.io/apiserver => k8s.io/apiserver v0.32.1 + k8s.io/cli-runtime => k8s.io/cli-runtime v0.32.1 + k8s.io/client-go => k8s.io/client-go v0.32.1 + k8s.io/cloud-provider => k8s.io/cloud-provider v0.32.1 + k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.32.1 + k8s.io/code-generator => k8s.io/code-generator v0.32.1 + k8s.io/component-base => k8s.io/component-base v0.32.1 + k8s.io/component-helpers => k8s.io/component-helpers v0.32.1 + k8s.io/controller-manager => k8s.io/controller-manager v0.32.1 + k8s.io/cri-api => k8s.io/cri-api v0.32.1 + k8s.io/cri-client => k8s.io/cri-client v0.32.1 + k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.32.1 + k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.32.1 + k8s.io/endpointslice => k8s.io/endpointslice v0.32.1 + k8s.io/kms => k8s.io/kms v0.32.1 + k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.32.1 + k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.32.1 + k8s.io/kube-proxy => k8s.io/kube-proxy v0.32.1 + k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.32.1 + k8s.io/kubectl => k8s.io/kubectl v0.32.1 + k8s.io/kubelet => k8s.io/kubelet v0.32.1 + k8s.io/metrics => k8s.io/metrics v0.32.1 + k8s.io/mount-utils => k8s.io/mount-utils v0.32.1 + k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.32.1 + k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.32.1 + k8s.io/sample-cli-plugin => k8s.io/sample-cli-plugin v0.32.1 + k8s.io/sample-controller => k8s.io/sample-controller v0.32.1 ) diff --git a/go.sum b/go.sum index 00ac7fabf552..97173b8b1bbd 100644 --- a/go.sum +++ b/go.sum @@ -1,3 +1,5 @@ +cel.dev/expr v0.18.0 h1:CJ6drgk+Hf96lkLikr4rFf19WrU0BOWEihyZnI2TAzo= +cel.dev/expr v0.18.0/go.mod h1:MrpN08Q+lEBs+bGYdLxxHkZoUSsCp0nSKTs0nTymJgw= cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw= dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= @@ -7,8 +9,8 @@ github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24 h1:bvDV9 github.com/AdaLogics/go-fuzz-headers v0.0.0-20230811130428-ced1acdcaa24/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8= github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20230306123547-8075edf89bb0 h1:59MxjQVfjXsBpLy+dbd2/ELV5ofnUkUZBvWSC85sheA= github.com/AdamKorcz/go-118-fuzz-build v0.0.0-20230306123547-8075edf89bb0/go.mod h1:OahwfttHWG6eJ0clwcfBAHoDI6X/LV/15hx/wlMZSrU= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 h1:UQHMgLO+TxOElx5B5HZ4hJQsoJ/PvUvKRhJHDQXO8P8= -github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= +github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 h1:L/gRVlceqvL25UVaW/CKtUDjefjrs0SPonmDGUVOYP0= +github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161/go.mod h1:xomTg63KZ2rFqZQzSB4Vz2SUXa1BpHTVz9L5PTmPC4E= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= github.com/BurntSushi/toml v1.4.0 h1:kuoIxZQy2WRRk1pttg9asf+WVv6tWQuBNVmK8+nqPr0= github.com/BurntSushi/toml v1.4.0/go.mod h1:ukJfTF/6rtPPRCnwkur4qwRxa8vTRFBF0uk2lLoLwho= @@ -132,8 +134,6 @@ github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSs github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM= github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/daviddengcn/go-colortext v1.0.0 h1:ANqDyC0ys6qCSvuEK7l3g5RaehL/Xck9EX8ATG8oKsE= -github.com/daviddengcn/go-colortext v1.0.0/go.mod h1:zDqEI5NVUop5QPpVJUxE9UO10hRnmkD5G4Pmri9+m4c= github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2 h1:aBfCb7iqHmDEIp6fBvC/hQUddQfg+3qdYjwzaiP9Hnc= github.com/distribution/distribution/v3 v3.0.0-20221208165359-362910506bc2/go.mod h1:WHNsWjnIn2V1LYOrME7e8KxSeKunYHsxEm4am0BUtcI= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= @@ -168,8 +168,8 @@ github.com/evanphx/json-patch v5.9.0+incompatible h1:fBXyNpNMuTTDdquAq/uisOr2lSh github.com/evanphx/json-patch v5.9.0+incompatible/go.mod h1:50XU6AFN0ol/bzJsmQLiYLvXMP4fmwYFNcr97nuDLSk= github.com/evanphx/json-patch/v5 v5.9.0 h1:kcBlZQbplgElYIlo/n1hJbls2z/1awpXxpRi0/FOJfg= github.com/evanphx/json-patch/v5 v5.9.0/go.mod h1:VNkHZ/282BpEyt/tObQO8s5CMPmYYq14uClGH4abBuQ= -github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d h1:105gxyaGwCFad8crR9dcMQWvV9Hvulu6hwUh4tWPJnM= -github.com/exponent-io/jsonpath v0.0.0-20151013193312-d6023ce2651d/go.mod h1:ZZMPRZwes7CROmyNKgQzC3XPs6L/G2EJLHddWejkmf4= +github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f h1:Wl78ApPPB2Wvf/TIe2xdyJxTlb6obmF18d8QdkxNDu4= +github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f/go.mod h1:OSYXu++VVOHnXeitef/D8n/6y4QV8uLHSFXX4NeXMGc= github.com/fatih/camelcase v1.0.0 h1:hxNvNX/xYBp0ovncs8WyWZrOrpBNub/JfaMvbURyft8= github.com/fatih/camelcase v1.0.0/go.mod h1:yN2Sb0lFhZJUdVvtELVWefmrXpuZESvPmqwoZc+/fpc= github.com/fatih/color v1.7.0/go.mod h1:Zm6kSWBoL9eyXnKyktHP6abPY2pDugNf5KwzbycvMj4= @@ -260,17 +260,12 @@ github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaS github.com/golang/protobuf v1.5.2/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= -github.com/golangplus/bytes v0.0.0-20160111154220-45c989fe5450/go.mod h1:Bk6SMAONeMXrxql8uvOKuAZSu8aM5RUGv+1C6IJaEho= -github.com/golangplus/bytes v1.0.0/go.mod h1:AdRaCFwmc/00ZzELMWb01soso6W1R/++O1XL80yAn+A= -github.com/golangplus/fmt v1.0.0/go.mod h1:zpM0OfbMCjPtd2qkTD/jX2MgiFCqklhSUFyDW44gVQE= -github.com/golangplus/testing v1.0.0 h1:+ZeeiKZENNOMkTTELoSySazi+XaEhVO0mb+eanrSEUQ= -github.com/golangplus/testing v1.0.0/go.mod h1:ZDreixUV3YzhoVraIDyOzHrr76p6NUh6k/pPg/Q3gYA= github.com/gomodule/redigo v1.8.2 h1:H5XSIre1MB5NbPYFp+i1NBbb5qN1W8Y8YAQoAYbkm8k= github.com/gomodule/redigo v1.8.2/go.mod h1:P9dn9mFrCBvWhGE1wpxx6fgq7BAeLBk+UUUzlpkBYO0= -github.com/google/btree v1.1.2 h1:xf4v41cLI2Z6FxbKm+8Bu+m8ifhj15JuZ9sa0jZCMUU= -github.com/google/btree v1.1.2/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= -github.com/google/cel-go v0.20.1 h1:nDx9r8S3L4pE61eDdt8igGj8rf5kjYR3ILxWIpWNi84= -github.com/google/cel-go v0.20.1/go.mod h1:kWcIzTsPX0zmQ+H3TirHstLLf9ep5QTsZBN9u4dOYLg= +github.com/google/btree v1.1.3 h1:CVpQJjYgC4VbzxeGVHfvZrv1ctoYCAI8vbl07Fcxlyg= +github.com/google/btree v1.1.3/go.mod h1:qOPhT0dTNdNzV6Z/lhRX0YXUafgPLFUh+gZMl761Gm4= +github.com/google/cel-go v0.22.0 h1:b3FJZxpiv1vTMo2/5RDUqAHPxkT8mmMfJIrq1llbf7g= +github.com/google/cel-go v0.22.0/go.mod h1:BuznPXXfQDpXKWQ9sPW3TzlAJN5zzFe+i9tIs0yC4s8= github.com/google/certificate-transparency-go v1.1.4 h1:hCyXHDbtqlr/lMXU0D4WgbalXL0Zk4dSWWMbPV8VrqY= github.com/google/certificate-transparency-go v1.1.4/go.mod h1:D6lvbfwckhNrbM9WVl1EVeMOyzC19mpIjMOI4nxBHtQ= github.com/google/gnostic-models v0.6.8 h1:yo/ABAfM5IMRsS1VnXjTBvUb61tFIHozhlYvRgGre9I= @@ -280,7 +275,6 @@ github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.3/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= @@ -290,8 +284,8 @@ github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/ github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0= github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= github.com/google/pprof v0.0.0-20210407192527-94a9f03dee38/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= -github.com/google/pprof v0.0.0-20240525223248-4bfdf5a9a2af h1:kmjWCqn2qkEml422C2Rrd27c3VGxi6a/6HNq8QmHRKM= -github.com/google/pprof v0.0.0-20240525223248-4bfdf5a9a2af/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db h1:097atOisP2aRj7vFgYQBbFN4U4JNXUNYpxael3UzMyo= +github.com/google/pprof v0.0.0-20241029153458-d1b30febd7db/go.mod h1:vavhavw2zAxS5dIdcRluK6cSGGPlZynqzFM8NdvU144= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 h1:El6M4kTTCOh6aBiKaUGG7oYTSPP8MxqL4YI3kZKwcP4= github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510/go.mod h1:pupxD2MaaD3pAXIBCelhxNneeOaAeabZDe5s4K6zSpQ= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= @@ -305,8 +299,8 @@ github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWm github.com/gorilla/websocket v1.5.0/go.mod h1:YR8l580nyteQvAITg2hZ9XVh4b55+EU/adAjf1fMHhE= github.com/gosuri/uitable v0.0.4 h1:IG2xLKRvErL3uhY6e1BylFzG+aJiwQviDDTfOKeKTpY= github.com/gosuri/uitable v0.0.4/go.mod h1:tKR86bXuXPZazfOTG1FIzvjIdXzd0mo4Vtn16vt0PJo= -github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7 h1:pdN6V1QBWetyv/0+wjACpqVH+eVULgEjkurDLq3goeM= -github.com/gregjones/httpcache v0.0.0-20180305231024-9cad4c3443a7/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= +github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 h1:+ngKgrYPPJrOjhax5N+uePQ0Fh1Z7PheYoUI/0nzkPA= +github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79/go.mod h1:FecbI9+v66THATjSRHfNgh1IVFe/9kFxbXtjV0ctIMA= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0 h1:+9834+KizmvFV7pXQGSXQTsaWhq2GjuNUt0aUU0YBYw= github.com/grpc-ecosystem/go-grpc-middleware v1.3.0/go.mod h1:z0ButlSOZa5vEBq9m2m2hlwIgKw+rp3sdCBRoJY+30Y= github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho= @@ -336,8 +330,8 @@ github.com/intel/goresctrl v0.3.0 h1:K2D3GOzihV7xSBedGxONSlaw/un1LZgWsc9IfqipN4c github.com/intel/goresctrl v0.3.0/go.mod h1:fdz3mD85cmP9sHD8JUlrNWAxvwM86CrbmVXltEKd7zk= github.com/jmoiron/sqlx v1.4.0 h1:1PLqN7S1UYp5t4SrVVnt4nUVNemrDAtxlulVe+Qgm3o= github.com/jmoiron/sqlx v1.4.0/go.mod h1:ZrZ7UsYB/weZdl2Bxg6jCRO9c3YHl8r3ahlKmRT4JLY= -github.com/jonboulle/clockwork v0.3.0 h1:9BSCMi8C+0qdApAp4auwX0RkLGUjs956h0EkuQymUhg= -github.com/jonboulle/clockwork v0.3.0/go.mod h1:Pkfl5aHPm1nk2H9h0bjmnJD/BcgbGXUBGnn1kMkgxc8= +github.com/jonboulle/clockwork v0.4.0 h1:p4Cf1aMWXnXAUh8lVfewRBx1zaTSYKrKMF2g3ST4RZ4= +github.com/jonboulle/clockwork v0.4.0/go.mod h1:xgRqUGwRcjKCO1vbZUEtSLrqKoPSsUpK7fnezOII0kc= github.com/josharian/intern v1.0.0 h1:vlS4z54oSdjm0bgjRigI+G1HpF+tI+9rE5LLzOg8HmY= github.com/josharian/intern v1.0.0/go.mod h1:5DoeVV0s6jJacbCEi61lwdGj/aVlrQvzHFFd8Hwg//Y= github.com/josharian/native v1.1.0 h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA= @@ -422,10 +416,10 @@ github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3N github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= github.com/moby/locker v1.0.1 h1:fOXqR41zeveg4fFODix+1Ch4mj/gT0NE1XJbp/epuBg= github.com/moby/locker v1.0.1/go.mod h1:S7SDdo5zpBK84bzzVlKr2V0hz+7x9hWbYC/kq7oQppc= -github.com/moby/spdystream v0.4.0 h1:Vy79D6mHeJJjiPdFEL2yku1kl0chZpJfZcPpb16BRl8= -github.com/moby/spdystream v0.4.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= -github.com/moby/sys/mountinfo v0.7.1 h1:/tTvQaSJRr2FshkhXiIpux6fQ2Zvc4j7tAhMTStAG2g= -github.com/moby/sys/mountinfo v0.7.1/go.mod h1:IJb6JQeOklcdMU9F5xQ8ZALD+CUr5VlGpwtX+VE0rpI= +github.com/moby/spdystream v0.5.0 h1:7r0J1Si3QO/kjRitvSLVVFUjxMEb/YLj6S9FF62JBCU= +github.com/moby/spdystream v0.5.0/go.mod h1:xBAYlnt/ay+11ShkdFKNAG7LsyK/tmNBVvVOwrfMgdI= +github.com/moby/sys/mountinfo v0.7.2 h1:1shs6aH5s4o5H2zQLn796ADW1wMrIwHsyJ2v9KouLrg= +github.com/moby/sys/mountinfo v0.7.2/go.mod h1:1YOa8w8Ih7uW0wALDUgT1dTTSBrZ+HiBLGws92L2RU4= github.com/moby/sys/sequential v0.5.0 h1:OPvI35Lzn9K04PBbCLW0g4LcFAJgHsvXsRyewg5lXtc= github.com/moby/sys/sequential v0.5.0/go.mod h1:tH2cOOs5V9MlPiXcQzRC+eEyab644PWKGRYaaV5ZZlo= github.com/moby/sys/signal v0.7.0 h1:25RW3d5TnQEoKvRbEKUGay6DCQ46IxAVTT9CUMgmsSI= @@ -464,24 +458,22 @@ github.com/onsi/ginkgo v1.16.4/go.mod h1:dX+/inL/fNMqNlz0e9LfyB9TswhZpCVdJM/Z6Vv github.com/onsi/ginkgo v1.16.5 h1:8xi0RTUf59SOSfEtZMvwTvXYMzG4gV23XVHOZiXNtnE= github.com/onsi/ginkgo v1.16.5/go.mod h1:+E8gABHa3K6zRBolWtd+ROzc/U5bkGt0FwiG042wbpU= github.com/onsi/ginkgo/v2 v2.1.3/go.mod h1:vw5CSIxN1JObi/U8gcbwft7ZxR2dgaR70JSE3/PpL4c= -github.com/onsi/ginkgo/v2 v2.19.0 h1:9Cnnf7UHo57Hy3k6/m5k3dRfGTMXGvxhHFvkDTCTpvA= -github.com/onsi/ginkgo/v2 v2.19.0/go.mod h1:rlwLi9PilAFJ8jCg9UE1QP6VBpd6/xj3SRC0d6TU0To= +github.com/onsi/ginkgo/v2 v2.21.0 h1:7rg/4f3rB88pb5obDgNZrNHrQ4e6WpjonchcpuBRnZM= +github.com/onsi/ginkgo/v2 v2.21.0/go.mod h1:7Du3c42kxCUegi0IImZ1wUQzMBVecgIHjR1C+NkhLQo= github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7JYyY= github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo= github.com/onsi/gomega v1.17.0/go.mod h1:HnhC7FXeEQY45zxNK3PPoIUhzk/80Xly9PcubAlGdZY= -github.com/onsi/gomega v1.33.1 h1:dsYjIxxSR755MDmKVsaFQTE22ChNBcuuTWgkUDSubOk= -github.com/onsi/gomega v1.33.1/go.mod h1:U4R44UsT+9eLIaYRB2a5qajjtQYn0hauxvRm16AVYg0= +github.com/onsi/gomega v1.35.1 h1:Cwbd75ZBPxFSuZ6T+rN/WCb/gOc6YgFBXLlZLhC7Ds4= +github.com/onsi/gomega v1.35.1/go.mod h1:PvZbdDc8J6XJEpDK4HCuRBm8a6Fzp9/DmhC9C7yFlog= github.com/op/go-logging v0.0.0-20160315200505-970db520ece7/go.mod h1:HzydrMdWErDVzsI23lYNej1Htcns9BCg93Dk0bBINWk= github.com/opencontainers/go-digest v1.0.0 h1:apOUWs51W5PlhuyGyz9FCeeBIOUDA/6nW8Oi/yOhh5U= github.com/opencontainers/go-digest v1.0.0/go.mod h1:0JzlMkj0TRzQZfJkVvzbP0HBR3IKzErnv2BNG4W4MAM= github.com/opencontainers/image-spec v1.1.0 h1:8SG7/vwALn54lVB/0yZ/MMwhFrPYtpEHQb2IpWsCzug= github.com/opencontainers/image-spec v1.1.0/go.mod h1:W4s4sFTMaBeK1BQLXbG4AdM2szdn85PY75RI83NrTrM= -github.com/opencontainers/runc v1.2.3 h1:fxE7amCzfZflJO2lHXf4y/y8M1BoAqp+FVmG19oYB80= -github.com/opencontainers/runc v1.2.3/go.mod h1:nSxcWUydXrsBZVYNSkTjoQ/N6rcyTtn+1SD5D4+kRIM= github.com/opencontainers/runtime-spec v1.2.0 h1:z97+pHb3uELt/yiAWD691HNHQIF07bE7dzrbT927iTk= github.com/opencontainers/runtime-spec v1.2.0/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0= -github.com/opencontainers/selinux v1.11.0 h1:+5Zbo97w3Lbmb3PeqQtpmTkMwsW5nRI3YaLpt7tQ7oU= -github.com/opencontainers/selinux v1.11.0/go.mod h1:E5dMC3VPuVvVHDYmi78qvhJp8+M586T4DlDRYpFkyec= +github.com/opencontainers/selinux v1.11.1 h1:nHFvthhM0qY8/m+vfhJylliSshm8G1jJ2jDMcgULaH8= +github.com/opencontainers/selinux v1.11.1/go.mod h1:E5dMC3VPuVvVHDYmi78qvhJp8+M586T4DlDRYpFkyec= github.com/otiai10/copy v1.14.0 h1:dCI/t1iTdYGtkvCuBG2BgR6KZa83PTclw4U5n2wAllU= github.com/otiai10/copy v1.14.0/go.mod h1:ECfuL02W+/FkTWZWgQqXPWZgW9oeKCSQ5qVfSc4qc4w= github.com/otiai10/mint v1.5.1 h1:XaPLeE+9vGbuyEHem1JNk3bYc7KKqyI/na0/mLd/Kks= @@ -556,8 +548,8 @@ github.com/spf13/cobra v1.8.1 h1:e5/vxKd/rZsfSJMUX1agtjeTDf+qv1/JdBF8gg5k9ZM= github.com/spf13/cobra v1.8.1/go.mod h1:wHxEcudfqmLYa8iTfL+OuZPbBZkmvliBWKIezN3kD9Y= github.com/spf13/pflag v1.0.5 h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA= github.com/spf13/pflag v1.0.5/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= -github.com/stoewer/go-strcase v1.2.0 h1:Z2iHWqGXH00XYgqDmNgQbIBxf3wrNq0F3feEy0ainaU= -github.com/stoewer/go-strcase v1.2.0/go.mod h1:IBiWB2sKIp3wVVQ3Y035++gc+knqhUQag1KpM8ahLw8= +github.com/stoewer/go-strcase v1.3.0 h1:g0eASXYtp+yvN9fK8sH94oCIk0fau9uV1/ZdJ0AVEzs= +github.com/stoewer/go-strcase v1.3.0/go.mod h1:fAH5hQ5pehh+j3nZfvwdk2RgEgQjAoM8wodgtPmh1xo= github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw= @@ -568,6 +560,7 @@ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXf github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= github.com/stretchr/testify v1.5.1/go.mod h1:5W2xD1RspED5o8YsWQXVCued0rvSQ+mT+I5cxcmMvtA= +github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= @@ -580,8 +573,8 @@ github.com/tmc/grpc-websocket-proxy v0.0.0-20220101234140-673ab2c3ae75 h1:6fotK7 github.com/tmc/grpc-websocket-proxy v0.0.0-20220101234140-673ab2c3ae75/go.mod h1:KO6IkyS8Y3j8OdNO85qEYBsRPuteD+YciPomcXdrMnk= github.com/urfave/cli v1.22.16 h1:MH0k6uJxdwdeWQTwhSO42Pwr4YLrNLwBtg1MRgTqPdQ= github.com/urfave/cli v1.22.16/go.mod h1:EeJR6BKodywf4zciqrdw6hpCPk68JO9z5LazXZMn5Po= -github.com/vishvananda/netlink v1.3.0 h1:X7l42GfcV4S6E4vHTsw48qbrV+9PVojNfIhZcwQdrZk= -github.com/vishvananda/netlink v1.3.0/go.mod h1:i6NetklAujEcC6fK0JPjT8qSwWyO0HLn4UKG+hGqeJs= +github.com/vishvananda/netlink v1.3.1-0.20240905180732-b1ce50cfa9be h1:xdCMvyhnKzaepIUgVpUmTJo/+H1AQ7HuFYn1hv7/Neo= +github.com/vishvananda/netlink v1.3.1-0.20240905180732-b1ce50cfa9be/go.mod h1:i6NetklAujEcC6fK0JPjT8qSwWyO0HLn4UKG+hGqeJs= github.com/vishvananda/netns v0.0.4 h1:Oeaw1EM2JMxD51g9uhtC0D7erkIjgmj8+JZc26m1YX8= github.com/vishvananda/netns v0.0.4/go.mod h1:SpkAiCQRtJ6TvvxPnOSyH3BMl6unz3xZlaprSwhNNJM= github.com/vmware-tanzu/sonobuoy v0.57.2 h1:lqVmgXI3YhhAMy77F1RvTvlKb/dL8/xQYIL7kC3jpJc= @@ -598,8 +591,8 @@ github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415 h1:EzJWgHo github.com/xeipuuv/gojsonreference v0.0.0-20180127040603-bd5ef7bd5415/go.mod h1:GwrjFmJcFw6At/Gs6z4yjiIwzuJ1/+UwLxMQDVQXShQ= github.com/xeipuuv/gojsonschema v1.2.0 h1:LhYJRs+L4fBtjZUfuSZIKGeVu0QRy8e5Xi7D17UxZ74= github.com/xeipuuv/gojsonschema v1.2.0/go.mod h1:anYRn/JVcOK2ZgGU+IjEV4nwlhoK5sQluxsYJ78Id3Y= -github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 h1:eY9dn8+vbi4tKz5Qo6v2eYzo7kUS51QINcR5jNpbZS8= -github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= +github.com/xiang90/probing v0.0.0-20221125231312-a49e3df8f510 h1:S2dVYn90KE98chqDkyE9Z4N61UnQd+KOfgp5Iu53llk= +github.com/xiang90/probing v0.0.0-20221125231312-a49e3df8f510/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= github.com/xlab/treeprint v1.2.0 h1:HzHnuAF1plUN2zGlAFHbSQP2qJ0ZAD3XF5XD7OesXRQ= github.com/xlab/treeprint v1.2.0/go.mod h1:gj5Gd3gPdKtR1ikdDK6fnFLdmIS0X30kTTuNd/WEJu0= github.com/xtgo/uuid v0.0.0-20140804021211-a0b114877d4c h1:3lbZUMbMiGUW/LMkfsEABsc5zNT9+b1CvsJx47JzJ8g= @@ -661,8 +654,6 @@ go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HY go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A= go.opentelemetry.io/proto/otlp v1.3.1 h1:TrMUixzpM0yuc/znrFTP9MMRh8trP93mkCiDVeXrui0= go.opentelemetry.io/proto/otlp v1.3.1/go.mod h1:0X1WI4de4ZsLrrJNLAQbFeLCm3T7yBkR0XqQ7niQU+8= -go.starlark.net v0.0.0-20230525235612-a134d8f9ddca h1:VdD38733bfYv5tUZwEIskMM93VanwNIi5bIKnDrJdEY= -go.starlark.net v0.0.0-20230525235612-a134d8f9ddca/go.mod h1:jxU+3+j+71eXOW14274+SmmuW82qJzl6iZSeqEtTGds= go.uber.org/goleak v1.3.0 h1:2K3zAYmnTNqV73imy9J1T3WC+gmCePx2hEGkimedGto= go.uber.org/goleak v1.3.0/go.mod h1:CoHD4mav9JJNrW/WLlf7HGZPjdw8EucARQHekz1X6bE= go.uber.org/multierr v1.11.0 h1:blXXJkSxSSfBVBlC76pxqeO+LN3aDfLQo+309xJstO0= @@ -734,10 +725,8 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20201126233918-771906719818/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= @@ -747,7 +736,6 @@ golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU= golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.0.0-20220526004731-065cf7ba2467/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg= golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -756,8 +744,8 @@ golang.org/x/text v0.3.4/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/text v0.21.0 h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo= golang.org/x/text v0.21.0/go.mod h1:4IBbMaMmOPCJ8SecivzSH54+73PCFmPWxNTLm+vZkEQ= -golang.org/x/time v0.5.0 h1:o7cqy6amK/52YcAKIPlM3a+Fpj35zvRj2TP+e1xFSfk= -golang.org/x/time v0.5.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= +golang.org/x/time v0.7.0 h1:ntUhktv3OPE6TgYxXWv9vKvUSJyIFJlyohwbkEwPrKQ= +golang.org/x/time v0.7.0/go.mod h1:3BpzKBy/shNhVucY/MWOyx10tF3SFh9QdLuxbVysPQM= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190114222345-bf090417da8b/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190226205152-f727befe758c/go.mod h1:9Yl7xja0Znq3iFh3HoIrodX9oNMXvdceNzlUR8zjMvY= @@ -824,7 +812,6 @@ gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWD gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.4/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.3.0/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= @@ -837,50 +824,50 @@ helm.sh/helm/v3 v3.16.4 h1:rBn/h9MACw+QlhxQTjpl8Ifx+VTWaYsw3rguGBYBzr0= helm.sh/helm/v3 v3.16.4/go.mod h1:k8QPotUt57wWbi90w3LNmg3/MWcLPigVv+0/X4B8BzA= honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4= -k8s.io/api v0.31.5 h1:7jP74egbPUOCLJV5KheUnwo9gz3zzUsMIj2EPkuYK1E= -k8s.io/api v0.31.5/go.mod h1:RMyMdZG1kJjou2ng5buEti0OHlo0uFXgSzTZ/k5LeVk= -k8s.io/apiextensions-apiserver v0.31.5 h1:50+b/hHx4nyvQ+gaFH7p5myPEZyekGhGGAQb4vnBUlQ= -k8s.io/apiextensions-apiserver v0.31.5/go.mod h1:6vZ7IIlk3l7GSFcbaNz5CEYpUBLsQ0ee+LgLGOsExWQ= -k8s.io/apimachinery v0.31.5 h1:NxhAVGcfrSdTMx3M2v1OnvcMS7h1ZnWyt2x2z8CJJBU= -k8s.io/apimachinery v0.31.5/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= -k8s.io/apiserver v0.31.5 h1:n0daI1zIb+G2Jkzqjm2NQJSJfTKccgFeHHQM4LYsz7E= -k8s.io/apiserver v0.31.5/go.mod h1:SboTZ2NHCsXjAHqTrE/kDTnrzquVY5mDKNnoCdRFLJw= -k8s.io/cli-runtime v0.31.5 h1:d8Q1CW6u8DWlU+wZgs7gQXeEl5J9rAHU4uDUz2uFtFY= -k8s.io/cli-runtime v0.31.5/go.mod h1:8zdTB5+NadarkrlOLzboMNxBjrTs6O2alRIokk9mzEY= -k8s.io/client-go v0.31.5 h1:rmDswcUaIFAJ5vJaB82pjyqc52DgHCPv0G6af3OupO0= -k8s.io/client-go v0.31.5/go.mod h1:js93IlRSzRHql9o9zP54N56rMR249uH4+srnSOcFLsU= -k8s.io/cloud-provider v0.31.5 h1:2uzN7bO1KjKLFr3BvjVZfgVIR0Cxc4m10RKP65FwGUs= -k8s.io/cloud-provider v0.31.5/go.mod h1:TNZnihtjhQzENg9HtIzEpKHAQs0U73XHRW+BAoxzIS0= -k8s.io/cluster-bootstrap v0.31.5 h1:Y0ifYM7FmtyjYXcc6LOffu2SUz/kCi7+LVyr7gze+w4= -k8s.io/cluster-bootstrap v0.31.5/go.mod h1:+1q2sfS06EM4Nsovdift0/6nGxZ3xFoFC4yvWf7+y7E= -k8s.io/component-base v0.31.5 h1:kpFiy1hI7F4Owp+o59H2CVLzmN94qwcPz+2L6wRhkqM= -k8s.io/component-base v0.31.5/go.mod h1:OiiusrmcLz42i9VvcAd94yQIN7UzQHJxN/hXxwYzj6E= -k8s.io/component-helpers v0.31.5 h1:4CGg9/+RLbeM2r5nPyoyocsAteXRGHs4yv23yBdw7KE= -k8s.io/component-helpers v0.31.5/go.mod h1:E2i3XIrLFiGUdTOTrJvKPlDs9eVja4vm+N4nDk6XTRw= -k8s.io/controller-manager v0.31.5 h1:FBlp/1k4puNIjIFsz5gexN4X+FbsMW/dHN8Cxjzowjs= -k8s.io/controller-manager v0.31.5/go.mod h1:6O7StIoLuQUbOC0gwaKfiu96FquTLhxsbEP7jlkOWy0= -k8s.io/cri-api v0.31.5 h1:VWedOGJyzaxOsMtwsCkSGP0DcJOrGGTqcAEdCoKmlxw= -k8s.io/cri-api v0.31.5/go.mod h1:Po3TMAYH/+KrZabi7QiwQI4a692oZcUOUThd/rqwxrI= +k8s.io/api v0.32.1 h1:f562zw9cy+GvXzXf0CKlVQ7yHJVYzLfL6JAS4kOAaOc= +k8s.io/api v0.32.1/go.mod h1:/Yi/BqkuueW1BgpoePYBRdDYfjPF5sgTr5+YqDZra5k= +k8s.io/apiextensions-apiserver v0.32.1 h1:hjkALhRUeCariC8DiVmb5jj0VjIc1N0DREP32+6UXZw= +k8s.io/apiextensions-apiserver v0.32.1/go.mod h1:sxWIGuGiYov7Io1fAS2X06NjMIk5CbRHc2StSmbaQto= +k8s.io/apimachinery v0.32.1 h1:683ENpaCBjma4CYqsmZyhEzrGz6cjn1MY/X2jB2hkZs= +k8s.io/apimachinery v0.32.1/go.mod h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE= +k8s.io/apiserver v0.32.1 h1:oo0OozRos66WFq87Zc5tclUX2r0mymoVHRq8JmR7Aak= +k8s.io/apiserver v0.32.1/go.mod h1:UcB9tWjBY7aryeI5zAgzVJB/6k7E97bkr1RgqDz0jPw= +k8s.io/cli-runtime v0.32.1 h1:19nwZPlYGJPUDbhAxDIS2/oydCikvKMHsxroKNGA2mM= +k8s.io/cli-runtime v0.32.1/go.mod h1:NJPbeadVFnV2E7B7vF+FvU09mpwYlZCu8PqjzfuOnkY= +k8s.io/client-go v0.32.1 h1:otM0AxdhdBIaQh7l1Q0jQpmo7WOFIk5FFa4bg6YMdUU= +k8s.io/client-go v0.32.1/go.mod h1:aTTKZY7MdxUaJ/KiUs8D+GssR9zJZi77ZqtzcGXIiDg= +k8s.io/cloud-provider v0.32.1 h1:74rRhnfca3o4CsjjnIp/C3ARVuSmyNsxgWPtH0yc9Z0= +k8s.io/cloud-provider v0.32.1/go.mod h1:GECSanFT+EeZ/ToX3xlasjETzMUI+VFu92zHUDUsGHw= +k8s.io/cluster-bootstrap v0.32.1 h1:sHOsbrfWn2EDZus/vwPX2IE1wCw2CuByrIFcaY3zDMo= +k8s.io/cluster-bootstrap v0.32.1/go.mod h1:AAoSp7mIY02P2QBRYoFglKobjD++rPzAdlQeUYObVkA= +k8s.io/component-base v0.32.1 h1:/5IfJ0dHIKBWysGV0yKTFfacZ5yNV1sulPh3ilJjRZk= +k8s.io/component-base v0.32.1/go.mod h1:j1iMMHi/sqAHeG5z+O9BFNCF698a1u0186zkjMZQ28w= +k8s.io/component-helpers v0.32.1 h1:TwdsSM1vW9GjnfX18lkrZbwE5G9psCIS2/rhenTDXd8= +k8s.io/component-helpers v0.32.1/go.mod h1:1JT1Ei3FD29yFQ18F3laj1WyvxYdHIhyxx6adKMFQXI= +k8s.io/controller-manager v0.32.1 h1:z3oQp1O5l0cSzM/MKf8V4olhJ9TmnELoJRPcV/v1s+Y= +k8s.io/controller-manager v0.32.1/go.mod h1:dVA1UZPbqHH4hEhrrnLvQ4d5qVQCklNB8GEzYV59v/4= +k8s.io/cri-api v0.32.1 h1:XWDw70IJV0GmExhQBYz7H+6iFEaKXcUOpnj5MHQ/JXY= +k8s.io/cri-api v0.32.1/go.mod h1:DCzMuTh2padoinefWME0G678Mc3QFbLMF2vEweGzBAI= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kms v0.31.5 h1:KqAHTnJDSoTt8ZSLsalz6gmwlX0lzVWAVSYcqEj6Lqw= -k8s.io/kms v0.31.5/go.mod h1:OZKwl1fan3n3N5FFxnW5C4V3ygrah/3YXeJWS3O6+94= -k8s.io/kube-aggregator v0.31.5 h1:ibCqykJwv7Ht4tgwd1793N6h444gf5m7ZH2dpJ0r4yI= -k8s.io/kube-aggregator v0.31.5/go.mod h1:bWajrGqcljoq5w1zWwj1qU34VoKfZeMZSCbK/vp127s= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= -k8s.io/kubectl v0.31.5 h1:WRA5WA3rwxflKeO0PsjMpP3ZicNsv7fD8YEmA9+Rbck= -k8s.io/kubectl v0.31.5/go.mod h1:WeEyd2KzUme3Laf7+5dM3aiDMRffeX8U90So1I6HkS0= -k8s.io/kubelet v0.31.5 h1:AnGDd4NV1PybzffhosECiJe5dWxZJ/f6S4gtuZuHzIA= -k8s.io/kubelet v0.31.5/go.mod h1:tILiNKFnjjWUg/SGIclQ6GA8ZWN653wATqIrzParnjs= -k8s.io/kubernetes v1.31.5 h1:hIW8YLP1MtsAIyot6U0uPqTois0ESjUrvPK6hElUUEk= -k8s.io/kubernetes v1.31.5/go.mod h1:9xmT2buyTYj8TRKwRae7FcuY8k5+xlxv7VivvO0KKfs= -k8s.io/metrics v0.31.5 h1:0QQQ20yA3IdXyXC0CXLveRwOXF0ekCuPf6iNKVqXIbw= -k8s.io/metrics v0.31.5/go.mod h1:wAMENPwG+OFEYRy6CHgjOXqWOfv4yzwQzGr7jPWU/WE= -k8s.io/mount-utils v0.31.5 h1:WrY+6v6PlAkOeBVXEBrLhAvx9YnlAk8JorMCSowEMtI= -k8s.io/mount-utils v0.31.5/go.mod h1:HV/VYBUGqYUj4vt82YltzpWvgv8FPg0G9ItyInT3NPU= -k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= -k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/kms v0.32.1 h1:TW6cswRI/fawoQRFGWLmEceO37rZXupdoRdmO019jCc= +k8s.io/kms v0.32.1/go.mod h1:Bk2evz/Yvk0oVrvm4MvZbgq8BD34Ksxs2SRHn4/UiOM= +k8s.io/kube-aggregator v0.32.1 h1:cztPyIHbo6tgrhYHDqmdmvxUufJKuxgAC/vog7yeWek= +k8s.io/kube-aggregator v0.32.1/go.mod h1:sXjL5T8FO/rlBzTbBhahw9V5Nnr1UtzZHKTj9WxQCOU= +k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f h1:GA7//TjRY9yWGy1poLzYYJJ4JRdzg3+O6e8I+e+8T5Y= +k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f/go.mod h1:R/HEjbvWI0qdfb8viZUeVZm0X6IZnxAydC7YU42CMw4= +k8s.io/kubectl v0.32.1 h1:/btLtXLQUU1rWx8AEvX9jrb9LaI6yeezt3sFALhB8M8= +k8s.io/kubectl v0.32.1/go.mod h1:sezNuyWi1STk4ZNPVRIFfgjqMI6XMf+oCVLjZen/pFQ= +k8s.io/kubelet v0.32.1 h1:bB91GvMsZb+LfzBxnjPEr1Fal/sdxZtYphlfwAaRJGw= +k8s.io/kubelet v0.32.1/go.mod h1:4sAEZ6PlewD0GroV3zscY7llym6kmNNTVmUI/Qshm6w= +k8s.io/kubernetes v1.32.1 h1:46YPpIBCT9dkmeglstZ2Gg4LGaAdro1/3IQ+1AfbF1s= +k8s.io/kubernetes v1.32.1/go.mod h1:tiIKO63GcdPRBHW2WiUFm3C0eoLczl3f7qi56Dm1W8I= +k8s.io/metrics v0.32.1 h1:Ou4nrEtZS2vFf7OJCf9z3+2kr0A00kQzfoSwxg0gXps= +k8s.io/metrics v0.32.1/go.mod h1:cLnai9XKYby1tNMX+xe8p9VLzTqrxYPcmqfCBoWObcM= +k8s.io/mount-utils v0.32.1 h1:RJOD6xXzEJT/OOJoG1KstfVa8ZXJJPlHb+t2MoulPHM= +k8s.io/mount-utils v0.32.1/go.mod h1:Kun5c2svjAPx0nnvJKYQWhfeNW+O0EpzHgRhDcYoSY0= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= oras.land/oras-go v1.2.5 h1:XpYuAwAb0DfQsunIyMfeET92emK8km3W4yEzZvUbsTo= oras.land/oras-go v1.2.5/go.mod h1:PuAwRShRZCsZb7g8Ar3jKKQR/2A/qN+pkYxIOd/FAoo= oras.land/oras-go/v2 v2.5.0 h1:o8Me9kLY74Vp5uw07QXPiitjsw7qNXi8Twd+19Zf02c= @@ -889,15 +876,15 @@ sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.0 h1:CPT0ExVicCzcp sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.0/go.mod h1:Ve9uj1L+deCXFrPOk1LpFXqTg7LCFzFso6PA48q/XZw= sigs.k8s.io/controller-runtime v0.19.4 h1:SUmheabttt0nx8uJtoII4oIP27BVVvAKFvdvGFwV/Qo= sigs.k8s.io/controller-runtime v0.19.4/go.mod h1:iRmWllt8IlaLjvTTDLhRBXIEtkCK6hwVBJJsYS9Ajf4= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd h1:EDPBXCAspyGV4jQlpZSudPeMmr1bNJefnuqLsRAsHZo= -sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd/go.mod h1:B8JuhiUyNFVKdsE8h686QcCxMaH6HrOAZj4vswFpcB0= -sigs.k8s.io/kustomize/api v0.17.2 h1:E7/Fjk7V5fboiuijoZHgs4aHuexi5Y2loXlVOAVAG5g= -sigs.k8s.io/kustomize/api v0.17.2/go.mod h1:UWTz9Ct+MvoeQsHcJ5e+vziRRkwimm3HytpZgIYqye0= -sigs.k8s.io/kustomize/kustomize/v5 v5.4.2 h1:9Zl5Gqg3XMdBEvkR54pVLCBj7FVO7W+VPNDDEzD6AyE= -sigs.k8s.io/kustomize/kustomize/v5 v5.4.2/go.mod h1:5ypfJVYlPb2MKKeoGknVLxvHemDlQT+szI4+KOhnD6k= -sigs.k8s.io/kustomize/kyaml v0.17.1 h1:TnxYQxFXzbmNG6gOINgGWQt09GghzgTP6mIurOgrLCQ= -sigs.k8s.io/kustomize/kyaml v0.17.1/go.mod h1:9V0mCjIEYjlXuCdYsSXvyoy2BTsLESH7TlGV81S282U= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= +sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3 h1:/Rv+M11QRah1itp8VhT6HoVx1Ray9eB4DBr+K+/sCJ8= +sigs.k8s.io/json v0.0.0-20241010143419-9aa6b5e7a4b3/go.mod h1:18nIHnGi6636UCz6m8i4DhaJ65T6EruyzmoQqI2BVDo= +sigs.k8s.io/kustomize/api v0.18.0 h1:hTzp67k+3NEVInwz5BHyzc9rGxIauoXferXyjv5lWPo= +sigs.k8s.io/kustomize/api v0.18.0/go.mod h1:f8isXnX+8b+SGLHQ6yO4JG1rdkZlvhaCf/uZbLVMb0U= +sigs.k8s.io/kustomize/kustomize/v5 v5.5.0 h1:o1mtt6vpxsxDYaZKrw3BnEtc+pAjLz7UffnIvHNbvW0= +sigs.k8s.io/kustomize/kustomize/v5 v5.5.0/go.mod h1:AeFCmgCrXzmvjWWaeZCyBp6XzG1Y0w1svYus8GhJEOE= +sigs.k8s.io/kustomize/kyaml v0.18.1 h1:WvBo56Wzw3fjS+7vBjN6TeivvpbW9GmRaWZ9CIVmt4E= +sigs.k8s.io/kustomize/kyaml v0.18.1/go.mod h1:C3L2BFVU1jgcddNBE1TxuVLgS46TjObMwW5FT9FcjYo= +sigs.k8s.io/structured-merge-diff/v4 v4.4.2 h1:MdmvkGuXi/8io6ixD5wud3vOLwc1rj0aNqRlpuvjmwA= +sigs.k8s.io/structured-merge-diff/v4 v4.4.2/go.mod h1:N8f93tFZh9U6vpxwRArLiikrE5/2tiu1w1AGfACIGE4= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/hack/tool/go.mod b/hack/tool/go.mod index 90539938f4d1..3e9a15ee7269 100644 --- a/hack/tool/go.mod +++ b/hack/tool/go.mod @@ -42,7 +42,6 @@ require ( github.com/hashicorp/go-uuid v1.0.3 // indirect github.com/hashicorp/go-version v1.7.0 // indirect github.com/hashicorp/terraform-json v0.22.1 // indirect - github.com/imdario/mergo v0.3.16 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/jcmturner/aescts/v2 v2.0.0 // indirect github.com/jcmturner/dnsutils/v2 v2.0.0 // indirect @@ -68,6 +67,7 @@ require ( github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect github.com/modern-go/reflect2 v1.0.2 // indirect + github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect github.com/russross/blackfriday/v2 v2.1.0 // indirect github.com/segmentio/analytics-go v3.1.0+incompatible // indirect github.com/segmentio/backo-go v1.1.0 // indirect @@ -89,11 +89,11 @@ require ( golang.org/x/time v0.7.0 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect - k8s.io/apimachinery v0.31.5 // indirect - k8s.io/client-go v0.31.5 // indirect + k8s.io/apimachinery v0.32.1 // indirect + k8s.io/client-go v0.32.1 // indirect k8s.io/klog/v2 v2.130.1 // indirect - k8s.io/utils v0.0.0-20240921022957-49e7df575cb6 // indirect + k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 // indirect sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect - sigs.k8s.io/structured-merge-diff/v4 v4.4.1 // indirect + sigs.k8s.io/structured-merge-diff/v4 v4.4.2 // indirect sigs.k8s.io/yaml v1.4.0 // indirect ) diff --git a/hack/tool/go.sum b/hack/tool/go.sum index 564af972327b..99ab131f6f20 100644 --- a/hack/tool/go.sum +++ b/hack/tool/go.sum @@ -68,12 +68,12 @@ github.com/go-git/go-git/v5 v5.12.0 h1:7Md+ndsjrzZxbddRDZjF14qK+NN56sy6wkqaVrjZt github.com/go-git/go-git/v5 v5.12.0/go.mod h1:FTM9VKtnI2m65hNI/TenDDDnUf2Q9FHnXYjuz9i5OEY= github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= -github.com/go-openapi/jsonpointer v0.19.6 h1:eCs3fxoIi3Wh6vtgmLTOjdhSpiqphQ+DaPn38N2ZdrE= -github.com/go-openapi/jsonpointer v0.19.6/go.mod h1:osyAmYz/mB/C3I+WsTTSgw1ONzaLJoLCyoi6/zppojs= +github.com/go-openapi/jsonpointer v0.21.0 h1:YgdVicSA9vH5RiHs9TZW5oyafXZFc6+2Vc1rr/O9oNQ= +github.com/go-openapi/jsonpointer v0.21.0/go.mod h1:IUyH9l/+uyhIYQ/PXVA41Rexl+kOkAPDdXEYns6fzUY= github.com/go-openapi/jsonreference v0.20.2 h1:3sVjiK66+uXK/6oQ8xgcRKcFgQ5KXa2KvnJRumpMGbE= github.com/go-openapi/jsonreference v0.20.2/go.mod h1:Bl1zwGIM8/wsvqjsOQLJ/SH+En5Ap4rVB5KVcIDZG2k= -github.com/go-openapi/swag v0.22.4 h1:QLMzNJnMGPRNDCbySlcj1x01tzU8/9LTTL9hZZZogBU= -github.com/go-openapi/swag v0.22.4/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= +github.com/go-openapi/swag v0.23.0 h1:vsEVJDUo2hPJ2tu0/Xc+4noaxyEffXNIs3cOULZ+GrE= +github.com/go-openapi/swag v0.23.0/go.mod h1:esZ8ITTYEsH1V2trKHjAN8Ai7xHb8RV+YSZ577vPjgQ= github.com/go-playground/assert/v2 v2.2.0 h1:JvknZsQTYeFEAhQwI4qEt9cyV5ONwRHC+lYKSsYSR8s= github.com/go-playground/assert/v2 v2.2.0/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= github.com/go-playground/locales v0.14.1 h1:EWaQ/wswjilfKLTECiXz7Rh+3BjFhfDFKv/oXslEjJA= @@ -119,8 +119,6 @@ github.com/hashicorp/terraform-json v0.22.1 h1:xft84GZR0QzjPVWs4lRUwvTcPnegqlyS7 github.com/hashicorp/terraform-json v0.22.1/go.mod h1:JbWSQCLFSXFFhg42T7l9iJwdGXBYV8fmmD6o/ML4p3A= github.com/hinshun/vt10x v0.0.0-20220119200601-820417d04eec h1:qv2VnGeEQHchGaZ/u7lxST/RaJw+cv273q79D81Xbog= github.com/hinshun/vt10x v0.0.0-20220119200601-820417d04eec/go.mod h1:Q48J4R4DvxnHolD5P8pOtXigYlRuPLGl6moFx3ulM68= -github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= -github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 h1:BQSFePA1RWJOlocH6Fxy8MmwDt+yVQYULKfN0RoTN8A= @@ -157,9 +155,8 @@ github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4 github.com/kevinburke/ssh_config v1.2.0/go.mod h1:CT57kijsi8u/K/BOFA39wgDQJ9CxiF4nAY/ojJ6r6mM= github.com/kisielk/errcheck v1.5.0/go.mod h1:pFxgyoBC7bSaBwPgfKdkLd5X25qrDl4LWUI2bnpBCr8= github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= +github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= -github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= @@ -197,11 +194,11 @@ github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 h1:C3w9PqII01/Oq github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822/go.mod h1:+n7T8mK8HuQTcFwEeznm/DIxMOiR9yIdICNftLE1DvQ= github.com/pjbgf/sha1cd v0.3.0 h1:4D5XXmUUBUl/xQ6IjCkEAbqXskkq/4O7LmGn0AqMDs4= github.com/pjbgf/sha1cd v0.3.0/go.mod h1:nZ1rrWOcGJ5uZgEEVL1VUM9iRQiZvWdbZjkKyFzPPsI= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/rogpeppe/go-internal v1.12.0 h1:exVL4IDcn6na9z1rAb56Vxr+CgyK3nn3O+epU5NdKM8= -github.com/rogpeppe/go-internal v1.12.0/go.mod h1:E+RYuTGaKKdloAfM02xzb0FW3Paa99yedzYV+kq4uf4= github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf35Ld67mk= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/segmentio/analytics-go v3.1.0+incompatible h1:IyiOfUgQFVHvsykKKbdI7ZsH374uv3/DfZUo9+G0Z80= @@ -316,37 +313,38 @@ golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8T golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= -google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= +google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA= +google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 h1:YR8cESwS4TdDjEe65xsg0ogRM/Nc3DYOhEAlW+xobZo= gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= +gopkg.in/evanphx/json-patch.v4 v4.12.0 h1:n6jtcsulIzXPJaxegRbvFNNrZDjbij7ny3gmSPG+6V4= +gopkg.in/evanphx/json-patch.v4 v4.12.0/go.mod h1:p8EYWUEYMpynmqDbY58zCKCFZw8pRWMG4EsWvDvM72M= gopkg.in/inf.v0 v0.9.1 h1:73M5CoZyi3ZLMOyDlQh031Cx6N9NDJ2Vvfl76EDAgDc= gopkg.in/inf.v0 v0.9.1/go.mod h1:cWUDdTG/fYaXco+Dcufb5Vnc6Gp2YChqWtbxRZE0mXw= gopkg.in/warnings.v0 v0.1.2 h1:wFXVbFY8DY5/xOe1ECiWdKCzZlxgshcYVNkBHstARME= gopkg.in/warnings.v0 v0.1.2/go.mod h1:jksf8JmL6Qr/oQM2OXTHunEvvTAsrWBLb6OOjuVWRNI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY= gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ= gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA= gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -k8s.io/api v0.31.3 h1:umzm5o8lFbdN/hIXbrK9oRpOproJO62CV1zqxXrLgk8= -k8s.io/api v0.31.3/go.mod h1:UJrkIp9pnMOI9K2nlL6vwpxRzzEX5sWgn8kGQe92kCE= -k8s.io/apimachinery v0.31.3 h1:6l0WhcYgasZ/wk9ktLq5vLaoXJJr5ts6lkaQzgeYPq4= -k8s.io/apimachinery v0.31.3/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= -k8s.io/client-go v0.31.3 h1:CAlZuM+PH2cm+86LOBemaJI/lQ5linJ6UFxKX/SoG+4= -k8s.io/client-go v0.31.3/go.mod h1:2CgjPUTpv3fE5dNygAr2NcM8nhHzXvxB8KL5gYc3kJs= +k8s.io/api v0.32.1 h1:f562zw9cy+GvXzXf0CKlVQ7yHJVYzLfL6JAS4kOAaOc= +k8s.io/api v0.32.1/go.mod h1:/Yi/BqkuueW1BgpoePYBRdDYfjPF5sgTr5+YqDZra5k= +k8s.io/apimachinery v0.32.1 h1:683ENpaCBjma4CYqsmZyhEzrGz6cjn1MY/X2jB2hkZs= +k8s.io/apimachinery v0.32.1/go.mod h1:GpHVgxoKlTxClKcteaeuF1Ul/lDVb74KpZcxcmLDElE= +k8s.io/client-go v0.32.1 h1:otM0AxdhdBIaQh7l1Q0jQpmo7WOFIk5FFa4bg6YMdUU= +k8s.io/client-go v0.32.1/go.mod h1:aTTKZY7MdxUaJ/KiUs8D+GssR9zJZi77ZqtzcGXIiDg= k8s.io/klog/v2 v2.130.1 h1:n9Xl7H1Xvksem4KFG4PYbdQCQxqc/tTUyrgXaOhHSzk= k8s.io/klog/v2 v2.130.1/go.mod h1:3Jpz1GvMt720eyJH1ckRHK1EDfpxISzJ7I9OYgaDtPE= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 h1:BZqlfIlq5YbRMFko6/PM7FjZpUb45WallggurYhKGag= -k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340/go.mod h1:yD4MZYeKMBwQKVht279WycxKyM84kkAx2DPrTXaeb98= -k8s.io/utils v0.0.0-20240921022957-49e7df575cb6 h1:MDF6h2H/h4tbzmtIKTuctcwZmY0tY9mD9fNT47QO6HI= -k8s.io/utils v0.0.0-20240921022957-49e7df575cb6/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= +k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f h1:GA7//TjRY9yWGy1poLzYYJJ4JRdzg3+O6e8I+e+8T5Y= +k8s.io/kube-openapi v0.0.0-20241105132330-32ad38e42d3f/go.mod h1:R/HEjbvWI0qdfb8viZUeVZm0X6IZnxAydC7YU42CMw4= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738 h1:M3sRQVHv7vB20Xc2ybTt7ODCeFj6JSWYFzOFnYeS6Ro= +k8s.io/utils v0.0.0-20241104100929-3ea5e8cea738/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 h1:gBQPwqORJ8d8/YNZWEjoZs7npUVDpVXUUOFfW6CgAqE= sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8/go.mod h1:mdzfpAEoE6DHQEN0uh9ZbOCuHbLK5wOm7dK4ctXE9Tg= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1 h1:150L+0vs/8DA78h1u02ooW1/fFq/Lwr+sGiqlzvrtq4= -sigs.k8s.io/structured-merge-diff/v4 v4.4.1/go.mod h1:N8hJocpFajUSSeSJ9bOZ77VzejKZaXsTtZo4/u7Io08= +sigs.k8s.io/structured-merge-diff/v4 v4.4.2 h1:MdmvkGuXi/8io6ixD5wud3vOLwc1rj0aNqRlpuvjmwA= +sigs.k8s.io/structured-merge-diff/v4 v4.4.2/go.mod h1:N8f93tFZh9U6vpxwRArLiikrE5/2tiu1w1AGfACIGE4= sigs.k8s.io/yaml v1.4.0 h1:Mk1wCc2gy/F0THH0TAp1QYyJNzRm2KCLy3o5ASXVI5E= sigs.k8s.io/yaml v1.4.0/go.mod h1:Ejl7/uTz7PSA4eKMyQCUTnhZYNmLIl+5c2lQPGR2BPY= diff --git a/inttest/sonobuoy/README.md b/inttest/sonobuoy/README.md index 9fd7116cbb8e..e3d66623c100 100644 --- a/inttest/sonobuoy/README.md +++ b/inttest/sonobuoy/README.md @@ -61,7 +61,7 @@ spec: user: "ubuntu" uploadBinary: true k0s: - version: "1.31.5+k0s.0" + version: "1.32.1+k0s.0" ``` To deploy a k0s cluster on the AWS machine, run: @@ -98,9 +98,9 @@ INFO ==> Running phase: Gather host facts . . . -INFO [ssh] 3.250.52.147:22: uploading k0s binary from /home/ubuntu/.cache/k0sctl/k0s/linux/amd64/k0s-v1.31.5+k0s.0 -INFO [ssh] 63.32.21.232:22: uploading k0s binary from /home/ubuntu/.cache/k0sctl/k0s/linux/amd64/k0s-v1.31.5+k0s.0 -INFO [ssh] 54.216.71.108:22: uploading k0s binary from /home/ubuntu/.cache/k0sctl/k0s/linux/amd64/k0s-v1.31.5+k0s.0 +INFO [ssh] 3.250.52.147:22: uploading k0s binary from /home/ubuntu/.cache/k0sctl/k0s/linux/amd64/k0s-v1.32.1+k0s.0 +INFO [ssh] 63.32.21.232:22: uploading k0s binary from /home/ubuntu/.cache/k0sctl/k0s/linux/amd64/k0s-v1.32.1+k0s.0 +INFO [ssh] 54.216.71.108:22: uploading k0s binary from /home/ubuntu/.cache/k0sctl/k0s/linux/amd64/k0s-v1.32.1+k0s.0 INFO ==> Running phase: Configure k0s WARN [ssh] 63.32.21.232:22: generating default configuration INFO [ssh] 63.32.21.232:22: validating configuration @@ -124,7 +124,7 @@ INFO [ssh] 3.250.52.147:22: waiting for node to become ready INFO ==> Running phase: Release exclusive host lock INFO ==> Running phase: Disconnect from hosts INFO ==> Finished in 1m42s -INFO k0s cluster version v1.31.5+k0s.0 is now installed +INFO k0s cluster version v1.32.1+k0s.0 is now installed INFO Tip: To access the cluster you can now fetch the admin kubeconfig using: INFO k0sctl kubeconfig ``` @@ -152,7 +152,7 @@ Example Output: /home/ubuntu/k0s/inttest/bin/sonobuoy run --wait=1200 \ --mode=certified-conformance \ --plugin-env=e2e.E2E_EXTRA_ARGS="--ginkgo.v" \ - --kubernetes-version=v1.31.5 + --kubernetes-version=v1.32.1 INFO[0000] create request issued name=sonobuoy namespace= resource=namespaces INFO[0000] create request issued name=sonobuoy-serviceaccount namespace=sonobuoy resource=serviceaccounts INFO[0000] create request issued name=sonobuoy-serviceaccount-sonobuoy namespace= resource=clusterrolebindings diff --git a/inttest/update-server/html/unstable/index.yaml b/inttest/update-server/html/unstable/index.yaml index 5c9f11af40f8..ae6fb3d970fe 100644 --- a/inttest/update-server/html/unstable/index.yaml +++ b/inttest/update-server/html/unstable/index.yaml @@ -1,5 +1,5 @@ name: unstable -version: v1.31.5+k0s.0 +version: v1.32.1+k0s.0 downloadURLs: k0s: linux-amd64: ..../k0s-amd64 diff --git a/pkg/apis/k0s/v1beta1/kubeproxy.go b/pkg/apis/k0s/v1beta1/kubeproxy.go index 820240e68131..d301a9d9efd7 100644 --- a/pkg/apis/k0s/v1beta1/kubeproxy.go +++ b/pkg/apis/k0s/v1beta1/kubeproxy.go @@ -49,7 +49,7 @@ type KubeProxy struct { } // KubeProxyIPTablesConfiguration contains iptables-related kube-proxy configuration -// @see https://github.com/kubernetes/kube-proxy/blob/v0.31.5/config/v1alpha1/types.go#L27-L48 +// @see https://github.com/kubernetes/kube-proxy/blob/v0.32.1/config/v1alpha1/types.go#L27-L48 type KubeProxyIPTablesConfiguration struct { MasqueradeBit *int32 `json:"masqueradeBit,omitempty"` MasqueradeAll bool `json:"masqueradeAll,omitempty"` @@ -59,7 +59,7 @@ type KubeProxyIPTablesConfiguration struct { } // KubeProxyIPVSConfiguration contains ipvs-related kube-proxy configuration -// @see https://github.com/kubernetes/kube-proxy/blob/v0.31.5/config/v1alpha1/types.go#L52-L78 +// @see https://github.com/kubernetes/kube-proxy/blob/v0.32.1/config/v1alpha1/types.go#L52-L78 type KubeProxyIPVSConfiguration struct { SyncPeriod metav1.Duration `json:"syncPeriod,omitempty"` MinSyncPeriod metav1.Duration `json:"minSyncPeriod,omitempty"` @@ -72,7 +72,7 @@ type KubeProxyIPVSConfiguration struct { } // KubeProxyNFTablesConfiguration contains nftables-related kube-proxy configuration -// @see https://github.com/kubernetes/kube-proxy/blob/v0.31.5/config/v1alpha1/types.go#L82-L97 +// @see https://github.com/kubernetes/kube-proxy/blob/v0.32.1/config/v1alpha1/types.go#L82-L97 type KubeProxyNFTablesConfiguration struct { SyncPeriod metav1.Duration `json:"syncPeriod,omitempty"` MasqueradeBit *int32 `json:"masqueradeBit,omitempty"` diff --git a/pkg/client/clientset/clientset.go b/pkg/client/clientset/clientset.go index 941905801941..b8cb09d4dc1f 100644 --- a/pkg/client/clientset/clientset.go +++ b/pkg/client/clientset/clientset.go @@ -19,8 +19,8 @@ limitations under the License. package clientset import ( - "fmt" - "net/http" + fmt "fmt" + http "net/http" autopilotv1beta2 "github.com/k0sproject/k0s/pkg/client/clientset/typed/autopilot/v1beta2" etcdv1beta1 "github.com/k0sproject/k0s/pkg/client/clientset/typed/etcd/v1beta1" diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/autopilot_client.go b/pkg/client/clientset/typed/autopilot/v1beta2/autopilot_client.go index 079cefe5a34a..0ae70d38cb79 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/autopilot_client.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/autopilot_client.go @@ -19,10 +19,10 @@ limitations under the License. package v1beta2 import ( - "net/http" + http "net/http" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" - "github.com/k0sproject/k0s/pkg/client/clientset/scheme" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" + scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" rest "k8s.io/client-go/rest" ) @@ -95,10 +95,10 @@ func New(c rest.Interface) *AutopilotV1beta2Client { } func setConfigDefaults(config *rest.Config) error { - gv := v1beta2.SchemeGroupVersion + gv := autopilotv1beta2.SchemeGroupVersion config.GroupVersion = &gv config.APIPath = "/apis" - config.NegotiatedSerializer = scheme.Codecs.WithoutConversion() + config.NegotiatedSerializer = rest.CodecFactoryForGeneratedClient(scheme.Scheme, scheme.Codecs).WithoutConversion() if config.UserAgent == "" { config.UserAgent = rest.DefaultKubernetesUserAgent() diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/controlnode.go b/pkg/client/clientset/typed/autopilot/v1beta2/controlnode.go index d0aec0ae8dd1..d34a1f8eea61 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/controlnode.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/controlnode.go @@ -19,9 +19,9 @@ limitations under the License. package v1beta2 import ( - "context" + context "context" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" watch "k8s.io/apimachinery/pkg/watch" @@ -36,31 +36,32 @@ type ControlNodesGetter interface { // ControlNodeInterface has methods to work with ControlNode resources. type ControlNodeInterface interface { - Create(ctx context.Context, controlNode *v1beta2.ControlNode, opts v1.CreateOptions) (*v1beta2.ControlNode, error) - Update(ctx context.Context, controlNode *v1beta2.ControlNode, opts v1.UpdateOptions) (*v1beta2.ControlNode, error) + Create(ctx context.Context, controlNode *autopilotv1beta2.ControlNode, opts v1.CreateOptions) (*autopilotv1beta2.ControlNode, error) + Update(ctx context.Context, controlNode *autopilotv1beta2.ControlNode, opts v1.UpdateOptions) (*autopilotv1beta2.ControlNode, error) // Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). - UpdateStatus(ctx context.Context, controlNode *v1beta2.ControlNode, opts v1.UpdateOptions) (*v1beta2.ControlNode, error) + UpdateStatus(ctx context.Context, controlNode *autopilotv1beta2.ControlNode, opts v1.UpdateOptions) (*autopilotv1beta2.ControlNode, error) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error - Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta2.ControlNode, error) - List(ctx context.Context, opts v1.ListOptions) (*v1beta2.ControlNodeList, error) + Get(ctx context.Context, name string, opts v1.GetOptions) (*autopilotv1beta2.ControlNode, error) + List(ctx context.Context, opts v1.ListOptions) (*autopilotv1beta2.ControlNodeList, error) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) ControlNodeExpansion } // controlNodes implements ControlNodeInterface type controlNodes struct { - *gentype.ClientWithList[*v1beta2.ControlNode, *v1beta2.ControlNodeList] + *gentype.ClientWithList[*autopilotv1beta2.ControlNode, *autopilotv1beta2.ControlNodeList] } // newControlNodes returns a ControlNodes func newControlNodes(c *AutopilotV1beta2Client) *controlNodes { return &controlNodes{ - gentype.NewClientWithList[*v1beta2.ControlNode, *v1beta2.ControlNodeList]( + gentype.NewClientWithList[*autopilotv1beta2.ControlNode, *autopilotv1beta2.ControlNodeList]( "controlnodes", c.RESTClient(), scheme.ParameterCodec, "", - func() *v1beta2.ControlNode { return &v1beta2.ControlNode{} }, - func() *v1beta2.ControlNodeList { return &v1beta2.ControlNodeList{} }), + func() *autopilotv1beta2.ControlNode { return &autopilotv1beta2.ControlNode{} }, + func() *autopilotv1beta2.ControlNodeList { return &autopilotv1beta2.ControlNodeList{} }, + ), } } diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_autopilot_client.go b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_autopilot_client.go index 3ddb7734283e..fb1620d78a62 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_autopilot_client.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_autopilot_client.go @@ -29,15 +29,15 @@ type FakeAutopilotV1beta2 struct { } func (c *FakeAutopilotV1beta2) ControlNodes() v1beta2.ControlNodeInterface { - return &FakeControlNodes{c} + return newFakeControlNodes(c) } func (c *FakeAutopilotV1beta2) Plans() v1beta2.PlanInterface { - return &FakePlans{c} + return newFakePlans(c) } func (c *FakeAutopilotV1beta2) UpdateConfigs() v1beta2.UpdateConfigInterface { - return &FakeUpdateConfigs{c} + return newFakeUpdateConfigs(c) } // RESTClient returns a RESTClient that is used to communicate diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_controlnode.go b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_controlnode.go index ce4debdcaa95..2531bf1292b9 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_controlnode.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_controlnode.go @@ -19,100 +19,32 @@ limitations under the License. package fake import ( - "context" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - labels "k8s.io/apimachinery/pkg/labels" - watch "k8s.io/apimachinery/pkg/watch" - testing "k8s.io/client-go/testing" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/client/clientset/typed/autopilot/v1beta2" + gentype "k8s.io/client-go/gentype" ) -// FakeControlNodes implements ControlNodeInterface -type FakeControlNodes struct { +// fakeControlNodes implements ControlNodeInterface +type fakeControlNodes struct { + *gentype.FakeClientWithList[*v1beta2.ControlNode, *v1beta2.ControlNodeList] Fake *FakeAutopilotV1beta2 } -var controlnodesResource = v1beta2.SchemeGroupVersion.WithResource("controlnodes") - -var controlnodesKind = v1beta2.SchemeGroupVersion.WithKind("ControlNode") - -// Get takes name of the controlNode, and returns the corresponding controlNode object, and an error if there is any. -func (c *FakeControlNodes) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta2.ControlNode, err error) { - emptyResult := &v1beta2.ControlNode{} - obj, err := c.Fake. - Invokes(testing.NewRootGetActionWithOptions(controlnodesResource, name, options), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.ControlNode), err -} - -// List takes label and field selectors, and returns the list of ControlNodes that match those selectors. -func (c *FakeControlNodes) List(ctx context.Context, opts v1.ListOptions) (result *v1beta2.ControlNodeList, err error) { - emptyResult := &v1beta2.ControlNodeList{} - obj, err := c.Fake. - Invokes(testing.NewRootListActionWithOptions(controlnodesResource, controlnodesKind, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - - label, _, _ := testing.ExtractFromListOptions(opts) - if label == nil { - label = labels.Everything() - } - list := &v1beta2.ControlNodeList{ListMeta: obj.(*v1beta2.ControlNodeList).ListMeta} - for _, item := range obj.(*v1beta2.ControlNodeList).Items { - if label.Matches(labels.Set(item.Labels)) { - list.Items = append(list.Items, item) - } - } - return list, err -} - -// Watch returns a watch.Interface that watches the requested controlNodes. -func (c *FakeControlNodes) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { - return c.Fake. - InvokesWatch(testing.NewRootWatchActionWithOptions(controlnodesResource, opts)) -} - -// Create takes the representation of a controlNode and creates it. Returns the server's representation of the controlNode, and an error, if there is any. -func (c *FakeControlNodes) Create(ctx context.Context, controlNode *v1beta2.ControlNode, opts v1.CreateOptions) (result *v1beta2.ControlNode, err error) { - emptyResult := &v1beta2.ControlNode{} - obj, err := c.Fake. - Invokes(testing.NewRootCreateActionWithOptions(controlnodesResource, controlNode, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.ControlNode), err -} - -// Update takes the representation of a controlNode and updates it. Returns the server's representation of the controlNode, and an error, if there is any. -func (c *FakeControlNodes) Update(ctx context.Context, controlNode *v1beta2.ControlNode, opts v1.UpdateOptions) (result *v1beta2.ControlNode, err error) { - emptyResult := &v1beta2.ControlNode{} - obj, err := c.Fake. - Invokes(testing.NewRootUpdateActionWithOptions(controlnodesResource, controlNode, opts), emptyResult) - if obj == nil { - return emptyResult, err +func newFakeControlNodes(fake *FakeAutopilotV1beta2) autopilotv1beta2.ControlNodeInterface { + return &fakeControlNodes{ + gentype.NewFakeClientWithList[*v1beta2.ControlNode, *v1beta2.ControlNodeList]( + fake.Fake, + "", + v1beta2.SchemeGroupVersion.WithResource("controlnodes"), + v1beta2.SchemeGroupVersion.WithKind("ControlNode"), + func() *v1beta2.ControlNode { return &v1beta2.ControlNode{} }, + func() *v1beta2.ControlNodeList { return &v1beta2.ControlNodeList{} }, + func(dst, src *v1beta2.ControlNodeList) { dst.ListMeta = src.ListMeta }, + func(list *v1beta2.ControlNodeList) []*v1beta2.ControlNode { return gentype.ToPointerSlice(list.Items) }, + func(list *v1beta2.ControlNodeList, items []*v1beta2.ControlNode) { + list.Items = gentype.FromPointerSlice(items) + }, + ), + fake, } - return obj.(*v1beta2.ControlNode), err -} - -// UpdateStatus was generated because the type contains a Status member. -// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). -func (c *FakeControlNodes) UpdateStatus(ctx context.Context, controlNode *v1beta2.ControlNode, opts v1.UpdateOptions) (result *v1beta2.ControlNode, err error) { - emptyResult := &v1beta2.ControlNode{} - obj, err := c.Fake. - Invokes(testing.NewRootUpdateSubresourceActionWithOptions(controlnodesResource, "status", controlNode, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.ControlNode), err -} - -// Delete takes name of the controlNode and deletes it. Returns an error if one occurs. -func (c *FakeControlNodes) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { - _, err := c.Fake. - Invokes(testing.NewRootDeleteActionWithOptions(controlnodesResource, name, opts), &v1beta2.ControlNode{}) - return err } diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_plan.go b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_plan.go index d01bc1093ed8..dad519a02560 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_plan.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_plan.go @@ -19,88 +19,30 @@ limitations under the License. package fake import ( - "context" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - labels "k8s.io/apimachinery/pkg/labels" - watch "k8s.io/apimachinery/pkg/watch" - testing "k8s.io/client-go/testing" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/client/clientset/typed/autopilot/v1beta2" + gentype "k8s.io/client-go/gentype" ) -// FakePlans implements PlanInterface -type FakePlans struct { +// fakePlans implements PlanInterface +type fakePlans struct { + *gentype.FakeClientWithList[*v1beta2.Plan, *v1beta2.PlanList] Fake *FakeAutopilotV1beta2 } -var plansResource = v1beta2.SchemeGroupVersion.WithResource("plans") - -var plansKind = v1beta2.SchemeGroupVersion.WithKind("Plan") - -// Get takes name of the plan, and returns the corresponding plan object, and an error if there is any. -func (c *FakePlans) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta2.Plan, err error) { - emptyResult := &v1beta2.Plan{} - obj, err := c.Fake. - Invokes(testing.NewRootGetActionWithOptions(plansResource, name, options), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.Plan), err -} - -// List takes label and field selectors, and returns the list of Plans that match those selectors. -func (c *FakePlans) List(ctx context.Context, opts v1.ListOptions) (result *v1beta2.PlanList, err error) { - emptyResult := &v1beta2.PlanList{} - obj, err := c.Fake. - Invokes(testing.NewRootListActionWithOptions(plansResource, plansKind, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - - label, _, _ := testing.ExtractFromListOptions(opts) - if label == nil { - label = labels.Everything() +func newFakePlans(fake *FakeAutopilotV1beta2) autopilotv1beta2.PlanInterface { + return &fakePlans{ + gentype.NewFakeClientWithList[*v1beta2.Plan, *v1beta2.PlanList]( + fake.Fake, + "", + v1beta2.SchemeGroupVersion.WithResource("plans"), + v1beta2.SchemeGroupVersion.WithKind("Plan"), + func() *v1beta2.Plan { return &v1beta2.Plan{} }, + func() *v1beta2.PlanList { return &v1beta2.PlanList{} }, + func(dst, src *v1beta2.PlanList) { dst.ListMeta = src.ListMeta }, + func(list *v1beta2.PlanList) []*v1beta2.Plan { return gentype.ToPointerSlice(list.Items) }, + func(list *v1beta2.PlanList, items []*v1beta2.Plan) { list.Items = gentype.FromPointerSlice(items) }, + ), + fake, } - list := &v1beta2.PlanList{ListMeta: obj.(*v1beta2.PlanList).ListMeta} - for _, item := range obj.(*v1beta2.PlanList).Items { - if label.Matches(labels.Set(item.Labels)) { - list.Items = append(list.Items, item) - } - } - return list, err -} - -// Watch returns a watch.Interface that watches the requested plans. -func (c *FakePlans) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { - return c.Fake. - InvokesWatch(testing.NewRootWatchActionWithOptions(plansResource, opts)) -} - -// Create takes the representation of a plan and creates it. Returns the server's representation of the plan, and an error, if there is any. -func (c *FakePlans) Create(ctx context.Context, plan *v1beta2.Plan, opts v1.CreateOptions) (result *v1beta2.Plan, err error) { - emptyResult := &v1beta2.Plan{} - obj, err := c.Fake. - Invokes(testing.NewRootCreateActionWithOptions(plansResource, plan, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.Plan), err -} - -// Update takes the representation of a plan and updates it. Returns the server's representation of the plan, and an error, if there is any. -func (c *FakePlans) Update(ctx context.Context, plan *v1beta2.Plan, opts v1.UpdateOptions) (result *v1beta2.Plan, err error) { - emptyResult := &v1beta2.Plan{} - obj, err := c.Fake. - Invokes(testing.NewRootUpdateActionWithOptions(plansResource, plan, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.Plan), err -} - -// Delete takes name of the plan and deletes it. Returns an error if one occurs. -func (c *FakePlans) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { - _, err := c.Fake. - Invokes(testing.NewRootDeleteActionWithOptions(plansResource, name, opts), &v1beta2.Plan{}) - return err } diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_updateconfig.go b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_updateconfig.go index 213a591cf7a4..6bd81025791c 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_updateconfig.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/fake/fake_updateconfig.go @@ -19,88 +19,34 @@ limitations under the License. package fake import ( - "context" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - labels "k8s.io/apimachinery/pkg/labels" - watch "k8s.io/apimachinery/pkg/watch" - testing "k8s.io/client-go/testing" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/client/clientset/typed/autopilot/v1beta2" + gentype "k8s.io/client-go/gentype" ) -// FakeUpdateConfigs implements UpdateConfigInterface -type FakeUpdateConfigs struct { +// fakeUpdateConfigs implements UpdateConfigInterface +type fakeUpdateConfigs struct { + *gentype.FakeClientWithList[*v1beta2.UpdateConfig, *v1beta2.UpdateConfigList] Fake *FakeAutopilotV1beta2 } -var updateconfigsResource = v1beta2.SchemeGroupVersion.WithResource("updateconfigs") - -var updateconfigsKind = v1beta2.SchemeGroupVersion.WithKind("UpdateConfig") - -// Get takes name of the updateConfig, and returns the corresponding updateConfig object, and an error if there is any. -func (c *FakeUpdateConfigs) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta2.UpdateConfig, err error) { - emptyResult := &v1beta2.UpdateConfig{} - obj, err := c.Fake. - Invokes(testing.NewRootGetActionWithOptions(updateconfigsResource, name, options), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.UpdateConfig), err -} - -// List takes label and field selectors, and returns the list of UpdateConfigs that match those selectors. -func (c *FakeUpdateConfigs) List(ctx context.Context, opts v1.ListOptions) (result *v1beta2.UpdateConfigList, err error) { - emptyResult := &v1beta2.UpdateConfigList{} - obj, err := c.Fake. - Invokes(testing.NewRootListActionWithOptions(updateconfigsResource, updateconfigsKind, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - - label, _, _ := testing.ExtractFromListOptions(opts) - if label == nil { - label = labels.Everything() +func newFakeUpdateConfigs(fake *FakeAutopilotV1beta2) autopilotv1beta2.UpdateConfigInterface { + return &fakeUpdateConfigs{ + gentype.NewFakeClientWithList[*v1beta2.UpdateConfig, *v1beta2.UpdateConfigList]( + fake.Fake, + "", + v1beta2.SchemeGroupVersion.WithResource("updateconfigs"), + v1beta2.SchemeGroupVersion.WithKind("UpdateConfig"), + func() *v1beta2.UpdateConfig { return &v1beta2.UpdateConfig{} }, + func() *v1beta2.UpdateConfigList { return &v1beta2.UpdateConfigList{} }, + func(dst, src *v1beta2.UpdateConfigList) { dst.ListMeta = src.ListMeta }, + func(list *v1beta2.UpdateConfigList) []*v1beta2.UpdateConfig { + return gentype.ToPointerSlice(list.Items) + }, + func(list *v1beta2.UpdateConfigList, items []*v1beta2.UpdateConfig) { + list.Items = gentype.FromPointerSlice(items) + }, + ), + fake, } - list := &v1beta2.UpdateConfigList{ListMeta: obj.(*v1beta2.UpdateConfigList).ListMeta} - for _, item := range obj.(*v1beta2.UpdateConfigList).Items { - if label.Matches(labels.Set(item.Labels)) { - list.Items = append(list.Items, item) - } - } - return list, err -} - -// Watch returns a watch.Interface that watches the requested updateConfigs. -func (c *FakeUpdateConfigs) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { - return c.Fake. - InvokesWatch(testing.NewRootWatchActionWithOptions(updateconfigsResource, opts)) -} - -// Create takes the representation of a updateConfig and creates it. Returns the server's representation of the updateConfig, and an error, if there is any. -func (c *FakeUpdateConfigs) Create(ctx context.Context, updateConfig *v1beta2.UpdateConfig, opts v1.CreateOptions) (result *v1beta2.UpdateConfig, err error) { - emptyResult := &v1beta2.UpdateConfig{} - obj, err := c.Fake. - Invokes(testing.NewRootCreateActionWithOptions(updateconfigsResource, updateConfig, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.UpdateConfig), err -} - -// Update takes the representation of a updateConfig and updates it. Returns the server's representation of the updateConfig, and an error, if there is any. -func (c *FakeUpdateConfigs) Update(ctx context.Context, updateConfig *v1beta2.UpdateConfig, opts v1.UpdateOptions) (result *v1beta2.UpdateConfig, err error) { - emptyResult := &v1beta2.UpdateConfig{} - obj, err := c.Fake. - Invokes(testing.NewRootUpdateActionWithOptions(updateconfigsResource, updateConfig, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta2.UpdateConfig), err -} - -// Delete takes name of the updateConfig and deletes it. Returns an error if one occurs. -func (c *FakeUpdateConfigs) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { - _, err := c.Fake. - Invokes(testing.NewRootDeleteActionWithOptions(updateconfigsResource, name, opts), &v1beta2.UpdateConfig{}) - return err } diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/plan.go b/pkg/client/clientset/typed/autopilot/v1beta2/plan.go index e6a4e74b1fb6..44202fb0b0e8 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/plan.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/plan.go @@ -19,9 +19,9 @@ limitations under the License. package v1beta2 import ( - "context" + context "context" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" watch "k8s.io/apimachinery/pkg/watch" @@ -36,29 +36,30 @@ type PlansGetter interface { // PlanInterface has methods to work with Plan resources. type PlanInterface interface { - Create(ctx context.Context, plan *v1beta2.Plan, opts v1.CreateOptions) (*v1beta2.Plan, error) - Update(ctx context.Context, plan *v1beta2.Plan, opts v1.UpdateOptions) (*v1beta2.Plan, error) + Create(ctx context.Context, plan *autopilotv1beta2.Plan, opts v1.CreateOptions) (*autopilotv1beta2.Plan, error) + Update(ctx context.Context, plan *autopilotv1beta2.Plan, opts v1.UpdateOptions) (*autopilotv1beta2.Plan, error) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error - Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta2.Plan, error) - List(ctx context.Context, opts v1.ListOptions) (*v1beta2.PlanList, error) + Get(ctx context.Context, name string, opts v1.GetOptions) (*autopilotv1beta2.Plan, error) + List(ctx context.Context, opts v1.ListOptions) (*autopilotv1beta2.PlanList, error) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) PlanExpansion } // plans implements PlanInterface type plans struct { - *gentype.ClientWithList[*v1beta2.Plan, *v1beta2.PlanList] + *gentype.ClientWithList[*autopilotv1beta2.Plan, *autopilotv1beta2.PlanList] } // newPlans returns a Plans func newPlans(c *AutopilotV1beta2Client) *plans { return &plans{ - gentype.NewClientWithList[*v1beta2.Plan, *v1beta2.PlanList]( + gentype.NewClientWithList[*autopilotv1beta2.Plan, *autopilotv1beta2.PlanList]( "plans", c.RESTClient(), scheme.ParameterCodec, "", - func() *v1beta2.Plan { return &v1beta2.Plan{} }, - func() *v1beta2.PlanList { return &v1beta2.PlanList{} }), + func() *autopilotv1beta2.Plan { return &autopilotv1beta2.Plan{} }, + func() *autopilotv1beta2.PlanList { return &autopilotv1beta2.PlanList{} }, + ), } } diff --git a/pkg/client/clientset/typed/autopilot/v1beta2/updateconfig.go b/pkg/client/clientset/typed/autopilot/v1beta2/updateconfig.go index 96a58fc17cc6..48ad81a6def6 100644 --- a/pkg/client/clientset/typed/autopilot/v1beta2/updateconfig.go +++ b/pkg/client/clientset/typed/autopilot/v1beta2/updateconfig.go @@ -19,9 +19,9 @@ limitations under the License. package v1beta2 import ( - "context" + context "context" - v1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" + autopilotv1beta2 "github.com/k0sproject/k0s/pkg/apis/autopilot/v1beta2" scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" watch "k8s.io/apimachinery/pkg/watch" @@ -36,29 +36,30 @@ type UpdateConfigsGetter interface { // UpdateConfigInterface has methods to work with UpdateConfig resources. type UpdateConfigInterface interface { - Create(ctx context.Context, updateConfig *v1beta2.UpdateConfig, opts v1.CreateOptions) (*v1beta2.UpdateConfig, error) - Update(ctx context.Context, updateConfig *v1beta2.UpdateConfig, opts v1.UpdateOptions) (*v1beta2.UpdateConfig, error) + Create(ctx context.Context, updateConfig *autopilotv1beta2.UpdateConfig, opts v1.CreateOptions) (*autopilotv1beta2.UpdateConfig, error) + Update(ctx context.Context, updateConfig *autopilotv1beta2.UpdateConfig, opts v1.UpdateOptions) (*autopilotv1beta2.UpdateConfig, error) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error - Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta2.UpdateConfig, error) - List(ctx context.Context, opts v1.ListOptions) (*v1beta2.UpdateConfigList, error) + Get(ctx context.Context, name string, opts v1.GetOptions) (*autopilotv1beta2.UpdateConfig, error) + List(ctx context.Context, opts v1.ListOptions) (*autopilotv1beta2.UpdateConfigList, error) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) UpdateConfigExpansion } // updateConfigs implements UpdateConfigInterface type updateConfigs struct { - *gentype.ClientWithList[*v1beta2.UpdateConfig, *v1beta2.UpdateConfigList] + *gentype.ClientWithList[*autopilotv1beta2.UpdateConfig, *autopilotv1beta2.UpdateConfigList] } // newUpdateConfigs returns a UpdateConfigs func newUpdateConfigs(c *AutopilotV1beta2Client) *updateConfigs { return &updateConfigs{ - gentype.NewClientWithList[*v1beta2.UpdateConfig, *v1beta2.UpdateConfigList]( + gentype.NewClientWithList[*autopilotv1beta2.UpdateConfig, *autopilotv1beta2.UpdateConfigList]( "updateconfigs", c.RESTClient(), scheme.ParameterCodec, "", - func() *v1beta2.UpdateConfig { return &v1beta2.UpdateConfig{} }, - func() *v1beta2.UpdateConfigList { return &v1beta2.UpdateConfigList{} }), + func() *autopilotv1beta2.UpdateConfig { return &autopilotv1beta2.UpdateConfig{} }, + func() *autopilotv1beta2.UpdateConfigList { return &autopilotv1beta2.UpdateConfigList{} }, + ), } } diff --git a/pkg/client/clientset/typed/etcd/v1beta1/etcd_client.go b/pkg/client/clientset/typed/etcd/v1beta1/etcd_client.go index e5a53664c4c9..5ba5d220d821 100644 --- a/pkg/client/clientset/typed/etcd/v1beta1/etcd_client.go +++ b/pkg/client/clientset/typed/etcd/v1beta1/etcd_client.go @@ -19,10 +19,10 @@ limitations under the License. package v1beta1 import ( - "net/http" + http "net/http" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/etcd/v1beta1" - "github.com/k0sproject/k0s/pkg/client/clientset/scheme" + etcdv1beta1 "github.com/k0sproject/k0s/pkg/apis/etcd/v1beta1" + scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" rest "k8s.io/client-go/rest" ) @@ -85,10 +85,10 @@ func New(c rest.Interface) *EtcdV1beta1Client { } func setConfigDefaults(config *rest.Config) error { - gv := v1beta1.SchemeGroupVersion + gv := etcdv1beta1.SchemeGroupVersion config.GroupVersion = &gv config.APIPath = "/apis" - config.NegotiatedSerializer = scheme.Codecs.WithoutConversion() + config.NegotiatedSerializer = rest.CodecFactoryForGeneratedClient(scheme.Scheme, scheme.Codecs).WithoutConversion() if config.UserAgent == "" { config.UserAgent = rest.DefaultKubernetesUserAgent() diff --git a/pkg/client/clientset/typed/etcd/v1beta1/etcdmember.go b/pkg/client/clientset/typed/etcd/v1beta1/etcdmember.go index 95a3ab9b5304..a2d02d26ab8a 100644 --- a/pkg/client/clientset/typed/etcd/v1beta1/etcdmember.go +++ b/pkg/client/clientset/typed/etcd/v1beta1/etcdmember.go @@ -19,9 +19,9 @@ limitations under the License. package v1beta1 import ( - "context" + context "context" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/etcd/v1beta1" + etcdv1beta1 "github.com/k0sproject/k0s/pkg/apis/etcd/v1beta1" scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" types "k8s.io/apimachinery/pkg/types" @@ -37,32 +37,33 @@ type EtcdMembersGetter interface { // EtcdMemberInterface has methods to work with EtcdMember resources. type EtcdMemberInterface interface { - Create(ctx context.Context, etcdMember *v1beta1.EtcdMember, opts v1.CreateOptions) (*v1beta1.EtcdMember, error) - Update(ctx context.Context, etcdMember *v1beta1.EtcdMember, opts v1.UpdateOptions) (*v1beta1.EtcdMember, error) + Create(ctx context.Context, etcdMember *etcdv1beta1.EtcdMember, opts v1.CreateOptions) (*etcdv1beta1.EtcdMember, error) + Update(ctx context.Context, etcdMember *etcdv1beta1.EtcdMember, opts v1.UpdateOptions) (*etcdv1beta1.EtcdMember, error) // Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). - UpdateStatus(ctx context.Context, etcdMember *v1beta1.EtcdMember, opts v1.UpdateOptions) (*v1beta1.EtcdMember, error) + UpdateStatus(ctx context.Context, etcdMember *etcdv1beta1.EtcdMember, opts v1.UpdateOptions) (*etcdv1beta1.EtcdMember, error) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error - Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta1.EtcdMember, error) - List(ctx context.Context, opts v1.ListOptions) (*v1beta1.EtcdMemberList, error) + Get(ctx context.Context, name string, opts v1.GetOptions) (*etcdv1beta1.EtcdMember, error) + List(ctx context.Context, opts v1.ListOptions) (*etcdv1beta1.EtcdMemberList, error) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) - Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta1.EtcdMember, err error) + Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *etcdv1beta1.EtcdMember, err error) EtcdMemberExpansion } // etcdMembers implements EtcdMemberInterface type etcdMembers struct { - *gentype.ClientWithList[*v1beta1.EtcdMember, *v1beta1.EtcdMemberList] + *gentype.ClientWithList[*etcdv1beta1.EtcdMember, *etcdv1beta1.EtcdMemberList] } // newEtcdMembers returns a EtcdMembers func newEtcdMembers(c *EtcdV1beta1Client) *etcdMembers { return &etcdMembers{ - gentype.NewClientWithList[*v1beta1.EtcdMember, *v1beta1.EtcdMemberList]( + gentype.NewClientWithList[*etcdv1beta1.EtcdMember, *etcdv1beta1.EtcdMemberList]( "etcdmembers", c.RESTClient(), scheme.ParameterCodec, "", - func() *v1beta1.EtcdMember { return &v1beta1.EtcdMember{} }, - func() *v1beta1.EtcdMemberList { return &v1beta1.EtcdMemberList{} }), + func() *etcdv1beta1.EtcdMember { return &etcdv1beta1.EtcdMember{} }, + func() *etcdv1beta1.EtcdMemberList { return &etcdv1beta1.EtcdMemberList{} }, + ), } } diff --git a/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcd_client.go b/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcd_client.go index fd01757511af..0748558a6e0e 100644 --- a/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcd_client.go +++ b/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcd_client.go @@ -29,7 +29,7 @@ type FakeEtcdV1beta1 struct { } func (c *FakeEtcdV1beta1) EtcdMembers() v1beta1.EtcdMemberInterface { - return &FakeEtcdMembers{c} + return newFakeEtcdMembers(c) } // RESTClient returns a RESTClient that is used to communicate diff --git a/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcdmember.go b/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcdmember.go index c122bbf0da12..46236548afc4 100644 --- a/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcdmember.go +++ b/pkg/client/clientset/typed/etcd/v1beta1/fake/fake_etcdmember.go @@ -19,112 +19,32 @@ limitations under the License. package fake import ( - "context" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/etcd/v1beta1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - labels "k8s.io/apimachinery/pkg/labels" - types "k8s.io/apimachinery/pkg/types" - watch "k8s.io/apimachinery/pkg/watch" - testing "k8s.io/client-go/testing" + etcdv1beta1 "github.com/k0sproject/k0s/pkg/client/clientset/typed/etcd/v1beta1" + gentype "k8s.io/client-go/gentype" ) -// FakeEtcdMembers implements EtcdMemberInterface -type FakeEtcdMembers struct { +// fakeEtcdMembers implements EtcdMemberInterface +type fakeEtcdMembers struct { + *gentype.FakeClientWithList[*v1beta1.EtcdMember, *v1beta1.EtcdMemberList] Fake *FakeEtcdV1beta1 } -var etcdmembersResource = v1beta1.SchemeGroupVersion.WithResource("etcdmembers") - -var etcdmembersKind = v1beta1.SchemeGroupVersion.WithKind("EtcdMember") - -// Get takes name of the etcdMember, and returns the corresponding etcdMember object, and an error if there is any. -func (c *FakeEtcdMembers) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta1.EtcdMember, err error) { - emptyResult := &v1beta1.EtcdMember{} - obj, err := c.Fake. - Invokes(testing.NewRootGetActionWithOptions(etcdmembersResource, name, options), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.EtcdMember), err -} - -// List takes label and field selectors, and returns the list of EtcdMembers that match those selectors. -func (c *FakeEtcdMembers) List(ctx context.Context, opts v1.ListOptions) (result *v1beta1.EtcdMemberList, err error) { - emptyResult := &v1beta1.EtcdMemberList{} - obj, err := c.Fake. - Invokes(testing.NewRootListActionWithOptions(etcdmembersResource, etcdmembersKind, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - - label, _, _ := testing.ExtractFromListOptions(opts) - if label == nil { - label = labels.Everything() - } - list := &v1beta1.EtcdMemberList{ListMeta: obj.(*v1beta1.EtcdMemberList).ListMeta} - for _, item := range obj.(*v1beta1.EtcdMemberList).Items { - if label.Matches(labels.Set(item.Labels)) { - list.Items = append(list.Items, item) - } - } - return list, err -} - -// Watch returns a watch.Interface that watches the requested etcdMembers. -func (c *FakeEtcdMembers) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { - return c.Fake. - InvokesWatch(testing.NewRootWatchActionWithOptions(etcdmembersResource, opts)) -} - -// Create takes the representation of a etcdMember and creates it. Returns the server's representation of the etcdMember, and an error, if there is any. -func (c *FakeEtcdMembers) Create(ctx context.Context, etcdMember *v1beta1.EtcdMember, opts v1.CreateOptions) (result *v1beta1.EtcdMember, err error) { - emptyResult := &v1beta1.EtcdMember{} - obj, err := c.Fake. - Invokes(testing.NewRootCreateActionWithOptions(etcdmembersResource, etcdMember, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.EtcdMember), err -} - -// Update takes the representation of a etcdMember and updates it. Returns the server's representation of the etcdMember, and an error, if there is any. -func (c *FakeEtcdMembers) Update(ctx context.Context, etcdMember *v1beta1.EtcdMember, opts v1.UpdateOptions) (result *v1beta1.EtcdMember, err error) { - emptyResult := &v1beta1.EtcdMember{} - obj, err := c.Fake. - Invokes(testing.NewRootUpdateActionWithOptions(etcdmembersResource, etcdMember, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.EtcdMember), err -} - -// UpdateStatus was generated because the type contains a Status member. -// Add a +genclient:noStatus comment above the type to avoid generating UpdateStatus(). -func (c *FakeEtcdMembers) UpdateStatus(ctx context.Context, etcdMember *v1beta1.EtcdMember, opts v1.UpdateOptions) (result *v1beta1.EtcdMember, err error) { - emptyResult := &v1beta1.EtcdMember{} - obj, err := c.Fake. - Invokes(testing.NewRootUpdateSubresourceActionWithOptions(etcdmembersResource, "status", etcdMember, opts), emptyResult) - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.EtcdMember), err -} - -// Delete takes name of the etcdMember and deletes it. Returns an error if one occurs. -func (c *FakeEtcdMembers) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { - _, err := c.Fake. - Invokes(testing.NewRootDeleteActionWithOptions(etcdmembersResource, name, opts), &v1beta1.EtcdMember{}) - return err -} - -// Patch applies the patch and returns the patched etcdMember. -func (c *FakeEtcdMembers) Patch(ctx context.Context, name string, pt types.PatchType, data []byte, opts v1.PatchOptions, subresources ...string) (result *v1beta1.EtcdMember, err error) { - emptyResult := &v1beta1.EtcdMember{} - obj, err := c.Fake. - Invokes(testing.NewRootPatchSubresourceActionWithOptions(etcdmembersResource, name, pt, data, opts, subresources...), emptyResult) - if obj == nil { - return emptyResult, err +func newFakeEtcdMembers(fake *FakeEtcdV1beta1) etcdv1beta1.EtcdMemberInterface { + return &fakeEtcdMembers{ + gentype.NewFakeClientWithList[*v1beta1.EtcdMember, *v1beta1.EtcdMemberList]( + fake.Fake, + "", + v1beta1.SchemeGroupVersion.WithResource("etcdmembers"), + v1beta1.SchemeGroupVersion.WithKind("EtcdMember"), + func() *v1beta1.EtcdMember { return &v1beta1.EtcdMember{} }, + func() *v1beta1.EtcdMemberList { return &v1beta1.EtcdMemberList{} }, + func(dst, src *v1beta1.EtcdMemberList) { dst.ListMeta = src.ListMeta }, + func(list *v1beta1.EtcdMemberList) []*v1beta1.EtcdMember { return gentype.ToPointerSlice(list.Items) }, + func(list *v1beta1.EtcdMemberList, items []*v1beta1.EtcdMember) { + list.Items = gentype.FromPointerSlice(items) + }, + ), + fake, } - return obj.(*v1beta1.EtcdMember), err } diff --git a/pkg/client/clientset/typed/helm/v1beta1/chart.go b/pkg/client/clientset/typed/helm/v1beta1/chart.go index 659d55d2a835..9308696e13cb 100644 --- a/pkg/client/clientset/typed/helm/v1beta1/chart.go +++ b/pkg/client/clientset/typed/helm/v1beta1/chart.go @@ -19,9 +19,9 @@ limitations under the License. package v1beta1 import ( - "context" + context "context" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/helm/v1beta1" + helmv1beta1 "github.com/k0sproject/k0s/pkg/apis/helm/v1beta1" scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" watch "k8s.io/apimachinery/pkg/watch" @@ -36,29 +36,30 @@ type ChartsGetter interface { // ChartInterface has methods to work with Chart resources. type ChartInterface interface { - Create(ctx context.Context, chart *v1beta1.Chart, opts v1.CreateOptions) (*v1beta1.Chart, error) - Update(ctx context.Context, chart *v1beta1.Chart, opts v1.UpdateOptions) (*v1beta1.Chart, error) + Create(ctx context.Context, chart *helmv1beta1.Chart, opts v1.CreateOptions) (*helmv1beta1.Chart, error) + Update(ctx context.Context, chart *helmv1beta1.Chart, opts v1.UpdateOptions) (*helmv1beta1.Chart, error) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error - Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta1.Chart, error) - List(ctx context.Context, opts v1.ListOptions) (*v1beta1.ChartList, error) + Get(ctx context.Context, name string, opts v1.GetOptions) (*helmv1beta1.Chart, error) + List(ctx context.Context, opts v1.ListOptions) (*helmv1beta1.ChartList, error) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) ChartExpansion } // charts implements ChartInterface type charts struct { - *gentype.ClientWithList[*v1beta1.Chart, *v1beta1.ChartList] + *gentype.ClientWithList[*helmv1beta1.Chart, *helmv1beta1.ChartList] } // newCharts returns a Charts func newCharts(c *HelmV1beta1Client, namespace string) *charts { return &charts{ - gentype.NewClientWithList[*v1beta1.Chart, *v1beta1.ChartList]( + gentype.NewClientWithList[*helmv1beta1.Chart, *helmv1beta1.ChartList]( "charts", c.RESTClient(), scheme.ParameterCodec, namespace, - func() *v1beta1.Chart { return &v1beta1.Chart{} }, - func() *v1beta1.ChartList { return &v1beta1.ChartList{} }), + func() *helmv1beta1.Chart { return &helmv1beta1.Chart{} }, + func() *helmv1beta1.ChartList { return &helmv1beta1.ChartList{} }, + ), } } diff --git a/pkg/client/clientset/typed/helm/v1beta1/fake/fake_chart.go b/pkg/client/clientset/typed/helm/v1beta1/fake/fake_chart.go index dd6dd953c912..887ba643fcf7 100644 --- a/pkg/client/clientset/typed/helm/v1beta1/fake/fake_chart.go +++ b/pkg/client/clientset/typed/helm/v1beta1/fake/fake_chart.go @@ -19,95 +19,30 @@ limitations under the License. package fake import ( - "context" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/helm/v1beta1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - labels "k8s.io/apimachinery/pkg/labels" - watch "k8s.io/apimachinery/pkg/watch" - testing "k8s.io/client-go/testing" + helmv1beta1 "github.com/k0sproject/k0s/pkg/client/clientset/typed/helm/v1beta1" + gentype "k8s.io/client-go/gentype" ) -// FakeCharts implements ChartInterface -type FakeCharts struct { +// fakeCharts implements ChartInterface +type fakeCharts struct { + *gentype.FakeClientWithList[*v1beta1.Chart, *v1beta1.ChartList] Fake *FakeHelmV1beta1 - ns string } -var chartsResource = v1beta1.SchemeGroupVersion.WithResource("charts") - -var chartsKind = v1beta1.SchemeGroupVersion.WithKind("Chart") - -// Get takes name of the chart, and returns the corresponding chart object, and an error if there is any. -func (c *FakeCharts) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta1.Chart, err error) { - emptyResult := &v1beta1.Chart{} - obj, err := c.Fake. - Invokes(testing.NewGetActionWithOptions(chartsResource, c.ns, name, options), emptyResult) - - if obj == nil { - return emptyResult, err +func newFakeCharts(fake *FakeHelmV1beta1, namespace string) helmv1beta1.ChartInterface { + return &fakeCharts{ + gentype.NewFakeClientWithList[*v1beta1.Chart, *v1beta1.ChartList]( + fake.Fake, + namespace, + v1beta1.SchemeGroupVersion.WithResource("charts"), + v1beta1.SchemeGroupVersion.WithKind("Chart"), + func() *v1beta1.Chart { return &v1beta1.Chart{} }, + func() *v1beta1.ChartList { return &v1beta1.ChartList{} }, + func(dst, src *v1beta1.ChartList) { dst.ListMeta = src.ListMeta }, + func(list *v1beta1.ChartList) []*v1beta1.Chart { return gentype.ToPointerSlice(list.Items) }, + func(list *v1beta1.ChartList, items []*v1beta1.Chart) { list.Items = gentype.FromPointerSlice(items) }, + ), + fake, } - return obj.(*v1beta1.Chart), err -} - -// List takes label and field selectors, and returns the list of Charts that match those selectors. -func (c *FakeCharts) List(ctx context.Context, opts v1.ListOptions) (result *v1beta1.ChartList, err error) { - emptyResult := &v1beta1.ChartList{} - obj, err := c.Fake. - Invokes(testing.NewListActionWithOptions(chartsResource, chartsKind, c.ns, opts), emptyResult) - - if obj == nil { - return emptyResult, err - } - - label, _, _ := testing.ExtractFromListOptions(opts) - if label == nil { - label = labels.Everything() - } - list := &v1beta1.ChartList{ListMeta: obj.(*v1beta1.ChartList).ListMeta} - for _, item := range obj.(*v1beta1.ChartList).Items { - if label.Matches(labels.Set(item.Labels)) { - list.Items = append(list.Items, item) - } - } - return list, err -} - -// Watch returns a watch.Interface that watches the requested charts. -func (c *FakeCharts) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { - return c.Fake. - InvokesWatch(testing.NewWatchActionWithOptions(chartsResource, c.ns, opts)) - -} - -// Create takes the representation of a chart and creates it. Returns the server's representation of the chart, and an error, if there is any. -func (c *FakeCharts) Create(ctx context.Context, chart *v1beta1.Chart, opts v1.CreateOptions) (result *v1beta1.Chart, err error) { - emptyResult := &v1beta1.Chart{} - obj, err := c.Fake. - Invokes(testing.NewCreateActionWithOptions(chartsResource, c.ns, chart, opts), emptyResult) - - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.Chart), err -} - -// Update takes the representation of a chart and updates it. Returns the server's representation of the chart, and an error, if there is any. -func (c *FakeCharts) Update(ctx context.Context, chart *v1beta1.Chart, opts v1.UpdateOptions) (result *v1beta1.Chart, err error) { - emptyResult := &v1beta1.Chart{} - obj, err := c.Fake. - Invokes(testing.NewUpdateActionWithOptions(chartsResource, c.ns, chart, opts), emptyResult) - - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.Chart), err -} - -// Delete takes name of the chart and deletes it. Returns an error if one occurs. -func (c *FakeCharts) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { - _, err := c.Fake. - Invokes(testing.NewDeleteActionWithOptions(chartsResource, c.ns, name, opts), &v1beta1.Chart{}) - - return err } diff --git a/pkg/client/clientset/typed/helm/v1beta1/fake/fake_helm_client.go b/pkg/client/clientset/typed/helm/v1beta1/fake/fake_helm_client.go index e666ba463d8c..b587e5a81877 100644 --- a/pkg/client/clientset/typed/helm/v1beta1/fake/fake_helm_client.go +++ b/pkg/client/clientset/typed/helm/v1beta1/fake/fake_helm_client.go @@ -29,7 +29,7 @@ type FakeHelmV1beta1 struct { } func (c *FakeHelmV1beta1) Charts(namespace string) v1beta1.ChartInterface { - return &FakeCharts{c, namespace} + return newFakeCharts(c, namespace) } // RESTClient returns a RESTClient that is used to communicate diff --git a/pkg/client/clientset/typed/helm/v1beta1/helm_client.go b/pkg/client/clientset/typed/helm/v1beta1/helm_client.go index e72993bbb8fd..8ebd087d2b09 100644 --- a/pkg/client/clientset/typed/helm/v1beta1/helm_client.go +++ b/pkg/client/clientset/typed/helm/v1beta1/helm_client.go @@ -19,10 +19,10 @@ limitations under the License. package v1beta1 import ( - "net/http" + http "net/http" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/helm/v1beta1" - "github.com/k0sproject/k0s/pkg/client/clientset/scheme" + helmv1beta1 "github.com/k0sproject/k0s/pkg/apis/helm/v1beta1" + scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" rest "k8s.io/client-go/rest" ) @@ -85,10 +85,10 @@ func New(c rest.Interface) *HelmV1beta1Client { } func setConfigDefaults(config *rest.Config) error { - gv := v1beta1.SchemeGroupVersion + gv := helmv1beta1.SchemeGroupVersion config.GroupVersion = &gv config.APIPath = "/apis" - config.NegotiatedSerializer = scheme.Codecs.WithoutConversion() + config.NegotiatedSerializer = rest.CodecFactoryForGeneratedClient(scheme.Scheme, scheme.Codecs).WithoutConversion() if config.UserAgent == "" { config.UserAgent = rest.DefaultKubernetesUserAgent() diff --git a/pkg/client/clientset/typed/k0s/v1beta1/clusterconfig.go b/pkg/client/clientset/typed/k0s/v1beta1/clusterconfig.go index 8471381a31b9..a11467a00d02 100644 --- a/pkg/client/clientset/typed/k0s/v1beta1/clusterconfig.go +++ b/pkg/client/clientset/typed/k0s/v1beta1/clusterconfig.go @@ -19,9 +19,9 @@ limitations under the License. package v1beta1 import ( - "context" + context "context" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1" + k0sv1beta1 "github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1" scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" v1 "k8s.io/apimachinery/pkg/apis/meta/v1" watch "k8s.io/apimachinery/pkg/watch" @@ -36,29 +36,30 @@ type ClusterConfigsGetter interface { // ClusterConfigInterface has methods to work with ClusterConfig resources. type ClusterConfigInterface interface { - Create(ctx context.Context, clusterConfig *v1beta1.ClusterConfig, opts v1.CreateOptions) (*v1beta1.ClusterConfig, error) - Update(ctx context.Context, clusterConfig *v1beta1.ClusterConfig, opts v1.UpdateOptions) (*v1beta1.ClusterConfig, error) + Create(ctx context.Context, clusterConfig *k0sv1beta1.ClusterConfig, opts v1.CreateOptions) (*k0sv1beta1.ClusterConfig, error) + Update(ctx context.Context, clusterConfig *k0sv1beta1.ClusterConfig, opts v1.UpdateOptions) (*k0sv1beta1.ClusterConfig, error) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error - Get(ctx context.Context, name string, opts v1.GetOptions) (*v1beta1.ClusterConfig, error) - List(ctx context.Context, opts v1.ListOptions) (*v1beta1.ClusterConfigList, error) + Get(ctx context.Context, name string, opts v1.GetOptions) (*k0sv1beta1.ClusterConfig, error) + List(ctx context.Context, opts v1.ListOptions) (*k0sv1beta1.ClusterConfigList, error) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) ClusterConfigExpansion } // clusterConfigs implements ClusterConfigInterface type clusterConfigs struct { - *gentype.ClientWithList[*v1beta1.ClusterConfig, *v1beta1.ClusterConfigList] + *gentype.ClientWithList[*k0sv1beta1.ClusterConfig, *k0sv1beta1.ClusterConfigList] } // newClusterConfigs returns a ClusterConfigs func newClusterConfigs(c *K0sV1beta1Client, namespace string) *clusterConfigs { return &clusterConfigs{ - gentype.NewClientWithList[*v1beta1.ClusterConfig, *v1beta1.ClusterConfigList]( + gentype.NewClientWithList[*k0sv1beta1.ClusterConfig, *k0sv1beta1.ClusterConfigList]( "clusterconfigs", c.RESTClient(), scheme.ParameterCodec, namespace, - func() *v1beta1.ClusterConfig { return &v1beta1.ClusterConfig{} }, - func() *v1beta1.ClusterConfigList { return &v1beta1.ClusterConfigList{} }), + func() *k0sv1beta1.ClusterConfig { return &k0sv1beta1.ClusterConfig{} }, + func() *k0sv1beta1.ClusterConfigList { return &k0sv1beta1.ClusterConfigList{} }, + ), } } diff --git a/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_clusterconfig.go b/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_clusterconfig.go index bd66aadc3834..5a84c099e8d6 100644 --- a/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_clusterconfig.go +++ b/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_clusterconfig.go @@ -19,95 +19,34 @@ limitations under the License. package fake import ( - "context" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" - labels "k8s.io/apimachinery/pkg/labels" - watch "k8s.io/apimachinery/pkg/watch" - testing "k8s.io/client-go/testing" + k0sv1beta1 "github.com/k0sproject/k0s/pkg/client/clientset/typed/k0s/v1beta1" + gentype "k8s.io/client-go/gentype" ) -// FakeClusterConfigs implements ClusterConfigInterface -type FakeClusterConfigs struct { +// fakeClusterConfigs implements ClusterConfigInterface +type fakeClusterConfigs struct { + *gentype.FakeClientWithList[*v1beta1.ClusterConfig, *v1beta1.ClusterConfigList] Fake *FakeK0sV1beta1 - ns string } -var clusterconfigsResource = v1beta1.SchemeGroupVersion.WithResource("clusterconfigs") - -var clusterconfigsKind = v1beta1.SchemeGroupVersion.WithKind("ClusterConfig") - -// Get takes name of the clusterConfig, and returns the corresponding clusterConfig object, and an error if there is any. -func (c *FakeClusterConfigs) Get(ctx context.Context, name string, options v1.GetOptions) (result *v1beta1.ClusterConfig, err error) { - emptyResult := &v1beta1.ClusterConfig{} - obj, err := c.Fake. - Invokes(testing.NewGetActionWithOptions(clusterconfigsResource, c.ns, name, options), emptyResult) - - if obj == nil { - return emptyResult, err +func newFakeClusterConfigs(fake *FakeK0sV1beta1, namespace string) k0sv1beta1.ClusterConfigInterface { + return &fakeClusterConfigs{ + gentype.NewFakeClientWithList[*v1beta1.ClusterConfig, *v1beta1.ClusterConfigList]( + fake.Fake, + namespace, + v1beta1.SchemeGroupVersion.WithResource("clusterconfigs"), + v1beta1.SchemeGroupVersion.WithKind("ClusterConfig"), + func() *v1beta1.ClusterConfig { return &v1beta1.ClusterConfig{} }, + func() *v1beta1.ClusterConfigList { return &v1beta1.ClusterConfigList{} }, + func(dst, src *v1beta1.ClusterConfigList) { dst.ListMeta = src.ListMeta }, + func(list *v1beta1.ClusterConfigList) []*v1beta1.ClusterConfig { + return gentype.ToPointerSlice(list.Items) + }, + func(list *v1beta1.ClusterConfigList, items []*v1beta1.ClusterConfig) { + list.Items = gentype.FromPointerSlice(items) + }, + ), + fake, } - return obj.(*v1beta1.ClusterConfig), err -} - -// List takes label and field selectors, and returns the list of ClusterConfigs that match those selectors. -func (c *FakeClusterConfigs) List(ctx context.Context, opts v1.ListOptions) (result *v1beta1.ClusterConfigList, err error) { - emptyResult := &v1beta1.ClusterConfigList{} - obj, err := c.Fake. - Invokes(testing.NewListActionWithOptions(clusterconfigsResource, clusterconfigsKind, c.ns, opts), emptyResult) - - if obj == nil { - return emptyResult, err - } - - label, _, _ := testing.ExtractFromListOptions(opts) - if label == nil { - label = labels.Everything() - } - list := &v1beta1.ClusterConfigList{ListMeta: obj.(*v1beta1.ClusterConfigList).ListMeta} - for _, item := range obj.(*v1beta1.ClusterConfigList).Items { - if label.Matches(labels.Set(item.Labels)) { - list.Items = append(list.Items, item) - } - } - return list, err -} - -// Watch returns a watch.Interface that watches the requested clusterConfigs. -func (c *FakeClusterConfigs) Watch(ctx context.Context, opts v1.ListOptions) (watch.Interface, error) { - return c.Fake. - InvokesWatch(testing.NewWatchActionWithOptions(clusterconfigsResource, c.ns, opts)) - -} - -// Create takes the representation of a clusterConfig and creates it. Returns the server's representation of the clusterConfig, and an error, if there is any. -func (c *FakeClusterConfigs) Create(ctx context.Context, clusterConfig *v1beta1.ClusterConfig, opts v1.CreateOptions) (result *v1beta1.ClusterConfig, err error) { - emptyResult := &v1beta1.ClusterConfig{} - obj, err := c.Fake. - Invokes(testing.NewCreateActionWithOptions(clusterconfigsResource, c.ns, clusterConfig, opts), emptyResult) - - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.ClusterConfig), err -} - -// Update takes the representation of a clusterConfig and updates it. Returns the server's representation of the clusterConfig, and an error, if there is any. -func (c *FakeClusterConfigs) Update(ctx context.Context, clusterConfig *v1beta1.ClusterConfig, opts v1.UpdateOptions) (result *v1beta1.ClusterConfig, err error) { - emptyResult := &v1beta1.ClusterConfig{} - obj, err := c.Fake. - Invokes(testing.NewUpdateActionWithOptions(clusterconfigsResource, c.ns, clusterConfig, opts), emptyResult) - - if obj == nil { - return emptyResult, err - } - return obj.(*v1beta1.ClusterConfig), err -} - -// Delete takes name of the clusterConfig and deletes it. Returns an error if one occurs. -func (c *FakeClusterConfigs) Delete(ctx context.Context, name string, opts v1.DeleteOptions) error { - _, err := c.Fake. - Invokes(testing.NewDeleteActionWithOptions(clusterconfigsResource, c.ns, name, opts), &v1beta1.ClusterConfig{}) - - return err } diff --git a/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_k0s_client.go b/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_k0s_client.go index f4b96fd3d7de..04bdc0810de5 100644 --- a/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_k0s_client.go +++ b/pkg/client/clientset/typed/k0s/v1beta1/fake/fake_k0s_client.go @@ -29,7 +29,7 @@ type FakeK0sV1beta1 struct { } func (c *FakeK0sV1beta1) ClusterConfigs(namespace string) v1beta1.ClusterConfigInterface { - return &FakeClusterConfigs{c, namespace} + return newFakeClusterConfigs(c, namespace) } // RESTClient returns a RESTClient that is used to communicate diff --git a/pkg/client/clientset/typed/k0s/v1beta1/k0s_client.go b/pkg/client/clientset/typed/k0s/v1beta1/k0s_client.go index 82adeeccae1d..cc1f4f84eab7 100644 --- a/pkg/client/clientset/typed/k0s/v1beta1/k0s_client.go +++ b/pkg/client/clientset/typed/k0s/v1beta1/k0s_client.go @@ -19,10 +19,10 @@ limitations under the License. package v1beta1 import ( - "net/http" + http "net/http" - v1beta1 "github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1" - "github.com/k0sproject/k0s/pkg/client/clientset/scheme" + k0sv1beta1 "github.com/k0sproject/k0s/pkg/apis/k0s/v1beta1" + scheme "github.com/k0sproject/k0s/pkg/client/clientset/scheme" rest "k8s.io/client-go/rest" ) @@ -85,10 +85,10 @@ func New(c rest.Interface) *K0sV1beta1Client { } func setConfigDefaults(config *rest.Config) error { - gv := v1beta1.SchemeGroupVersion + gv := k0sv1beta1.SchemeGroupVersion config.GroupVersion = &gv config.APIPath = "/apis" - config.NegotiatedSerializer = scheme.Codecs.WithoutConversion() + config.NegotiatedSerializer = rest.CodecFactoryForGeneratedClient(scheme.Scheme, scheme.Codecs).WithoutConversion() if config.UserAgent == "" { config.UserAgent = rest.DefaultKubernetesUserAgent() diff --git a/pkg/component/controller/workerconfig/reconciler_test.go b/pkg/component/controller/workerconfig/reconciler_test.go index e49b92b2bc23..c74c2e6b7d90 100644 --- a/pkg/component/controller/workerconfig/reconciler_test.go +++ b/pkg/component/controller/workerconfig/reconciler_test.go @@ -377,28 +377,28 @@ func TestReconciler_ResourceGeneration(t *testing.T) { })) expectedConfigMaps := map[string]func(expected *kubeletConfig){ - "worker-config-default-1.31": func(expected *kubeletConfig) { + "worker-config-default-1.32": func(expected *kubeletConfig) { expected.FeatureGates = map[string]bool{"kubelet-feature": true} }, - "worker-config-default-windows-1.31": func(expected *kubeletConfig) { + "worker-config-default-windows-1.32": func(expected *kubeletConfig) { expected.CgroupsPerQOS = ptr.To(false) expected.FeatureGates = map[string]bool{"kubelet-feature": true} expected.KubeletCgroups = "" expected.KubeReservedCgroup = "" }, - "worker-config-profile_XXX-1.31": func(expected *kubeletConfig) { + "worker-config-profile_XXX-1.32": func(expected *kubeletConfig) { expected.Authentication.Anonymous.Enabled = ptr.To(true) expected.FeatureGates = map[string]bool{"kubelet-feature": true} }, - "worker-config-profile_YYY-1.31": func(expected *kubeletConfig) { + "worker-config-profile_YYY-1.32": func(expected *kubeletConfig) { expected.Authentication.Webhook.CacheTTL = metav1.Duration{Duration: 15 * time.Second} expected.FeatureGates = map[string]bool{"kubelet-feature": true} }, - "worker-config-profile_ZZZ-1.31": func(expected *kubeletConfig) { + "worker-config-profile_ZZZ-1.32": func(expected *kubeletConfig) { expected.CgroupsPerQOS = ptr.To(false) expected.FeatureGates = map[string]bool{"kubelet-feature": true} expected.KubeletCgroups = "" diff --git a/pkg/component/worker/config/config_test.go b/pkg/component/worker/config/config_test.go index 945ec34a8057..9f0925f2bd57 100644 --- a/pkg/component/worker/config/config_test.go +++ b/pkg/component/worker/config/config_test.go @@ -144,7 +144,7 @@ var roundtripTests = []roundtripTest{ Konnectivity: Konnectivity{AgentPort: 1337}, }, map[string]string{ - "kubeletConfiguration": `{"syncFrequency":"0s","fileCheckFrequency":"0s","httpCheckFrequency":"0s","authentication":{"x509":{},"webhook":{"cacheTTL":"0s"},"anonymous":{}},"authorization":{"webhook":{"cacheAuthorizedTTL":"0s","cacheUnauthorizedTTL":"0s"}},"streamingConnectionIdleTimeout":"0s","nodeStatusUpdateFrequency":"0s","nodeStatusReportFrequency":"0s","imageMinimumGCAge":"0s","imageMaximumGCAge":"0s","volumeStatsAggPeriod":"0s","cpuManagerReconcilePeriod":"0s","runtimeRequestTimeout":"0s","evictionPressureTransitionPeriod":"0s","memorySwap":{},"logging":{"flushFrequency":0,"verbosity":0,"options":{"text":{"infoBufferSize":"0"},"json":{"infoBufferSize":"0"}}},"shutdownGracePeriod":"0s","shutdownGracePeriodCriticalPods":"0s","containerRuntimeEndpoint":""}`, + "kubeletConfiguration": `{"syncFrequency":"0s","fileCheckFrequency":"0s","httpCheckFrequency":"0s","authentication":{"x509":{},"webhook":{"cacheTTL":"0s"},"anonymous":{}},"authorization":{"webhook":{"cacheAuthorizedTTL":"0s","cacheUnauthorizedTTL":"0s"}},"streamingConnectionIdleTimeout":"0s","nodeStatusUpdateFrequency":"0s","nodeStatusReportFrequency":"0s","imageMinimumGCAge":"0s","imageMaximumGCAge":"0s","volumeStatsAggPeriod":"0s","cpuManagerReconcilePeriod":"0s","runtimeRequestTimeout":"0s","evictionPressureTransitionPeriod":"0s","memorySwap":{},"logging":{"flushFrequency":0,"verbosity":0,"options":{"text":{"infoBufferSize":"0"},"json":{"infoBufferSize":"0"}}},"shutdownGracePeriod":"0s","shutdownGracePeriodCriticalPods":"0s","crashLoopBackOff":{},"containerRuntimeEndpoint":""}`, "konnectivity": `{"agentPort":1337}`, }, }, diff --git a/pkg/constant/constant.go b/pkg/constant/constant.go index 255e3434d1c4..cbec3421f21d 100644 --- a/pkg/constant/constant.go +++ b/pkg/constant/constant.go @@ -71,7 +71,7 @@ const ( KeepalivedUser = "keepalived" // KubernetesMajorMinorVersion defines the current embedded major.minor version info - KubernetesMajorMinorVersion = "1.31" + KubernetesMajorMinorVersion = "1.32" // Indicates if k0s is using a Kubernetes pre-release or a GA version. KubernetesPreRelease = false @@ -86,7 +86,7 @@ const ( KubePauseContainerImage = "registry.k8s.io/pause" KubePauseContainerImageVersion = "3.9" KubeProxyImage = "quay.io/k0sproject/kube-proxy" - KubeProxyImageVersion = "v1.31.5" + KubeProxyImageVersion = "v1.32.1" CoreDNSImage = "quay.io/k0sproject/coredns" CoreDNSImageVersion = "1.12.0" EnvoyProxyImage = "quay.io/k0sproject/envoy-distroless" diff --git a/pkg/constant/constant_test.go b/pkg/constant/constant_test.go index af0b3610e73c..ccef6033866d 100644 --- a/pkg/constant/constant_test.go +++ b/pkg/constant/constant_test.go @@ -22,7 +22,6 @@ import ( "os/exec" "path/filepath" "regexp" - "runtime" "slices" "strings" "testing" @@ -130,29 +129,6 @@ func TestContainerdModuleVersions(t *testing.T) { ) } -func TestRuncModuleVersions(t *testing.T) { - runcVersion := getVersion(t, "runc") - - numMatched := checkPackageModules(t, - func(modulePath string) bool { - return modulePath == "github.com/opencontainers/runc" - }, - func(t *testing.T, pkgPath string, module *packages.Module) bool { - return !assert.Equal(t, "v"+runcVersion, module.Version, - "Module version for package %s doesn't match: %+#v", - pkgPath, module, - ) - }, - ) - - if runtime.GOOS == "linux" { - // The runc dependency is only a thing on Linux. - assert.NotZero(t, numMatched, "Not a single package passed the filter.") - } else { - assert.Zero(t, numMatched, "Expected no packages to pass the filter on Windows.") - } -} - func getVersion(t *testing.T, component string) string { cmd := exec.Command("sh", "./vars.sh", component+"_version") cmd.Dir = filepath.Join("..", "..") diff --git a/static/_crds/k0s/k0s.k0sproject.io_clusterconfigs.yaml b/static/_crds/k0s/k0s.k0sproject.io_clusterconfigs.yaml index 50012c185845..f1a64580cab5 100644 --- a/static/_crds/k0s/k0s.k0sproject.io_clusterconfigs.yaml +++ b/static/_crds/k0s/k0s.k0sproject.io_clusterconfigs.yaml @@ -688,7 +688,7 @@ spec: iptables: description: |- KubeProxyIPTablesConfiguration contains iptables-related kube-proxy configuration - @see https://github.com/kubernetes/kube-proxy/blob/v0.31.5/config/v1alpha1/types.go#L27-L48 + @see https://github.com/kubernetes/kube-proxy/blob/v0.32.1/config/v1alpha1/types.go#L27-L48 properties: localhostNodePorts: type: boolean @@ -705,7 +705,7 @@ spec: ipvs: description: |- KubeProxyIPVSConfiguration contains ipvs-related kube-proxy configuration - @see https://github.com/kubernetes/kube-proxy/blob/v0.31.5/config/v1alpha1/types.go#L52-L78 + @see https://github.com/kubernetes/kube-proxy/blob/v0.32.1/config/v1alpha1/types.go#L52-L78 properties: excludeCIDRs: items: @@ -736,7 +736,7 @@ spec: nftables: description: |- KubeProxyNFTablesConfiguration contains nftables-related kube-proxy configuration - @see https://github.com/kubernetes/kube-proxy/blob/v0.31.5/config/v1alpha1/types.go#L82-L97 + @see https://github.com/kubernetes/kube-proxy/blob/v0.32.1/config/v1alpha1/types.go#L82-L97 properties: masqueradeAll: type: boolean