Skip to content

Commit a2fb9a5

Browse files
committed
Remove deprecated ConfigMapLock
1 parent 69ee5db commit a2fb9a5

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

internal/k8s/leader.go

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@ package k8s
22

33
import (
44
"context"
5+
"fmt"
56
"os"
67
"time"
78

89
"github.com/golang/glog"
910

1011
v1 "k8s.io/api/core/v1"
11-
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
1212
"k8s.io/client-go/kubernetes"
1313
"k8s.io/client-go/kubernetes/scheme"
1414
"k8s.io/client-go/tools/leaderelection"
@@ -26,18 +26,25 @@ func newLeaderElector(client kubernetes.Interface, callbacks leaderelection.Lead
2626
source := v1.EventSource{Component: "nginx-ingress-leader-elector", Host: hostname}
2727
recorder := broadcaster.NewRecorder(scheme.Scheme, source)
2828

29-
lock := resourcelock.ConfigMapLock{
30-
ConfigMapMeta: metav1.ObjectMeta{Namespace: namespace, Name: lockName},
31-
Client: client.CoreV1(),
32-
LockConfig: resourcelock.ResourceLockConfig{
33-
Identity: podName,
34-
EventRecorder: recorder,
35-
},
29+
lc := resourcelock.ResourceLockConfig{
30+
Identity: podName,
31+
EventRecorder: recorder,
32+
}
33+
34+
lock, err := resourcelock.New(resourcelock.ConfigMapsLeasesResourceLock,
35+
namespace,
36+
lockName,
37+
client.CoreV1(),
38+
client.CoordinationV1(),
39+
lc,
40+
)
41+
if err != nil {
42+
return nil, fmt.Errorf("error creating leader election lock: %w", err)
3643
}
3744

3845
ttl := 30 * time.Second
3946
return leaderelection.NewLeaderElector(leaderelection.LeaderElectionConfig{
40-
Lock: &lock,
47+
Lock: lock,
4148
LeaseDuration: ttl,
4249
RenewDeadline: ttl / 2,
4350
RetryPeriod: ttl / 4,

0 commit comments

Comments
 (0)