Skip to content

Commit eb5e36d

Browse files
committed
fix: modify methods for updated new libraries
- Bump rancher/wranger to v3 - Add necessary methods for the library `container-storage-interface/spec` v1.10.0 - Deprecated methods of the library `k8s.io/client-go/util/workqueue` Signed-off-by: James Lu <[email protected]>
1 parent d7152c4 commit eb5e36d

File tree

111 files changed

+1587
-12376
lines changed

Some content is hidden

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

111 files changed

+1587
-12376
lines changed

app/daemon.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ import (
99

1010
"github.com/gorilla/handlers"
1111
"github.com/pkg/errors"
12-
"github.com/rancher/wrangler/pkg/signals"
12+
"github.com/rancher/wrangler/v3/pkg/signals"
1313
"github.com/sirupsen/logrus"
1414
"github.com/urfave/cli"
1515
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"

controller/base_controller.go

+4-3
Original file line numberDiff line numberDiff line change
@@ -18,16 +18,17 @@ var (
1818
type baseController struct {
1919
name string
2020
logger *logrus.Entry
21-
queue workqueue.RateLimitingInterface
21+
queue workqueue.TypedRateLimitingInterface[any]
2222
}
2323

2424
func newBaseController(name string, logger logrus.FieldLogger) *baseController {
25+
nameConfig := workqueue.TypedRateLimitingQueueConfig[any]{Name: name}
2526
return newBaseControllerWithQueue(name, logger,
26-
workqueue.NewNamedRateLimitingQueue(EnhancedDefaultControllerRateLimiter(), name))
27+
workqueue.NewTypedRateLimitingQueueWithConfig[any](EnhancedDefaultControllerRateLimiter(), nameConfig))
2728
}
2829

2930
func newBaseControllerWithQueue(name string, logger logrus.FieldLogger,
30-
queue workqueue.RateLimitingInterface) *baseController {
31+
queue workqueue.TypedRateLimitingInterface[any]) *baseController {
3132
c := &baseController{
3233
name: name,
3334
logger: logger.WithField("controller", name),

controller/controller_manager.go

+4-4
Original file line numberDiff line numberDiff line change
@@ -310,11 +310,11 @@ func isControllerResponsibleFor(controllerID string, ds *datastore.DataStore, na
310310

311311
// EnhancedDefaultControllerRateLimiter is an enhanced version of workqueue.DefaultControllerRateLimiter()
312312
// See https://github.com/longhorn/longhorn/issues/1058 for details
313-
func EnhancedDefaultControllerRateLimiter() workqueue.RateLimiter {
314-
return workqueue.NewMaxOfRateLimiter(
315-
workqueue.NewItemExponentialFailureRateLimiter(5*time.Millisecond, 1000*time.Second),
313+
func EnhancedDefaultControllerRateLimiter() workqueue.TypedRateLimiter[any] {
314+
return workqueue.NewTypedMaxOfRateLimiter[any](
315+
workqueue.NewTypedItemExponentialFailureRateLimiter[any](5*time.Millisecond, 1000*time.Second),
316316
// 100 qps, 1000 bucket size
317-
&workqueue.BucketRateLimiter{Limiter: rate.NewLimiter(rate.Limit(100), 1000)},
317+
&workqueue.TypedBucketRateLimiter[any]{Limiter: rate.NewLimiter(rate.Limit(100), 1000)},
318318
)
319319
}
320320

controller/monitor/snapshot_monitor.go

+6-6
Original file line numberDiff line numberDiff line change
@@ -70,8 +70,8 @@ type SnapshotMonitor struct {
7070

7171
checkScheduler *gocron.Scheduler
7272

73-
snapshotChangeEventQueue workqueue.Interface
74-
snapshotCheckTaskQueue workqueue.RateLimitingInterface
73+
snapshotChangeEventQueue workqueue.TypedInterface[any]
74+
snapshotCheckTaskQueue workqueue.TypedRateLimitingInterface[any]
7575

7676
inProgressSnapshotCheckTasks map[string]struct{}
7777
inProgressSnapshotCheckTasksLock sync.RWMutex
@@ -86,7 +86,7 @@ type SnapshotMonitor struct {
8686
}
8787

8888
func NewSnapshotMonitor(logger logrus.FieldLogger, ds *datastore.DataStore, nodeName string, eventRecorder record.EventRecorder,
89-
snapshotChangeEventQueue workqueue.Interface, syncCallback func(key string)) (*SnapshotMonitor, error) {
89+
snapshotChangeEventQueue workqueue.TypedInterface[any], syncCallback func(key string)) (*SnapshotMonitor, error) {
9090

9191
ctx, quit := context.WithCancel(context.Background())
9292

@@ -101,9 +101,9 @@ func NewSnapshotMonitor(logger logrus.FieldLogger, ds *datastore.DataStore, node
101101

102102
snapshotChangeEventQueue: snapshotChangeEventQueue,
103103

104-
snapshotCheckTaskQueue: workqueue.NewRateLimitingQueue(workqueue.NewMaxOfRateLimiter(
105-
workqueue.NewItemExponentialFailureRateLimiter(1*time.Second, 1000*time.Second),
106-
&workqueue.BucketRateLimiter{Limiter: rate.NewLimiter(rate.Limit(10), 100)},
104+
snapshotCheckTaskQueue: workqueue.NewTypedRateLimitingQueue[any](workqueue.NewTypedMaxOfRateLimiter[any](
105+
workqueue.NewTypedItemExponentialFailureRateLimiter[any](1*time.Second, 1000*time.Second),
106+
&workqueue.TypedBucketRateLimiter[any]{Limiter: rate.NewLimiter(rate.Limit(10), 100)},
107107
)),
108108

109109
inProgressSnapshotCheckTasks: map[string]struct{}{},

controller/node_controller.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ type NodeController struct {
6363
diskMonitor monitor.Monitor
6464

6565
snapshotMonitor monitor.Monitor
66-
snapshotChangeEventQueue workqueue.Interface
66+
snapshotChangeEventQueue workqueue.TypedInterface[any]
6767
snapshotChangeEventQueueLock sync.Mutex
6868

6969
ds *datastore.DataStore
@@ -102,7 +102,7 @@ func NewNodeController(
102102

103103
topologyLabelsChecker: util.IsKubernetesVersionAtLeast,
104104

105-
snapshotChangeEventQueue: workqueue.New(),
105+
snapshotChangeEventQueue: workqueue.NewTyped[any](),
106106
}
107107

108108
nc.scheduler = scheduler.NewReplicaScheduler(ds)

controller/system_rollout_controller.go

+5-4
Original file line numberDiff line numberDiff line change
@@ -169,12 +169,13 @@ func NewSystemRolloutController(
169169
Interface: v1core.New(kubeClient.CoreV1().RESTClient()).Events(""),
170170
})
171171

172+
nameConfig := workqueue.TypedRateLimitingQueueConfig[any]{Name: SystemRolloutControllerName}
172173
c := &SystemRolloutController{
173174
baseController: newBaseControllerWithQueue(SystemRolloutControllerName, logger,
174-
workqueue.NewNamedRateLimitingQueue(workqueue.NewMaxOfRateLimiter(
175-
workqueue.NewItemExponentialFailureRateLimiter(100*time.Millisecond, 2*time.Second),
176-
&workqueue.BucketRateLimiter{Limiter: rate.NewLimiter(rate.Limit(100), 1000)},
177-
), SystemRolloutControllerName),
175+
workqueue.NewTypedRateLimitingQueueWithConfig[any](workqueue.NewTypedMaxOfRateLimiter[any](
176+
workqueue.NewTypedItemExponentialFailureRateLimiter[any](100*time.Millisecond, 2*time.Second),
177+
&workqueue.TypedBucketRateLimiter[any]{Limiter: rate.NewLimiter(rate.Limit(100), 1000)},
178+
), nameConfig),
178179
),
179180
controllerID: controllerID,
180181
stopCh: stopCh,

controller/uninstall_controller.go

+5-4
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,13 @@ func NewUninstallController(
7575
kubeClient clientset.Interface,
7676
extensionsClient apiextensionsclientset.Interface,
7777
) (*UninstallController, error) {
78+
nameConfig := workqueue.TypedRateLimitingQueueConfig[any]{Name: "longhorn-uninstall"}
7879
c := &UninstallController{
7980
baseController: newBaseControllerWithQueue("longhorn-uninstall", logger,
80-
workqueue.NewNamedRateLimitingQueue(workqueue.NewMaxOfRateLimiter(
81-
workqueue.NewItemExponentialFailureRateLimiter(100*time.Millisecond, 2*time.Second),
82-
&workqueue.BucketRateLimiter{Limiter: rate.NewLimiter(rate.Limit(100), 1000)},
83-
), "longhorn-uninstall"),
81+
workqueue.NewTypedRateLimitingQueueWithConfig[any](workqueue.NewTypedMaxOfRateLimiter[any](
82+
workqueue.NewTypedItemExponentialFailureRateLimiter[any](100*time.Millisecond, 2*time.Second),
83+
&workqueue.TypedBucketRateLimiter[any]{Limiter: rate.NewLimiter(rate.Limit(100), 1000)},
84+
), nameConfig),
8485
),
8586
namespace: namespace,
8687
force: force,

csi/controller_server.go

+2-1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ const (
4646
)
4747

4848
type ControllerServer struct {
49+
csi.UnimplementedControllerServer
4950
apiClient *longhornclient.RancherClient
5051
nodeID string
5152
caps []*csi.ControllerServiceCapability
@@ -1380,7 +1381,7 @@ func (cs *ControllerServer) waitForSnapshotToBeReady(snapshotName, volumeName st
13801381

13811382
func (cs *ControllerServer) ControllerModifyVolume(ctx context.Context, req *csi.ControllerModifyVolumeRequest) (*csi.ControllerModifyVolumeResponse, error) {
13821383
log := cs.log.WithFields(logrus.Fields{"function": "ControllerModifyVolume"})
1383-
log.Infof("ControllerModifyVolume: called with args %+v", *req)
1384+
log.Infof("ControllerModifyVolume: called with args %v", req)
13841385

13851386
return nil, status.Error(codes.Unimplemented, "")
13861387
}

csi/identity_server.go

+1
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
)
88

99
type IdentityServer struct {
10+
csi.UnimplementedIdentityServer
1011
driverName string
1112
version string
1213
}

csi/node_server.go

+1
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ var supportedFs = map[string]fsParameters{
4848
}
4949

5050
type NodeServer struct {
51+
csi.UnimplementedNodeServer
5152
apiClient *longhornclient.RancherClient
5253
nodeID string
5354
caps []*csi.NodeServiceCapability

go.mod

+1-2
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ require (
7272
github.com/prometheus/client_golang v1.20.2
7373
github.com/rancher/dynamiclistener v0.6.0
7474
github.com/rancher/go-rancher v0.1.1-0.20220412083059-ff12399dd57b
75-
github.com/rancher/wrangler v1.1.2
75+
github.com/rancher/wrangler/v3 v3.0.0
7676
github.com/robfig/cron v1.2.0
7777
github.com/sirupsen/logrus v1.9.3
7878
github.com/stretchr/testify v1.9.0
@@ -114,7 +114,6 @@ require (
114114
github.com/opencontainers/runc v1.1.13 // indirect
115115
github.com/opencontainers/runtime-spec v1.1.0 // indirect
116116
github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect
117-
github.com/rancher/wrangler/v3 v3.0.0 // indirect
118117
github.com/shirou/gopsutil/v3 v3.24.5 // indirect
119118
github.com/x448/float16 v0.8.4 // indirect
120119
github.com/yusufpapurcu/wmi v1.2.4 // indirect

go.sum

-2
Original file line numberDiff line numberDiff line change
@@ -233,8 +233,6 @@ github.com/rancher/go-rancher v0.1.1-0.20220412083059-ff12399dd57b h1:so40GMVZOZ
233233
github.com/rancher/go-rancher v0.1.1-0.20220412083059-ff12399dd57b/go.mod h1:7oQvGNiJsGvrUgB+7AH8bmdzuR0uhULfwKb43Ht0hUk=
234234
github.com/rancher/lasso v0.0.0-20240809125800-8da6f11865d5 h1:qlVhaHTT7wwrI5+AGdkYHpveuoe8Ot4TdQr7LtxmVSk=
235235
github.com/rancher/lasso v0.0.0-20240809125800-8da6f11865d5/go.mod h1:Efx/+BbH3ivmnTPLu5cA3Gc9wT5oyGS0LBcqEuYTx+A=
236-
github.com/rancher/wrangler v1.1.2 h1:oXbXo9k7y/H4drUpb4RM1c++vT9O3rpoNEfyusGykiU=
237-
github.com/rancher/wrangler v1.1.2/go.mod h1:2k9MyhlBdjcutcBGoOJSUAz0HgDAXnMjv81d3n/AaQc=
238236
github.com/rancher/wrangler/v3 v3.0.0 h1:IHHCA+vrghJDPxjtLk4fmeSCFhNe9fFzLFj3m2B0YpA=
239237
github.com/rancher/wrangler/v3 v3.0.0/go.mod h1:Dfckuuq7MJk2JWVBDywRlZXMxEyPxHy4XqGrPEzu5Eg=
240238
github.com/robfig/cron v1.2.0 h1:ZjScXvvxeQ63Dbyxy76Fj3AT3Ut0aKsyd2/tl3DTMuQ=

util/client/client.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ import (
66
"time"
77

88
"github.com/pkg/errors"
9-
wranglerClients "github.com/rancher/wrangler/pkg/clients"
10-
wranglerSchemes "github.com/rancher/wrangler/pkg/schemes"
9+
wranglerClients "github.com/rancher/wrangler/v3/pkg/clients"
10+
wranglerSchemes "github.com/rancher/wrangler/v3/pkg/schemes"
1111
"github.com/sirupsen/logrus"
1212
"k8s.io/apimachinery/pkg/runtime"
1313
"k8s.io/client-go/tools/clientcmd"

vendor/github.com/rancher/wrangler/LICENSE

-178
This file was deleted.

0 commit comments

Comments
 (0)