File tree 3 files changed +7
-1
lines changed
3 files changed +7
-1
lines changed Original file line number Diff line number Diff line change @@ -134,6 +134,7 @@ type Configuration struct {
134
134
Backend ingress.Controller
135
135
136
136
UpdateStatus bool
137
+ ElectionID string
137
138
}
138
139
139
140
// newIngressController creates an Ingress controller
@@ -303,6 +304,7 @@ func newIngressController(config *Configuration) *GenericController {
303
304
Client : config .Client ,
304
305
PublishService : ic .cfg .PublishService ,
305
306
IngressLister : ic .ingLister ,
307
+ ElectionID : config .ElectionID ,
306
308
})
307
309
} else {
308
310
glog .Warning ("Update of ingress status is disabled (flag --update-status=false was specified)" )
Original file line number Diff line number Diff line change @@ -82,6 +82,8 @@ func NewIngressController(backend ingress.Controller) *GenericController {
82
82
83
83
updateStatus = flags .Bool ("update-status" , true , `Indicates if the
84
84
ingress controller should update the Ingress status IP/hostname. Default is true` )
85
+
86
+ electionID = flags .String ("election-id" , "ingress-controller-leader" , `Election id to use for status update.` )
85
87
)
86
88
87
89
backend .OverrideFlags (flags )
@@ -137,6 +139,7 @@ func NewIngressController(backend ingress.Controller) *GenericController {
137
139
138
140
config := & Configuration {
139
141
UpdateStatus : * updateStatus ,
142
+ ElectionID : * electionID ,
140
143
Client : kubeClient ,
141
144
ResyncPeriod : * resyncPeriod ,
142
145
DefaultService : * defaultSvc ,
Original file line number Diff line number Diff line change @@ -52,6 +52,7 @@ type Config struct {
52
52
Client clientset.Interface
53
53
PublishService string
54
54
IngressLister cache_store.StoreToIngressLister
55
+ ElectionID string
55
56
}
56
57
57
58
// statusSync keeps the status IP in each Ingress rule updated executing a periodic check
@@ -171,7 +172,7 @@ func NewStatusSyncer(config Config) Sync {
171
172
}
172
173
st .syncQueue = task .NewCustomTaskQueue (st .sync , st .keyfunc )
173
174
174
- le , err := NewElection ("ingress-controller-leader" ,
175
+ le , err := NewElection (config . ElectionID ,
175
176
pod .Name , pod .Namespace , 30 * time .Second ,
176
177
st .callback , config .Client )
177
178
if err != nil {
You can’t perform that action at this time.
0 commit comments