Skip to content

Commit dd20b66

Browse files
authored
Merge pull request #1210 from jsafrane/bump-1.30
Bump to Kubernetes 1.30
2 parents 9a8acae + 080650e commit dd20b66

File tree

540 files changed

+50783
-12834
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

540 files changed

+50783
-12834
lines changed

cmd/csi-provisioner/csi-provisioner.go

Lines changed: 34 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -52,9 +52,9 @@ import (
5252
_ "k8s.io/component-base/metrics/prometheus/clientgo/leaderelection" // register leader election in the default legacy registry
5353
_ "k8s.io/component-base/metrics/prometheus/workqueue" // register work queues in the default legacy registry
5454
csitrans "k8s.io/csi-translation-lib"
55-
"k8s.io/klog/v2"
56-
"sigs.k8s.io/sig-storage-lib-external-provisioner/v9/controller"
57-
libmetrics "sigs.k8s.io/sig-storage-lib-external-provisioner/v9/controller/metrics"
55+
klog "k8s.io/klog/v2"
56+
"sigs.k8s.io/sig-storage-lib-external-provisioner/v10/controller"
57+
libmetrics "sigs.k8s.io/sig-storage-lib-external-provisioner/v10/controller/metrics"
5858

5959
"github.com/kubernetes-csi/csi-lib-utils/leaderelection"
6060
"github.com/kubernetes-csi/csi-lib-utils/metrics"
@@ -210,13 +210,13 @@ func main() {
210210
metrics.WithSubsystem(metrics.SubsystemSidecar),
211211
)
212212

213-
grpcClient, err := ctrl.Connect(*csiEndpoint, metricsManager)
213+
grpcClient, err := ctrl.Connect(ctx, *csiEndpoint, metricsManager)
214214
if err != nil {
215215
klog.Error(err.Error())
216216
os.Exit(1)
217217
}
218218

219-
err = ctrl.Probe(grpcClient, *operationTimeout)
219+
err = ctrl.Probe(ctx, grpcClient, *operationTimeout)
220220
if err != nil {
221221
klog.Error(err.Error())
222222
os.Exit(1)
@@ -244,15 +244,15 @@ func main() {
244244
// Will be provided via default gatherer.
245245
metrics.WithProcessStartTime(false),
246246
metrics.WithMigration())
247-
migratedGrpcClient, err := ctrl.Connect(*csiEndpoint, metricsManager)
247+
migratedGrpcClient, err := ctrl.Connect(ctx, *csiEndpoint, metricsManager)
248248
if err != nil {
249249
klog.Error(err.Error())
250250
os.Exit(1)
251251
}
252252
grpcClient.Close()
253253
grpcClient = migratedGrpcClient
254254

255-
err = ctrl.Probe(grpcClient, *operationTimeout)
255+
err = ctrl.Probe(ctx, grpcClient, *operationTimeout)
256256
if err != nil {
257257
klog.Error(err.Error())
258258
os.Exit(1)
@@ -553,34 +553,20 @@ func main() {
553553
csiProvisioner = capacity.NewProvisionWrapper(csiProvisioner, capacityController)
554554
}
555555

556-
provisionController = controller.NewProvisionController(
557-
clientset,
558-
provisionerName,
559-
csiProvisioner,
560-
provisionerOptions...,
561-
)
562-
563-
csiClaimController := ctrl.NewCloningProtectionController(
564-
clientset,
565-
claimLister,
566-
claimInformer,
567-
claimQueue,
568-
controllerCapabilities,
569-
)
570-
571-
// Start HTTP server, regardless whether we are the leader or not.
572556
if addr != "" {
573-
// To collect metrics data from the metric handler itself, we
574-
// let it register itself and then collect from that registry.
557+
// Start HTTP server, regardless whether we are the leader or not.
558+
// Register provisioner metrics manually to be able to add multiplexer in front of it
559+
m := libmetrics.New("controller")
575560
reg := prometheus.NewRegistry()
576561
reg.MustRegister([]prometheus.Collector{
577-
libmetrics.PersistentVolumeClaimProvisionTotal,
578-
libmetrics.PersistentVolumeClaimProvisionFailedTotal,
579-
libmetrics.PersistentVolumeClaimProvisionDurationSeconds,
580-
libmetrics.PersistentVolumeDeleteTotal,
581-
libmetrics.PersistentVolumeDeleteFailedTotal,
582-
libmetrics.PersistentVolumeDeleteDurationSeconds,
562+
m.PersistentVolumeClaimProvisionTotal,
563+
m.PersistentVolumeClaimProvisionFailedTotal,
564+
m.PersistentVolumeClaimProvisionDurationSeconds,
565+
m.PersistentVolumeDeleteTotal,
566+
m.PersistentVolumeDeleteFailedTotal,
567+
m.PersistentVolumeDeleteDurationSeconds,
583568
}...)
569+
provisionerOptions = append(provisionerOptions, controller.MetricsInstance(m))
584570
gatherers = append(gatherers, reg)
585571

586572
// This is similar to k8s.io/component-base/metrics HandlerWithReset
@@ -611,6 +597,23 @@ func main() {
611597
}()
612598
}
613599

600+
logger := klog.FromContext(ctx)
601+
provisionController = controller.NewProvisionController(
602+
logger,
603+
clientset,
604+
provisionerName,
605+
csiProvisioner,
606+
provisionerOptions...,
607+
)
608+
609+
csiClaimController := ctrl.NewCloningProtectionController(
610+
clientset,
611+
claimLister,
612+
claimInformer,
613+
claimQueue,
614+
controllerCapabilities,
615+
)
616+
614617
run := func(ctx context.Context) {
615618
factory.Start(ctx.Done())
616619
if factoryForNamespace != nil {

go.mod

Lines changed: 43 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
module github.com/kubernetes-csi/external-provisioner
22

3-
go 1.21
3+
go 1.22.3
44

55
require (
66
github.com/container-storage-interface/spec v1.9.0
77
github.com/golang/mock v1.6.0
88
github.com/google/gofuzz v1.2.0 // indirect
99
github.com/google/uuid v1.6.0 // indirect
1010
github.com/imdario/mergo v0.3.16 // indirect
11-
github.com/kubernetes-csi/csi-lib-utils v0.17.0
11+
github.com/kubernetes-csi/csi-lib-utils v0.18.0
1212
github.com/kubernetes-csi/csi-test/v5 v5.2.0
1313
github.com/kubernetes-csi/external-snapshotter/client/v6 v6.3.0
1414
github.com/miekg/dns v1.1.59 // indirect
@@ -17,23 +17,23 @@ require (
1717
github.com/stretchr/testify v1.9.0
1818
google.golang.org/grpc v1.63.2
1919
google.golang.org/protobuf v1.34.1
20-
k8s.io/api v0.29.2
21-
k8s.io/apimachinery v0.29.2
22-
k8s.io/apiserver v0.29.2
20+
k8s.io/api v0.30.0
21+
k8s.io/apimachinery v0.30.0
22+
k8s.io/apiserver v0.30.0
2323
k8s.io/client-go v1.5.2
24-
k8s.io/component-base v0.29.2
25-
k8s.io/component-helpers v0.29.0
24+
k8s.io/component-base v0.30.0
25+
k8s.io/component-helpers v0.30.0
2626
k8s.io/csi-translation-lib v0.29.0
2727
k8s.io/klog/v2 v2.120.1
2828
sigs.k8s.io/controller-runtime v0.17.3
2929
sigs.k8s.io/gateway-api v1.0.0
30-
sigs.k8s.io/sig-storage-lib-external-provisioner/v9 v9.1.0-rc.0
30+
sigs.k8s.io/sig-storage-lib-external-provisioner/v10 v10.0.0
3131
)
3232

3333
require (
3434
github.com/onsi/ginkgo/v2 v2.17.3
3535
github.com/onsi/gomega v1.33.1
36-
k8s.io/kubernetes v1.29.2
36+
k8s.io/kubernetes v1.30.0
3737
)
3838

3939
require (
@@ -62,7 +62,7 @@ require (
6262
github.com/gogo/protobuf v1.3.2 // indirect
6363
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
6464
github.com/golang/protobuf v1.5.4 // indirect
65-
github.com/google/cel-go v0.17.7 // indirect
65+
github.com/google/cel-go v0.17.8 // indirect
6666
github.com/google/gnostic-models v0.6.8 // indirect
6767
github.com/google/go-cmp v0.6.0 // indirect
6868
github.com/google/pprof v0.0.0-20240424215950-a892ee059fd6 // indirect
@@ -120,11 +120,11 @@ require (
120120
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
121121
gopkg.in/yaml.v2 v2.4.0 // indirect
122122
gopkg.in/yaml.v3 v3.0.1 // indirect
123-
k8s.io/apiextensions-apiserver v0.29.2 // indirect
124-
k8s.io/cloud-provider v0.29.0-rc.1 // indirect
125-
k8s.io/controller-manager v0.29.0 // indirect
126-
k8s.io/kms v0.29.0 // indirect
127-
k8s.io/kube-openapi v0.0.0-20231010175941-2dd684a91f00 // indirect
123+
k8s.io/apiextensions-apiserver v0.30.0 // indirect
124+
k8s.io/cloud-provider v0.30.0 // indirect
125+
k8s.io/controller-manager v0.30.0 // indirect
126+
k8s.io/kms v0.30.0 // indirect
127+
k8s.io/kube-openapi v0.0.0-20240228011516-70dd3763d340 // indirect
128128
k8s.io/kubectl v0.27.0 // indirect
129129
k8s.io/kubelet v0.27.0 // indirect
130130
k8s.io/mount-utils v0.27.0 // indirect
@@ -136,58 +136,58 @@ require (
136136
sigs.k8s.io/yaml v1.4.0 // indirect
137137
)
138138

139-
replace k8s.io/api => k8s.io/api v0.29.0
139+
replace k8s.io/api => k8s.io/api v0.30.0
140140

141-
replace k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.29.0
141+
replace k8s.io/apiextensions-apiserver => k8s.io/apiextensions-apiserver v0.30.0
142142

143-
replace k8s.io/apimachinery => k8s.io/apimachinery v0.29.0
143+
replace k8s.io/apimachinery => k8s.io/apimachinery v0.30.0
144144

145-
replace k8s.io/apiserver => k8s.io/apiserver v0.29.0
145+
replace k8s.io/apiserver => k8s.io/apiserver v0.30.0
146146

147-
replace k8s.io/cli-runtime => k8s.io/cli-runtime v0.29.0
147+
replace k8s.io/cli-runtime => k8s.io/cli-runtime v0.30.0
148148

149-
replace k8s.io/client-go => k8s.io/client-go v0.29.0
149+
replace k8s.io/client-go => k8s.io/client-go v0.30.0
150150

151-
replace k8s.io/cloud-provider => k8s.io/cloud-provider v0.29.0
151+
replace k8s.io/cloud-provider => k8s.io/cloud-provider v0.30.0
152152

153-
replace k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.29.0
153+
replace k8s.io/cluster-bootstrap => k8s.io/cluster-bootstrap v0.30.0
154154

155-
replace k8s.io/code-generator => k8s.io/code-generator v0.29.0
155+
replace k8s.io/code-generator => k8s.io/code-generator v0.30.0
156156

157-
replace k8s.io/component-base => k8s.io/component-base v0.29.0
157+
replace k8s.io/component-base => k8s.io/component-base v0.30.0
158158

159-
replace k8s.io/component-helpers => k8s.io/component-helpers v0.29.0
159+
replace k8s.io/component-helpers => k8s.io/component-helpers v0.30.0
160160

161-
replace k8s.io/controller-manager => k8s.io/controller-manager v0.29.0
161+
replace k8s.io/controller-manager => k8s.io/controller-manager v0.30.0
162162

163-
replace k8s.io/cri-api => k8s.io/cri-api v0.29.0
163+
replace k8s.io/cri-api => k8s.io/cri-api v0.30.0
164164

165-
replace k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.29.0
165+
replace k8s.io/csi-translation-lib => k8s.io/csi-translation-lib v0.30.0
166166

167-
replace k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.29.0
167+
replace k8s.io/dynamic-resource-allocation => k8s.io/dynamic-resource-allocation v0.30.0
168168

169-
replace k8s.io/endpointslice => k8s.io/endpointslice v0.29.0
169+
replace k8s.io/endpointslice => k8s.io/endpointslice v0.30.0
170170

171-
replace k8s.io/kms => k8s.io/kms v0.29.0
171+
replace k8s.io/kms => k8s.io/kms v0.30.0
172172

173-
replace k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.29.0
173+
replace k8s.io/kube-aggregator => k8s.io/kube-aggregator v0.30.0
174174

175-
replace k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.29.0
175+
replace k8s.io/kube-controller-manager => k8s.io/kube-controller-manager v0.30.0
176176

177-
replace k8s.io/kube-proxy => k8s.io/kube-proxy v0.29.0
177+
replace k8s.io/kube-proxy => k8s.io/kube-proxy v0.30.0
178178

179-
replace k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.29.0
179+
replace k8s.io/kube-scheduler => k8s.io/kube-scheduler v0.30.0
180180

181-
replace k8s.io/kubectl => k8s.io/kubectl v0.29.0
181+
replace k8s.io/kubectl => k8s.io/kubectl v0.30.0
182182

183-
replace k8s.io/kubelet => k8s.io/kubelet v0.29.0
183+
replace k8s.io/kubelet => k8s.io/kubelet v0.30.0
184184

185-
replace k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.29.0
185+
replace k8s.io/legacy-cloud-providers => k8s.io/legacy-cloud-providers v0.30.0
186186

187-
replace k8s.io/metrics => k8s.io/metrics v0.29.0
187+
replace k8s.io/metrics => k8s.io/metrics v0.30.0
188188

189-
replace k8s.io/mount-utils => k8s.io/mount-utils v0.29.0
189+
replace k8s.io/mount-utils => k8s.io/mount-utils v0.30.0
190190

191-
replace k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.29.0
191+
replace k8s.io/pod-security-admission => k8s.io/pod-security-admission v0.30.0
192192

193-
replace k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.29.0
193+
replace k8s.io/sample-apiserver => k8s.io/sample-apiserver v0.30.0

0 commit comments

Comments
 (0)