File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ /*
2+ Copyright 2022 The Kubernetes Authors.
3+
4+ Licensed under the Apache License, Version 2.0 (the "License");
5+ you may not use this file except in compliance with the License.
6+ You may obtain a copy of the License at
7+
8+ http://www.apache.org/licenses/LICENSE-2.0
9+
10+ Unless required by applicable law or agreed to in writing, software
11+ distributed under the License is distributed on an "AS IS" BASIS,
12+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+ See the License for the specific language governing permissions and
14+ limitations under the License.
15+ */
16+
17+ package manager
18+
19+ import (
20+ "k8s.io/client-go/rest"
21+ "k8s.io/client-go/tools/leaderelection/resourcelock"
22+ "sigs.k8s.io/controller-runtime/pkg/leaderelection"
23+ "sigs.k8s.io/controller-runtime/pkg/recorder"
24+ )
25+
26+ // SetNewResourceLock set a new resource lock function
27+ //
28+ // Allow this private field to be set in other packages
29+ // You can insert your own leader election logic
30+ func (opt * Options ) SetNewResourceLock (
31+ newResourceLock func (config * rest.Config , recorderProvider recorder.Provider , options leaderelection.Options ) (
32+ resourcelock.Interface , error )) {
33+ opt .newResourceLock = newResourceLock
34+ }
You can’t perform that action at this time.
0 commit comments