diff --git a/.golangci.yml b/.golangci.yml index 395f1646e..a2de2bce8 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -1,6 +1,6 @@ # ****************************************************************************** # IBM Cloud Kubernetes Service, 5737-D43 -# (C) Copyright IBM Corp. 2022 All Rights Reserved. +# (C) Copyright IBM Corp. 2022, 2024 All Rights Reserved. # # SPDX-License-Identifier: Apache2.0 # diff --git a/.travis.yml b/.travis.yml index 52717c2de..16e3856e4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,7 +19,7 @@ language: go go: - - 1.22.6 + - 1.23.0 dist: bionic @@ -88,19 +88,19 @@ deploy: skip_cleanup: true on: tags: true - condition: ${TRAVIS_TAG} == v1.31.1-* && ${TRAVIS_JOB_NAME} == Internal - go: 1.22.6 + condition: ${TRAVIS_TAG} == v1.32.0-alpha.1-* && ${TRAVIS_JOB_NAME} == Internal + go: 1.23.0 - provider: script script: BUILD_TAG=${TRAVIS_TAG} make deploy skip_cleanup: true on: tags: true - go: 1.22.6 + go: 1.23.0 condition: ${TRAVIS_TAG} == dev-* && ${TRAVIS_JOB_NAME} == Internal - provider: script script: ./scripts/publishTag.sh skip_cleanup: true on: - branch: release-1.31 - go: 1.22.6 + branch: release-1.32 + go: 1.23.0 condition: ${TRAVIS_COMMIT_MESSAGE} =~ push_build && ${TRAVIS_JOB_NAME} == Internal diff --git a/Makefile b/Makefile index df5b346d1..c4e984f08 100644 --- a/Makefile +++ b/Makefile @@ -45,12 +45,12 @@ YAML_FILES=$(shell find . -type f -name '*.y*ml' -not -path "./build-tools/*" -n INI_FILES=$(shell find . -type f -name '*.ini' -not -path "./build-tools/*") OSS_FILES := go.mod -GOLANGCI_LINT_VERSION := 1.59.1 +GOLANGCI_LINT_VERSION := 1.61.0 GOLANGCI_LINT_EXISTS := $(shell golangci-lint --version 2>/dev/null) HUB_RLS ?= 2.14.2 REGISTRY ?= armada-master -TAG ?= v1.31.1 +TAG ?= v1.32.0-alpha.1 NANCY_VERSION := 1.0.46 diff --git a/README.md b/README.md index 9da51265f..81b0e4f9a 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ infrastructure node and load balancer support to [Kubernetes](https://kubernetes.io/docs/home/) or [OpenShift](https://docs.openshift.com/) clusters running on [IBM Cloud](https://cloud.ibm.com/docs). This repository branch is based on -[Kubernetes version v1.31.1](https://github.com/kubernetes/kubernetes/tree/v1.31.1). +[Kubernetes version v1.32.0-alpha.1](https://github.com/kubernetes/kubernetes/tree/v1.32.0-alpha.1). See [CONTRIBUTING.md](./CONTRIBUTING.md) for contribution guidelines. ## Local Build and Deploy Instructions diff --git a/addons/classic.yml b/addons/classic.yml index 6c32bc195..b10bb6244 100644 --- a/addons/classic.yml +++ b/addons/classic.yml @@ -21,7 +21,7 @@ source: github.ibm.com/alchemy-containers/armada-classic-lb # (Required) - git release or branch name in the source github repo -release: v0.2.5 +release: v0.3.0 # (Required) - source directory in the github repo containing GO files source_dir: pkg/classic diff --git a/addons/vpcctl.yml b/addons/vpcctl.yml index 24ce6c6bc..b02907df1 100644 --- a/addons/vpcctl.yml +++ b/addons/vpcctl.yml @@ -21,7 +21,7 @@ source: github.ibm.com/alchemy-containers/armada-vpc-lb # (Required) - git release or branch name in the source github repo -release: v0.31.1 +release: v0.32.0 # (Required) - source directory in the github repo containing GO files source_dir: pkg/vpcctl diff --git a/docs/examples/ibm-cloud-controller-manager.yaml b/docs/examples/ibm-cloud-controller-manager.yaml index 883e44729..f022a1797 100644 --- a/docs/examples/ibm-cloud-controller-manager.yaml +++ b/docs/examples/ibm-cloud-controller-manager.yaml @@ -70,7 +70,7 @@ spec: terminationGracePeriodSeconds: 90 containers: - name: ibm-cloud-controller-manager - image: registry.ng.bluemix.net/armada-master/ibm-cloud-controller-manager:v1.31.1-1 + image: registry.ng.bluemix.net/armada-master/ibm-cloud-controller-manager:v1.32.0-alpha.1-1 imagePullPolicy: IfNotPresent securityContext: runAsNonRoot: true diff --git a/go.mod b/go.mod index 87e0704cb..1ff24f84d 100644 --- a/go.mod +++ b/go.mod @@ -1,6 +1,6 @@ module cloud.ibm.com/cloud-provider-ibm -go 1.22.6 +go 1.23.0 require ( github.com/IBM/go-sdk-core/v5 v5.17.5 @@ -12,17 +12,17 @@ require ( github.com/spf13/pflag v1.0.5 github.com/stretchr/testify v1.9.0 gopkg.in/gcfg.v1 v1.2.3 - k8s.io/api v0.31.1 - k8s.io/apimachinery v0.31.1 - k8s.io/client-go v0.31.1 - k8s.io/cloud-provider v0.31.1 - k8s.io/component-base v0.31.1 - k8s.io/component-helpers v0.31.1 + k8s.io/api v0.32.0-alpha.1 + k8s.io/apimachinery v0.32.0-alpha.1 + k8s.io/client-go v0.32.0-alpha.1 + k8s.io/cloud-provider v0.32.0-alpha.1 + k8s.io/component-base v0.32.0-alpha.1 + k8s.io/component-helpers v0.32.0-alpha.1 k8s.io/klog/v2 v2.130.1 ) require ( - github.com/Azure/go-ansiterm v0.0.0-20210617225240-d185dfc1b5a1 // indirect + github.com/Azure/go-ansiterm v0.0.0-20230124172434-306776ec8161 // indirect github.com/NYTimes/gziphandler v1.1.1 // indirect github.com/antlr4-go/antlr/v4 v4.13.0 // indirect github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect @@ -40,9 +40,9 @@ require ( github.com/go-logr/logr v1.4.2 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-openapi/errors v0.22.0 // indirect - github.com/go-openapi/jsonpointer v0.19.6 // indirect + github.com/go-openapi/jsonpointer v0.21.0 // indirect github.com/go-openapi/jsonreference v0.20.2 // indirect - github.com/go-openapi/swag v0.22.4 // indirect + github.com/go-openapi/swag v0.23.0 // indirect github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect github.com/go-playground/validator/v10 v10.19.0 // indirect @@ -58,7 +58,6 @@ require ( github.com/grpc-ecosystem/grpc-gateway/v2 v2.20.0 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect github.com/hashicorp/go-retryablehttp v0.7.7 // indirect - github.com/imdario/mergo v0.3.6 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect github.com/josharian/intern v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect @@ -78,9 +77,9 @@ require ( github.com/prometheus/procfs v0.15.1 // indirect github.com/stoewer/go-strcase v1.2.0 // indirect github.com/x448/float16 v0.8.4 // indirect - go.etcd.io/etcd/api/v3 v3.5.14 // indirect - go.etcd.io/etcd/client/pkg/v3 v3.5.14 // indirect - go.etcd.io/etcd/client/v3 v3.5.14 // indirect + go.etcd.io/etcd/api/v3 v3.5.16 // indirect + go.etcd.io/etcd/client/pkg/v3 v3.5.16 // indirect + go.etcd.io/etcd/client/v3 v3.5.16 // indirect go.mongodb.org/mongo-driver v1.14.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.53.0 // indirect @@ -92,15 +91,15 @@ require ( go.opentelemetry.io/otel/trace v1.28.0 // indirect go.opentelemetry.io/proto/otlp v1.3.1 // indirect go.uber.org/multierr v1.11.0 // indirect - go.uber.org/zap v1.26.0 // indirect - golang.org/x/crypto v0.24.0 // indirect - golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc // indirect - golang.org/x/net v0.26.0 // indirect + go.uber.org/zap v1.27.0 // indirect + golang.org/x/crypto v0.26.0 // indirect + golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 // indirect + golang.org/x/net v0.28.0 // indirect golang.org/x/oauth2 v0.21.0 // indirect - golang.org/x/sync v0.7.0 // indirect - golang.org/x/sys v0.21.0 // indirect - golang.org/x/term v0.21.0 // indirect - golang.org/x/text v0.16.0 // indirect + golang.org/x/sync v0.8.0 // indirect + golang.org/x/sys v0.23.0 // indirect + golang.org/x/term v0.23.0 // indirect + golang.org/x/text v0.17.0 // indirect golang.org/x/time v0.3.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 // indirect @@ -112,10 +111,10 @@ require ( gopkg.in/warnings.v0 v0.1.2 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect - k8s.io/apiserver v0.31.1 // indirect - k8s.io/controller-manager v0.31.1 // indirect - k8s.io/kms v0.31.1 // indirect - k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect + k8s.io/apiserver v0.32.0-alpha.1 // indirect + k8s.io/controller-manager v0.32.0-alpha.1 // indirect + k8s.io/kms v0.32.0-alpha.1 // indirect + k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 // indirect k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 // indirect sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 // indirect sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect diff --git a/go.sum b/go.sum index 3e5268ad2..c8d1f3b57 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,5 @@ -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/IBM/go-sdk-core/v5 v5.17.5 h1:AjGC7xNee5tgDIjndekBDW5AbypdERHSgib3EZ1KNsA= github.com/IBM/go-sdk-core/v5 v5.17.5/go.mod h1:KsAAI7eStAWwQa4F96MLy+whYSh39JzNjklZRbN/8ns= github.com/IBM/platform-services-go-sdk v0.69.1 h1:Wb8BYVpsPIppWbOQCgF7ytm+BbSOXdWWCf9zcZ6xGA4= @@ -55,15 +55,16 @@ github.com/go-logr/zapr v1.3.0 h1:XGdV8XW8zdwFiwOA2Dryh1gj2KRQyOOoNmBy4EplIcQ= github.com/go-logr/zapr v1.3.0/go.mod h1:YKepepNBd1u/oyhd/yQmtjVXmm9uML4IXUgMOwR8/Gg= github.com/go-openapi/errors v0.22.0 h1:c4xY/OLxUBSTiepAg3j/MHuAv5mJhnf53LLMWFB+u/w= github.com/go-openapi/errors v0.22.0/go.mod h1:J3DmZScxCDufmIMsdOuDHxJbdOGC0xtUynjIx092vXE= -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/strfmt v0.23.0 h1:nlUS6BCqcnAk0pyhi9Y+kdDVZdZMHfEKQiS4HaMgO/c= github.com/go-openapi/strfmt v0.23.0/go.mod h1:NrtIpfKtWIygRkKVsxh7XQMDQW5HKQl6S5ik2elW+K4= github.com/go-openapi/swag v0.22.3/go.mod h1:UzaqsxGiab7freDnrUUra0MwWfN/q7tE4j+VcZ0yl14= -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= @@ -95,8 +96,8 @@ github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeN github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= 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-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-20240727154555-813a5fbdbec8 h1:FKHo8hFI3A+7w0aUQuYXQ+6EN5stWmeY/AZqtM8xk9k= +github.com/google/pprof v0.0.0-20240727154555-813a5fbdbec8/go.mod h1:K1liHPHnj73Fdn/EKuT8nrFqBihUSKXoLYU0BuatOYo= github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/gorilla/websocket v1.5.0 h1:PPwGk2jz7EePpoHN/+ClbZu8SPxiqlu12wZP/3sWmnc= @@ -115,8 +116,6 @@ github.com/hashicorp/go-hclog v1.6.3 h1:Qr2kF+eVWjTiYmU7Y31tYlP1h0q/X3Nl3tPGdaB1 github.com/hashicorp/go-hclog v1.6.3/go.mod h1:W4Qnvbt70Wk/zYJryRzDRU/4r0kIg0PVHBcfoyhpF5M= github.com/hashicorp/go-retryablehttp v0.7.7 h1:C8hUCYzor8PIfXHa4UrZkU4VvK8o9ISHxT2Q8+VepXU= github.com/hashicorp/go-retryablehttp v0.7.7/go.mod h1:pkQpWZeYWskR+D1tR2O5OcBFOxfA7DoAO6xtkuQnHTk= -github.com/imdario/mergo v0.3.6 h1:xTNEAn+kxVO7dTZGu0CegyqKZmoWFI0rF8UxjlB2d28= -github.com/imdario/mergo v0.3.6/go.mod h1:2EnlNZ0deacrJVfApfmtdGgDfMuh/nq6Ok1EcJh5FfA= github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8= github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw= github.com/jonboulle/clockwork v0.2.2 h1:UOGuzwb1PwsrDAObMuhUnj0p5ULPj8V/xJ7Kx9qUBdQ= @@ -207,22 +206,22 @@ github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 h1:eY9dn8+vbi4tKz5 github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU= github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.etcd.io/bbolt v1.3.9 h1:8x7aARPEXiXbHmtUwAIv7eV2fQFHrLLavdiJ3uzJXoI= -go.etcd.io/bbolt v1.3.9/go.mod h1:zaO32+Ti0PK1ivdPtgMESzuzL2VPoIG1PCQNvOdo/dE= -go.etcd.io/etcd/api/v3 v3.5.14 h1:vHObSCxyB9zlF60w7qzAdTcGaglbJOpSj1Xj9+WGxq0= -go.etcd.io/etcd/api/v3 v3.5.14/go.mod h1:BmtWcRlQvwa1h3G2jvKYwIQy4PkHlDej5t7uLMUdJUU= -go.etcd.io/etcd/client/pkg/v3 v3.5.14 h1:SaNH6Y+rVEdxfpA2Jr5wkEvN6Zykme5+YnbCkxvuWxQ= -go.etcd.io/etcd/client/pkg/v3 v3.5.14/go.mod h1:8uMgAokyG1czCtIdsq+AGyYQMvpIKnSvPjFMunkgeZI= -go.etcd.io/etcd/client/v2 v2.305.13 h1:RWfV1SX5jTU0lbCvpVQe3iPQeAHETWdOTb6pxhd77C8= -go.etcd.io/etcd/client/v2 v2.305.13/go.mod h1:iQnL7fepbiomdXMb3om1rHq96htNNGv2sJkEcZGDRRg= -go.etcd.io/etcd/client/v3 v3.5.14 h1:CWfRs4FDaDoSz81giL7zPpZH2Z35tbOrAJkkjMqOupg= -go.etcd.io/etcd/client/v3 v3.5.14/go.mod h1:k3XfdV/VIHy/97rqWjoUzrj9tk7GgJGH9J8L4dNXmAk= -go.etcd.io/etcd/pkg/v3 v3.5.13 h1:st9bDWNsKkBNpP4PR1MvM/9NqUPfvYZx/YXegsYEH8M= -go.etcd.io/etcd/pkg/v3 v3.5.13/go.mod h1:N+4PLrp7agI/Viy+dUYpX7iRtSPvKq+w8Y14d1vX+m0= -go.etcd.io/etcd/raft/v3 v3.5.13 h1:7r/NKAOups1YnKcfro2RvGGo2PTuizF/xh26Z2CTAzA= -go.etcd.io/etcd/raft/v3 v3.5.13/go.mod h1:uUFibGLn2Ksm2URMxN1fICGhk8Wu96EfDQyuLhAcAmw= -go.etcd.io/etcd/server/v3 v3.5.13 h1:V6KG+yMfMSqWt+lGnhFpP5z5dRUj1BDRJ5k1fQ9DFok= -go.etcd.io/etcd/server/v3 v3.5.13/go.mod h1:K/8nbsGupHqmr5MkgaZpLlH1QdX1pcNQLAkODy44XcQ= +go.etcd.io/bbolt v1.3.11 h1:yGEzV1wPz2yVCLsD8ZAiGHhHVlczyC9d1rP43/VCRJ0= +go.etcd.io/bbolt v1.3.11/go.mod h1:dksAq7YMXoljX0xu6VF5DMZGbhYYoLUalEiSySYAS4I= +go.etcd.io/etcd/api/v3 v3.5.16 h1:WvmyJVbjWqK4R1E+B12RRHz3bRGy9XVfh++MgbN+6n0= +go.etcd.io/etcd/api/v3 v3.5.16/go.mod h1:1P4SlIP/VwkDmGo3OlOD7faPeP8KDIFhqvciH5EfN28= +go.etcd.io/etcd/client/pkg/v3 v3.5.16 h1:ZgY48uH6UvB+/7R9Yf4x574uCO3jIx0TRDyetSfId3Q= +go.etcd.io/etcd/client/pkg/v3 v3.5.16/go.mod h1:V8acl8pcEK0Y2g19YlOV9m9ssUe6MgiDSobSoaBAM0E= +go.etcd.io/etcd/client/v2 v2.305.16 h1:kQrn9o5czVNaukf2A2At43cE9ZtWauOtf9vRZuiKXow= +go.etcd.io/etcd/client/v2 v2.305.16/go.mod h1:h9YxWCzcdvZENbfzBTFCnoNumr2ax3F19sKMqHFmXHE= +go.etcd.io/etcd/client/v3 v3.5.16 h1:sSmVYOAHeC9doqi0gv7v86oY/BTld0SEFGaxsU9eRhE= +go.etcd.io/etcd/client/v3 v3.5.16/go.mod h1:X+rExSGkyqxvu276cr2OwPLBaeqFu1cIl4vmRjAD/50= +go.etcd.io/etcd/pkg/v3 v3.5.16 h1:cnavs5WSPWeK4TYwPYfmcr3Joz9BH+TZ6qoUtz6/+mc= +go.etcd.io/etcd/pkg/v3 v3.5.16/go.mod h1:+lutCZHG5MBBFI/U4eYT5yL7sJfnexsoM20Y0t2uNuY= +go.etcd.io/etcd/raft/v3 v3.5.16 h1:zBXA3ZUpYs1AwiLGPafYAKKl/CORn/uaxYDwlNwndAk= +go.etcd.io/etcd/raft/v3 v3.5.16/go.mod h1:P4UP14AxofMJ/54boWilabqqWoW9eLodl6I5GdGzazI= +go.etcd.io/etcd/server/v3 v3.5.16 h1:d0/SAdJ3vVsZvF8IFVb1k8zqMZ+heGcNfft71ul9GWE= +go.etcd.io/etcd/server/v3 v3.5.16/go.mod h1:ynhyZZpdDp1Gq49jkUg5mfkDWZwXnn3eIqCqtJnrD/s= go.mongodb.org/mongo-driver v1.14.0 h1:P98w8egYRjYe3XDjxhYJagTokP/H6HzlsnojRgZRd80= go.mongodb.org/mongo-driver v1.14.0/go.mod h1:Vzb0Mk/pa7e6cWw85R4F/endUC3u0U9jGcNU603k65c= go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.53.0 h1:9G6E0TXzGFVfTnawRzrPl83iHOAV7L8NJiR8RSGYV1g= @@ -247,56 +246,56 @@ 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= go.uber.org/multierr v1.11.0/go.mod h1:20+QtiLqy0Nd6FdQB9TLXag12DsQkrbs3htMFfDN80Y= -go.uber.org/zap v1.26.0 h1:sI7k6L95XOKS281NhVKOFCUNIvv9e0w4BF8N3u+tCRo= -go.uber.org/zap v1.26.0/go.mod h1:dtElttAiwGvoJ/vj4IwHBS/gXsEu/pZ50mUIRWuG0so= +go.uber.org/zap v1.27.0 h1:aJMhYGrd5QSmlpLMr2MftRKl7t8J8PTZPA732ud/XR8= +go.uber.org/zap v1.27.0/go.mod h1:GB2qFLM7cTU87MWRP2mPIjqfIDnGu+VIO4V/SdhGo2E= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= -golang.org/x/crypto v0.24.0 h1:mnl8DM0o513X8fdIkmyFE/5hTYxbwYOjDS/+rK6qpRI= -golang.org/x/crypto v0.24.0/go.mod h1:Z1PMYSOR5nyMcyAVAIQSKCDwalqy85Aqn1x3Ws4L5DM= -golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc h1:mCRnTeVUjcrhlRmO0VK8a6k6Rrf6TF9htwo2pJVSjIU= -golang.org/x/exp v0.0.0-20230515195305-f3d0a9c9a5cc/go.mod h1:V1LtkGg67GoY2N1AnLN78QLrzxkLyJw7RJb1gzOOz9w= +golang.org/x/crypto v0.26.0 h1:RrRspgV4mU+YwB4FYnuBoKsUapNIL5cohGAmSH3azsw= +golang.org/x/crypto v0.26.0/go.mod h1:GY7jblb9wI+FOo5y8/S2oY4zWP07AkOJ4+jxCqdqn54= +golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56 h1:2dVuKD2vS7b0QIHQbpyTISPd0LeHDbnYEryqj5Q1ug8= +golang.org/x/exp v0.0.0-20240719175910-8a7402abbf56/go.mod h1:M4RDyNAINzryxdtnbRXRL/OHtkFuWGRjvuhBJpk2IlY= golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/mod v0.3.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU= -golang.org/x/net v0.26.0 h1:soB7SVo0PWrY4vPW/+ay0jKDNScG2X9wFeYlXIvJsOQ= -golang.org/x/net v0.26.0/go.mod h1:5YKkiSynbBIh3p6iOc/vibscux0x38BZDkn8sCUPxHE= +golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE= +golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg= golang.org/x/oauth2 v0.21.0 h1:tsimM75w1tF/uws5rbeHzIWxEqElMehnc+iW793zsZs= golang.org/x/oauth2 v0.21.0/go.mod h1:XYTD2NtWslqkgxebSiOHnXEap4TF09sJSc7H1sXbhtI= golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.7.0 h1:YsImfSBoP9QPYL0xyKJPq0gcaJdG3rInoqxTWbfQu9M= -golang.org/x/sync v0.7.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= +golang.org/x/sync v0.8.0 h1:3NFvSEYkUoMifnESzZl15y791HH1qU2xm6eCJU5ZPXQ= +golang.org/x/sync v0.8.0/go.mod h1:Czt+wKu1gCyEFDUtn0jG5QVvpJ6rzVqr5aXyt9drQfk= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210616094352-59db8d763f22/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.21.0 h1:rF+pYz3DAGSQAxAu1CbC7catZg4ebC4UIeIhKxBZvws= -golang.org/x/sys v0.21.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/term v0.21.0 h1:WVXCp+/EBEHOj53Rvu+7KiT/iElMrO8ACK16SMZ3jaA= -golang.org/x/term v0.21.0/go.mod h1:ooXLefLobQVslOqselCNF4SxFAaoS6KujMbsGzSDmX0= +golang.org/x/sys v0.23.0 h1:YfKFowiIMvtgl1UERQoTPPToxltDeZfbj4H7dVUCwmM= +golang.org/x/sys v0.23.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/term v0.23.0 h1:F6D4vR+EHoL9/sWAWgAR1H2DcHr4PareCbAaCo1RpuU= +golang.org/x/term v0.23.0/go.mod h1:DgV24QBUrK6jhZXl+20l6UWznPlwAHm1Q1mGHtydmSk= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= -golang.org/x/text v0.16.0 h1:a94ExnEXNtEwYLGJSIUxnWoxoRz/ZcCsV63ROupILh4= -golang.org/x/text v0.16.0/go.mod h1:GhwF1Be+LQoKShO3cGOHzqOgRrGaYc9AvblQOmPVHnI= +golang.org/x/text v0.17.0 h1:XtiM5bkSOt+ewxlOE/aE/AKEHibwj/6gvWMl9Rsh0Qc= +golang.org/x/text v0.17.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY= golang.org/x/time v0.3.0 h1:rg5rLMjNzMS1RkNLzCG38eapWhnYLFYXDXj2gOlr8j4= golang.org/x/time v0.3.0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA= -golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg= -golang.org/x/tools v0.21.1-0.20240508182429-e35e4ccd0d2d/go.mod h1:aiJjzUbINMkxbQROHiO6hDPo2LHcIPhhQsa9DLh0yGk= +golang.org/x/tools v0.24.0 h1:J1shsA93PJUEVaUSaay7UXAyE8aimq3GW0pjlolpa24= +golang.org/x/tools v0.24.0/go.mod h1:YhNqVBIfWHdzvTLs0d8LCuMhkKUgSUKldakyV7W/WDQ= golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= 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/genproto v0.0.0-20230822172742-b8732ec3820d h1:VBu5YqKPv6XiJ199exd8Br+Aetz+o08F+PLMnwJQHAY= -google.golang.org/genproto v0.0.0-20230822172742-b8732ec3820d/go.mod h1:yZTlhN0tQnXo3h00fuXNCxJdLdIdnVFVBaRJ5LWBbw4= +google.golang.org/genproto v0.0.0-20240123012728-ef4313101c80 h1:KAeGQVN3M9nD0/bQXnr/ClcEMJ968gUXJQ9pwfSynuQ= +google.golang.org/genproto v0.0.0-20240123012728-ef4313101c80/go.mod h1:cc8bqMqtv9gMOr0zHg2Vzff5ULhhL2IXP4sbcn32Dro= google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157 h1:7whR9kGa5LUwFtpLm2ArCEejtnxlGeLbAyjFY8sGNFw= google.golang.org/genproto/googleapis/api v0.0.0-20240528184218-531527333157/go.mod h1:99sLkeliLXfdj2J75X3Ho+rrVCaJze0uwN7zDDkjPVU= google.golang.org/genproto/googleapis/rpc v0.0.0-20240701130421-f6361c86f094 h1:BwIjyKYGsK9dMCBOorzRri8MQwmi7mT9rGHsCEinZkA= @@ -327,28 +326,28 @@ 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.1 h1:Xe1hX/fPW3PXYYv8BlozYqw63ytA92snr96zMW9gWTU= -k8s.io/api v0.31.1/go.mod h1:sbN1g6eY6XVLeqNsZGLnI5FwVseTrZX7Fv3O26rhAaI= -k8s.io/apimachinery v0.31.1 h1:mhcUBbj7KUjaVhyXILglcVjuS4nYXiwC+KKFBgIVy7U= -k8s.io/apimachinery v0.31.1/go.mod h1:rsPdaZJfTfLsNJSQzNHQvYoTmxhoOEofxtOsF3rtsMo= -k8s.io/apiserver v0.31.1 h1:Sars5ejQDCRBY5f7R3QFHdqN3s61nhkpaX8/k1iEw1c= -k8s.io/apiserver v0.31.1/go.mod h1:lzDhpeToamVZJmmFlaLwdYZwd7zB+WYRYIboqA1kGxM= -k8s.io/client-go v0.31.1 h1:f0ugtWSbWpxHR7sjVpQwuvw9a3ZKLXX0u0itkFXufb0= -k8s.io/client-go v0.31.1/go.mod h1:sKI8871MJN2OyeqRlmA4W4KM9KBdBUpDLu/43eGemCg= -k8s.io/cloud-provider v0.31.1 h1:40b6AgDizwm5eWratZbqubTHMob25VWr6NX2Ei5TwZA= -k8s.io/cloud-provider v0.31.1/go.mod h1:xAdkE7fdZdu9rKLuOZUMBfagu7bM+bas3iPux/2nLGg= -k8s.io/component-base v0.31.1 h1:UpOepcrX3rQ3ab5NB6g5iP0tvsgJWzxTyAo20sgYSy8= -k8s.io/component-base v0.31.1/go.mod h1:WGeaw7t/kTsqpVTaCoVEtillbqAhF2/JgvO0LDOMa0w= -k8s.io/component-helpers v0.31.1 h1:5hZUf3747atdgtR3gPntrG35rC2CkK7rYq2KUraz6Os= -k8s.io/component-helpers v0.31.1/go.mod h1:ye0Gi8KzFNTfpIuzvVDtxJQMP/0Owkukf1vGf22Hl6U= -k8s.io/controller-manager v0.31.1 h1:bwiy8y//EG5lJL2mdbOvZWrOgw2EXXIvwp95VYgoIis= -k8s.io/controller-manager v0.31.1/go.mod h1:O440MSE6EI1AEVhB2Fc8FYqv6r8BHrSXjm5aj3886No= +k8s.io/api v0.32.0-alpha.1 h1:IouDRwpvuSiAJYsnCd5ygwZEJ6fXjTCrv1ucDjANQxE= +k8s.io/api v0.32.0-alpha.1/go.mod h1:dsKOyESAQh5qN2gci8jE1kwo5wqnf1lgCZgj39TFVx4= +k8s.io/apimachinery v0.32.0-alpha.1 h1:tDR19SzOmCOKVWtNhFbUtz1Axrt/1JJu7MRFiaEEhF4= +k8s.io/apimachinery v0.32.0-alpha.1/go.mod h1:5rKPDwwN9qm//xASFCZ83nyYEanHxxhc7pZ8AC4lukY= +k8s.io/apiserver v0.32.0-alpha.1 h1:kDhkgEZfBJJ/eUU7t+rKVnK0pefFzrBtgP5NmvYT/nc= +k8s.io/apiserver v0.32.0-alpha.1/go.mod h1:6hIV0h8oudByTWLG3+SrwdnbED3dmIulHAqhkK88aUc= +k8s.io/client-go v0.32.0-alpha.1 h1:gxkLX3+Hs+srzwRdJ/ftK7OwoOHJgZ8AXipPYrXpVs4= +k8s.io/client-go v0.32.0-alpha.1/go.mod h1:WEgsM/Ayjy21IdfXaOosEpnl3CeMppYOiB7dOESK+zo= +k8s.io/cloud-provider v0.32.0-alpha.1 h1:a5PyA7VbJldRMuuDimxG6MYr37XB8ITTGMjbDQ/92Zc= +k8s.io/cloud-provider v0.32.0-alpha.1/go.mod h1:25P4b1XRN5uy8FRmzdA+jj5V1B0ebGJ3NUpKjSpjJXU= +k8s.io/component-base v0.32.0-alpha.1 h1:6OazM8bKt6yxuKUxB+zCRQQiKEXf+3JaHnilE37y3yU= +k8s.io/component-base v0.32.0-alpha.1/go.mod h1:bftd507toxdzXbnudsf/aPOuQqNR13/3FOeBTA2B0pY= +k8s.io/component-helpers v0.32.0-alpha.1 h1:6nmlwG5Xipkfcys5bMm0PSxXxqARADbZPZ6IMujDEes= +k8s.io/component-helpers v0.32.0-alpha.1/go.mod h1:HP0PuRiz3yutSRMn+ml/UTd79nu76Kz26rl1vtNhkYo= +k8s.io/controller-manager v0.32.0-alpha.1 h1:ebduDIktOkjlwXggBasgpzh60eigosGrwZ/w4Ubqqbg= +k8s.io/controller-manager v0.32.0-alpha.1/go.mod h1:7IS/OeAAWi5fPWPDkH7sV+9vhorWANt9sxEqsjGpk3Q= 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.1 h1:cGLyV3cIwb0ovpP/jtyIe2mEuQ/MkbhmeBF2IYCA9Io= -k8s.io/kms v0.31.1/go.mod h1:OZKwl1fan3n3N5FFxnW5C4V3ygrah/3YXeJWS3O6+94= -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/kms v0.32.0-alpha.1 h1:4zmxpEHryoCCvPU8+U+32vSKrUt45xr2w4OvrYzLyYo= +k8s.io/kms v0.32.0-alpha.1/go.mod h1:97uB2kCPwrsgcs4TJ0D89vbQb9WOrHwBLkEzDS+kVjw= +k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2 h1:GKE9U8BH16uynoxQii0auTjmmmuZ3O0LFMN6S0lPPhI= +k8s.io/kube-openapi v0.0.0-20240827152857-f7e401e7b4c2/go.mod h1:coRQXBK9NxO98XUv3ZD6AK3xzHCxV6+b7lrquKwaKzA= k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.30.3 h1:2770sDpzrjjsAtVhSeUFseziht227YAWYHLGNM8QPwY= diff --git a/ibm/ibm.go b/ibm/ibm.go index 2ee499000..07bcf1935 100644 --- a/ibm/ibm.go +++ b/ibm/ibm.go @@ -293,7 +293,7 @@ func NewCloud(config io.Reader) (cloudprovider.Interface, error) { _, err := c.InitCloudVpc(shouldPrivateEndpointBeEnabled()) if err != nil { errString := fmt.Sprintf("Failed initializing VPC: %v", err) - klog.Warningf(errString) + klog.Warning(errString) } } else { // Initialize the classic logic diff --git a/ibm/ibm_metadata_service.go b/ibm/ibm_metadata_service.go index 60cb3fbbe..61fde5842 100644 --- a/ibm/ibm_metadata_service.go +++ b/ibm/ibm_metadata_service.go @@ -1,6 +1,6 @@ /******************************************************************************* * IBM Cloud Kubernetes Service, 5737-D43 -* (C) Copyright IBM Corp. 2019, 2022, 2023, 2024 All Rights Reserved. +* (C) Copyright IBM Corp. 2019, 2024 All Rights Reserved. * * SPDX-License-Identifier: Apache2.0 * @@ -202,7 +202,7 @@ func (ms *MetadataService) GetNodeMetadata(name string, applyNetworkUnavailable return newNode, nil } else if isProviderVpc(ms.provider.ProviderType) { // labels were not set; if VPC we can try to call api for values - klog.Infof("Retrieving information for node=" + name + " from VPC") + klog.Infof("Retrieving information for node=%s from VPC", name) // create vpcClient if we haven't already if ms.vpcClient == nil { diff --git a/ibm/ibm_version.go b/ibm/ibm_version.go index b967e2bc9..27ce8c2ed 100644 --- a/ibm/ibm_version.go +++ b/ibm/ibm_version.go @@ -31,7 +31,7 @@ var ( ) // Version is overwritten during builds. -var Version = "v1.31.1" +var Version = "v1.32.0-alpha.1" func PrintVersionAndExitIfRequested() { if versionFlag { diff --git a/ibm/ibm_vpc_client.go b/ibm/ibm_vpc_client.go index e012cb5ef..a876f238e 100644 --- a/ibm/ibm_vpc_client.go +++ b/ibm/ibm_vpc_client.go @@ -1,6 +1,6 @@ /******************************************************************************* * IBM Cloud Kubernetes Service, 5737-D43 -* (C) Copyright IBM Corp. 2021, 2023 All Rights Reserved. +* (C) Copyright IBM Corp. 2021, 2024 All Rights Reserved. * * SPDX-License-Identifier: Apache2.0 * @@ -143,19 +143,19 @@ func (vpc *vpcClient) populateNodeMetadata(nodeName string, node *NodeMetadata) // Found the instance if len(instances.Instances) == 1 { node.InternalIP = *instances.Instances[0].PrimaryNetworkInterface.PrimaryIP.Address - klog.Infof("***** InternalIP " + node.InternalIP) + klog.Infof("***** InternalIP %s", node.InternalIP) node.WorkerID = *instances.Instances[0].ID - klog.Infof("***** WorkerId " + node.WorkerID) + klog.Infof("***** WorkerId %s", node.WorkerID) node.InstanceType = *instances.Instances[0].Profile.Name - klog.Infof("***** InstanceType " + node.InstanceType) + klog.Infof("***** InstanceType %s", node.InstanceType) node.FailureDomain = *instances.Instances[0].Zone.Name - klog.Infof("***** FailureDomain " + node.FailureDomain) + klog.Infof("***** FailureDomain %s", node.FailureDomain) node.Region = vpc.provider.Region - klog.Infof("***** Region " + node.Region) + klog.Infof("***** Region %s", node.Region) // Success return nil diff --git a/ibm/ibm_vpc_cloud.go b/ibm/ibm_vpc_cloud.go index 18b9a632a..7f2abbfc3 100644 --- a/ibm/ibm_vpc_cloud.go +++ b/ibm/ibm_vpc_cloud.go @@ -21,6 +21,7 @@ package ibm import ( "context" + "errors" "fmt" "os" "strings" @@ -29,10 +30,10 @@ import ( "github.com/fsnotify/fsnotify" - "cloud.ibm.com/cloud-provider-ibm/pkg/klog" "cloud.ibm.com/cloud-provider-ibm/pkg/vpcctl" v1 "k8s.io/api/core/v1" "k8s.io/client-go/tools/record" + "k8s.io/klog/v2" ) // envVarPublicEndPoint is an environmental variable used to select public service endpoint @@ -138,19 +139,19 @@ func (c *Cloud) VpcEnsureLoadBalancer(ctx context.Context, clusterName string, s select { case <-syncChan: klog.Infof("- nodes now available for EnsureLoadBalancer, return so that Kubernetes will retry") - return nil, fmt.Errorf(errString) + return nil, errors.New(errString) case <-time.After(time.Minute): // Display message every min klog.Warningf("- no available nodes for load balancer (%d out %d)", i+1, maxWait) continue } } } - return nil, fmt.Errorf(errString) + return nil, errors.New(errString) } vpc, err := c.InitCloudVpc(shouldPrivateEndpointBeEnabled()) if err != nil { errString := fmt.Sprintf("Failed initializing VPC: %v", err) - klog.Errorf(errString) + klog.Error(errString) return nil, c.Recorder.VpcLoadBalancerServiceWarningEvent(service, CreatingCloudLoadBalancerFailed, lbName, errString) } // Attempt to create/update the VPC load balancer for this service @@ -165,7 +166,7 @@ func (c *Cloud) VpcEnsureLoadBalancerDeleted(ctx context.Context, clusterName st vpc, err := c.InitCloudVpc(shouldPrivateEndpointBeEnabled()) if err != nil { errString := fmt.Sprintf("Failed initializing VPC: %v", err) - klog.Errorf(errString) + klog.Error(errString) return c.Recorder.VpcLoadBalancerServiceWarningEvent(service, DeletingCloudLoadBalancerFailed, lbName, errString) } // Attempt to delete the VPC load balancer @@ -180,7 +181,7 @@ func (c *Cloud) VpcGetLoadBalancer(ctx context.Context, clusterName string, serv vpc, err := c.InitCloudVpc(shouldPrivateEndpointBeEnabled()) if err != nil { errString := fmt.Sprintf("Failed initializing VPC: %v", err) - klog.Errorf(errString) + klog.Error(errString) return nil, false, c.Recorder.VpcLoadBalancerServiceWarningEvent(service, GettingCloudLoadBalancerFailed, lbName, errString) } // Retrieve the status of the VPC load balancer @@ -254,8 +255,8 @@ func (c *Cloud) VpcUpdateLoadBalancer(ctx context.Context, clusterName string, s klog.Infof("UpdateLoadBalancer(lbName:%v, Service:{%v}, NodeCount:%v)", lbName, c.vpcGetServiceDetails(service), len(nodes)) if len(nodes) == 0 { errString := "There are no available nodes for LoadBalancer" - klog.Errorf(errString) - return fmt.Errorf(errString) + klog.Error(errString) + return errors.New(errString) } // There could be one or more EnsureLoadBalancer threads blocked waiting for the cluster nodes to become available. // Closing the sync channel will release all of the blocked EnsureLoadBalancer threads. @@ -275,7 +276,7 @@ func (c *Cloud) VpcUpdateLoadBalancer(ctx context.Context, clusterName string, s vpc, err := c.InitCloudVpc(shouldPrivateEndpointBeEnabled()) if err != nil { errString := fmt.Sprintf("Failed initializing VPC: %v", err) - klog.Errorf(errString) + klog.Error(errString) return c.Recorder.VpcLoadBalancerServiceWarningEvent(service, UpdatingCloudLoadBalancerFailed, lbName, errString) } // Update the VPC load balancer diff --git a/kube-update.sh b/kube-update.sh index 9a55940c8..059580378 100755 --- a/kube-update.sh +++ b/kube-update.sh @@ -42,8 +42,13 @@ if [[ -z "${K8S_UPDATE_VERSION}" ]]; then if [[ "${MAJOR_MINOR}" != "${BRANCH_MAJOR_MINOR}" ]]; then MAJOR_MINOR=${BRANCH_MAJOR_MINOR} fi - K8S_UPDATE_VERSION=$(curl https://api.github.com/repos/kubernetes/kubernetes/releases | jq -r .[].name | grep "$MAJOR_MINOR" | head -1 | sed 's/^Kubernetes //g') + K8S_UPDATE_VERSION=$(curl https://api.github.com/repos/kubernetes/kubernetes/releases | jq -r ".[].name" | grep "$MAJOR_MINOR" | head -1 | sed 's/^Kubernetes //g') MOD_VERSION=$(go mod download -json "k8s.io/api@kubernetes-${K8S_UPDATE_VERSION#v}" | jq -r .Version) + if [[ -z "${K8S_UPDATE_VERSION}" ]]; then + echo "FAIL: Failed to retrieve the kubernetes release, attempt to retrive the git tag" + K8S_UPDATE_VERSION=$(curl https://api.github.com/repos/kubernetes/kubernetes/tags | jq -r ".[].name" | grep "$MAJOR_MINOR" | head -1) + MOD_VERSION=$(go mod download -json "k8s.io/api@kubernetes-${K8S_UPDATE_VERSION#v}" | jq -r .Version) + fi if [[ -z "${K8S_UPDATE_VERSION}" ]]; then echo "FAIL: Failed to retrieve latest kubernetes version." exit 1 diff --git a/main.go b/main.go index ec674c096..20d96eb11 100644 --- a/main.go +++ b/main.go @@ -18,8 +18,8 @@ *******************************************************************************/ // References: -// - https://raw.githubusercontent.com/kubernetes/kubernetes/v1.31.1/staging/src/k8s.io/cloud-provider/app/controllermanager.go -// - https://raw.githubusercontent.com/kubernetes/kubernetes/v1.31.1/staging/src/k8s.io/cloud-provider/sample/basic_main.go +// - https://raw.githubusercontent.com/kubernetes/kubernetes/v1.32.0-alpha.1/staging/src/k8s.io/cloud-provider/app/controllermanager.go +// - https://raw.githubusercontent.com/kubernetes/kubernetes/v1.32.0-alpha.1/staging/src/k8s.io/cloud-provider/sample/basic_main.go package main diff --git a/pkg/vpcctl/vpc_provider.go b/pkg/vpcctl/vpc_provider.go index 026a0e2b1..302b5a7ef 100644 --- a/pkg/vpcctl/vpc_provider.go +++ b/pkg/vpcctl/vpc_provider.go @@ -1,6 +1,6 @@ /******************************************************************************* * IBM Cloud Kubernetes Service, 5737-D43 -* (C) Copyright IBM Corp. 2021, 2023 All Rights Reserved. +* (C) Copyright IBM Corp. 2021, 2024 All Rights Reserved. * * SPDX-License-Identifier: Apache2.0 * @@ -100,7 +100,7 @@ func (c *CloudVpc) EnsureLoadBalancer(lbName string, service *v1.Service, nodes lb, err := c.FindLoadBalancer(lbName, service) if err != nil { errString := fmt.Sprintf("Failed getting LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return nil, c.recordServiceWarningEvent(service, creatingCloudLoadBalancerFailed, lbName, errString) } @@ -109,28 +109,28 @@ func (c *CloudVpc) EnsureLoadBalancer(lbName string, service *v1.Service, nodes lb, err = c.CreateLoadBalancer(lbName, service, nodes) if err != nil { errString := fmt.Sprintf("Failed ensuring LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return nil, c.recordServiceWarningEvent(service, creatingCloudLoadBalancerFailed, lbName, errString) } // Log basic stats about the load balancer and return success (if the LB is READY or not NLB) // - return SUCCESS for non-NLB to remain backward compatibility, no additional operations need to be done // - don't return SUCCESS for NLB, because we can't do the DNS lookup of static IP if the LB is still pending if lb.IsReady() || !lb.IsNLB() { - klog.Infof(lb.GetSummary()) + klog.Infof("%s", lb.GetSummary()) klog.Infof("Load balancer %v created.", lbName) return c.GetLoadBalancerStatus(service, lb), nil } } // Log basic stats about the load balancer - klog.Infof(lb.GetSummary()) + klog.Infof("%s", lb.GetSummary()) // If we get to this point, it means that EnsureLoadBalancer was called against a Load Balancer // that already exists. This is most likely due to a change is the Kubernetes service. // If the load balancer is not "Online/Active", then no additional operations that can be performed. if !lb.IsReady() { errString := fmt.Sprintf("LoadBalancer is busy: %v", lb.GetStatus()) - klog.Warningf(errString) + klog.Warningf("%s", errString) return nil, c.recordServiceWarningEvent(service, creatingCloudLoadBalancerFailed, lbName, errString) } @@ -139,7 +139,7 @@ func (c *CloudVpc) EnsureLoadBalancer(lbName string, service *v1.Service, nodes lb, err = c.UpdateLoadBalancer(lb, service, nodes) if err != nil { errString := fmt.Sprintf("Failed ensuring LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return nil, c.recordServiceWarningEvent(service, creatingCloudLoadBalancerFailed, lbName, errString) } @@ -154,7 +154,7 @@ func (c *CloudVpc) EnsureLoadBalancerDeleted(lbName string, service *v1.Service) lb, err := c.FindLoadBalancer(lbName, service) if err != nil { errString := fmt.Sprintf("Failed getting LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return c.recordServiceWarningEvent(service, deletingCloudLoadBalancerFailed, lbName, errString) } @@ -165,13 +165,13 @@ func (c *CloudVpc) EnsureLoadBalancerDeleted(lbName string, service *v1.Service) } // Log basic stats about the load balancer - klog.Infof(lb.GetSummary()) + klog.Infof("%s", lb.GetSummary()) // The load balancer state is Online/Active. Attempt to delete the load balancer err = c.DeleteLoadBalancer(lb, service) if err != nil { errString := fmt.Sprintf("Failed deleting LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return c.recordServiceWarningEvent(service, deletingCloudLoadBalancerFailed, lbName, errString) } @@ -186,21 +186,21 @@ func (c *CloudVpc) EnsureLoadBalancerUpdated(lbName string, service *v1.Service, lb, err := c.FindLoadBalancer(lbName, service) if err != nil { errString := fmt.Sprintf("Failed getting LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return c.recordServiceWarningEvent(service, updatingCloudLoadBalancerFailed, lbName, errString) } if lb == nil { errString := fmt.Sprintf("Load balancer not found: %v", lbName) - klog.Warningf(errString) + klog.Warningf("%s", errString) return nil } // Log basic stats about the load balancer - klog.Infof(lb.GetSummary()) + klog.Infof("%s", lb.GetSummary()) // Check the state of the load balancer to determine if the update operation can even be attempted if !lb.IsReady() { errString := fmt.Sprintf("LoadBalancer is busy: %v", lb.GetStatus()) - klog.Warningf(errString) + klog.Warningf("%s", errString) return c.recordServiceWarningEvent(service, updatingCloudLoadBalancerFailed, lbName, errString) } @@ -209,7 +209,7 @@ func (c *CloudVpc) EnsureLoadBalancerUpdated(lbName string, service *v1.Service, _, err = c.UpdateLoadBalancer(lb, service, nodes) if err != nil { errString := fmt.Sprintf("Failed updating LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return c.recordServiceWarningEvent(service, updatingCloudLoadBalancerFailed, lbName, errString) } @@ -222,7 +222,7 @@ func (c *CloudVpc) EnsureLoadBalancerUpdated(lbName string, service *v1.Service, func (c *CloudVpc) GatherLoadBalancers(services *v1.ServiceList) (map[string]*v1.Service, map[string]*VpcLoadBalancer, error) { // Verify we were passed a list of Kube services if services == nil { - klog.Errorf("Required argument is missing") + klog.Errorf("%s", "Required argument is missing") return nil, nil, errors.New("Required argument is missing") } // Retrieve list of all load balancers @@ -325,7 +325,7 @@ func (c *CloudVpc) GetLoadBalancer(lbName string, service *v1.Service) (*v1.Load lb, err := c.FindLoadBalancer(lbName, service) if err != nil { errString := fmt.Sprintf("Failed getting LoadBalancer: %v", err) - klog.Errorf(errString) + klog.Errorf("%s", errString) return nil, false, c.recordServiceWarningEvent(service, gettingCloudLoadBalancerFailed, lbName, errString) } @@ -336,7 +336,7 @@ func (c *CloudVpc) GetLoadBalancer(lbName string, service *v1.Service) (*v1.Load } // Write details of the load balancer to the log - klog.Infof(lb.GetSummary()) + klog.Infof("%s", lb.GetSummary()) // If the VPC load balancer is not Ready, return the hostname from the service or blank if !lb.IsReady() { @@ -362,7 +362,7 @@ func (c *CloudVpc) GetLoadBalancer(lbName string, service *v1.Service) (*v1.Load func (c *CloudVpc) MonitorLoadBalancers(services *v1.ServiceList, status map[string]string) { // Verify we were passed a list of Kube services if services == nil { - klog.Infof("No Load Balancers to monitor, returning") + klog.Infof("%s", "No Load Balancers to monitor, returning") return } // Retrieve list of VPC LBs for the current cluster diff --git a/scripts/publishTag.sh b/scripts/publishTag.sh index 101dd72f9..4290386d6 100755 --- a/scripts/publishTag.sh +++ b/scripts/publishTag.sh @@ -43,7 +43,7 @@ if [[ -n "${EXISTING_TAG}" && "${FORCE_TAG}" != "true" ]]; then fi # Set default tag. -BASE_TAG="v1.31.1" +BASE_TAG="v1.32.0-alpha.1" # Determine the next build tag. BASE_TAGS=$(git tag --list "${BASE_TAG}-[0-9]*" --sort=v:refname) diff --git a/vagrant-kube-build/Vagrantfile b/vagrant-kube-build/Vagrantfile index 79deb6410..f3fff4d97 100644 --- a/vagrant-kube-build/Vagrantfile +++ b/vagrant-kube-build/Vagrantfile @@ -55,9 +55,9 @@ function exit_build { apt-get install -y make if ! hash go 2>/dev/null; then # Add apt-repository ppa:ubuntu-lxc/lxd-stable - curl -O https://dl.google.com/go/go1.22.6.linux-amd64.tar.gz + curl -O https://dl.google.com/go/go1.23.0.linux-amd64.tar.gz if [[ $? -ne 0 ]]; then exit_build ; fi - tar -C /usr/local -xzf go1.22.6.linux-amd64.tar.gz + tar -C /usr/local -xzf go1.23.0.linux-amd64.tar.gz if [[ $? -ne 0 ]]; then exit_build ; fi if [ ! -n "$(grep "/usr/local/go/bin" /etc/profile)" ]; then echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile diff --git a/vagrant-kube-build/provisioning/build_docker_registry.sh b/vagrant-kube-build/provisioning/build_docker_registry.sh index 1e9d105c9..cff06deac 100755 --- a/vagrant-kube-build/provisioning/build_docker_registry.sh +++ b/vagrant-kube-build/provisioning/build_docker_registry.sh @@ -23,7 +23,7 @@ function exit_build { exit 1 } -BUILD_VERSION="v1.31.1" +BUILD_VERSION="v1.32.0-alpha.1" BUILD_REGISTRY_NAME="armada-master" BUILD_REGISTRY_IP_ADDRESS="192.168.10.10" BUILD_REGISTRY_PORT="5000"