@@ -2,6 +2,7 @@ package cmd
2
2
3
3
import (
4
4
"errors"
5
+ "fmt"
5
6
"os"
6
7
"os/signal"
7
8
"sync"
@@ -42,18 +43,18 @@ func NewKubeRouterDefault(config *options.KubeRouterConfig) (*KubeRouter, error)
42
43
if len (config .Master ) != 0 || len (config .Kubeconfig ) != 0 {
43
44
clientconfig , err = clientcmd .BuildConfigFromFlags (config .Master , config .Kubeconfig )
44
45
if err != nil {
45
- return nil , errors . New ( "Failed to build configuration from CLI: " + err . Error () )
46
+ return nil , fmt . Errorf ( "failed to build configuration from CLI: %v" , err )
46
47
}
47
48
} else {
48
49
clientconfig , err = rest .InClusterConfig ()
49
50
if err != nil {
50
- return nil , errors . New ("unable to initialize inclusterconfig: " + err . Error () )
51
+ return nil , fmt . Errorf ("unable to initialize inclusterconfig: %v" , err )
51
52
}
52
53
}
53
54
54
55
clientset , err := kubernetes .NewForConfig (clientconfig )
55
56
if err != nil {
56
- return nil , errors . New ( "Failed to create Kubernetes client: " + err . Error () )
57
+ return nil , fmt . Errorf ( "failed to create Kubernetes client: %v" , err )
57
58
}
58
59
59
60
return & KubeRouter {Client : clientset , Config : config }, nil
@@ -88,7 +89,7 @@ func (kr *KubeRouter) Run() error {
88
89
89
90
hc , err := healthcheck .NewHealthController (kr .Config )
90
91
if err != nil {
91
- return errors . New ( "Failed to create health controller: " + err . Error () )
92
+ return fmt . Errorf ( "failed to create health controller: %v" , err )
92
93
}
93
94
wg .Add (1 )
94
95
go hc .RunServer (stopCh , & wg )
@@ -104,7 +105,7 @@ func (kr *KubeRouter) Run() error {
104
105
105
106
err = kr .CacheSyncOrTimeout (informerFactory , stopCh )
106
107
if err != nil {
107
- return errors . New ( "Failed to synchronize cache: " + err . Error () )
108
+ return fmt . Errorf ( "failed to synchronize cache: %v" , err )
108
109
}
109
110
110
111
hc .SetAlive ()
@@ -115,7 +116,7 @@ func (kr *KubeRouter) Run() error {
115
116
kr .Config .MetricsEnabled = true
116
117
mc , err := metrics .NewMetricsController (kr .Config )
117
118
if err != nil {
118
- return errors . New ( "Failed to create metrics controller: " + err . Error () )
119
+ return fmt . Errorf ( "failed to create metrics controller: %v" , err )
119
120
}
120
121
wg .Add (1 )
121
122
go mc .Run (healthChan , stopCh , & wg )
@@ -147,20 +148,20 @@ func (kr *KubeRouter) Run() error {
147
148
nrc , err := routing .NewNetworkRoutingController (kr .Client , kr .Config ,
148
149
nodeInformer , svcInformer , epInformer , & ipsetMutex )
149
150
if err != nil {
150
- return errors . New ( "Failed to create network routing controller: " + err . Error () )
151
+ return fmt . Errorf ( "failed to create network routing controller: %v" , err )
151
152
}
152
153
153
154
_ , err = nodeInformer .AddEventHandler (nrc .NodeEventHandler )
154
155
if err != nil {
155
- return errors . New ( "Failed to add NodeEventHandler: " + err . Error () )
156
+ return fmt . Errorf ( "failed to add NodeEventHandler: %v" , err )
156
157
}
157
158
_ , err = svcInformer .AddEventHandler (nrc .ServiceEventHandler )
158
159
if err != nil {
159
- return errors . New ( "Failed to add ServiceEventHandler: " + err . Error () )
160
+ return fmt . Errorf ( "failed to add ServiceEventHandler: %v" , err )
160
161
}
161
162
_ , err = epInformer .AddEventHandler (nrc .EndpointsEventHandler )
162
163
if err != nil {
163
- return errors . New ( "Failed to add EndpointsEventHandler: " + err . Error () )
164
+ return fmt . Errorf ( "failed to add EndpointsEventHandler: %v" , err )
164
165
}
165
166
166
167
wg .Add (1 )
@@ -178,16 +179,16 @@ func (kr *KubeRouter) Run() error {
178
179
nsc , err := proxy .NewNetworkServicesController (kr .Client , kr .Config ,
179
180
svcInformer , epInformer , podInformer , & ipsetMutex )
180
181
if err != nil {
181
- return errors . New ( "Failed to create network services controller: " + err . Error () )
182
+ return fmt . Errorf ( "failed to create network services controller: %v" , err )
182
183
}
183
184
184
185
_ , err = svcInformer .AddEventHandler (nsc .ServiceEventHandler )
185
186
if err != nil {
186
- return errors . New ( "Failed to add ServiceEventHandler: " + err . Error () )
187
+ return fmt . Errorf ( "failed to add ServiceEventHandler: %v" , err )
187
188
}
188
189
_ , err = epInformer .AddEventHandler (nsc .EndpointsEventHandler )
189
190
if err != nil {
190
- return errors . New ( "Failed to add EndpointsEventHandler: " + err . Error () )
191
+ return fmt . Errorf ( "failed to add EndpointsEventHandler: %v" , err )
191
192
}
192
193
193
194
wg .Add (1 )
@@ -204,25 +205,25 @@ func (kr *KubeRouter) Run() error {
204
205
if kr .Config .RunFirewall {
205
206
iptablesCmdHandlers , ipSetHandlers , err := netpol .NewIPTablesHandlers (kr .Config )
206
207
if err != nil {
207
- return errors . New ( "Failed to create iptables handlers: " + err . Error () )
208
+ return fmt . Errorf ( "failed to create iptables handlers: %v" , err )
208
209
}
209
210
npc , err := netpol .NewNetworkPolicyController (kr .Client ,
210
211
kr .Config , podInformer , npInformer , nsInformer , & ipsetMutex , iptablesCmdHandlers , ipSetHandlers )
211
212
if err != nil {
212
- return errors . New ( "Failed to create network policy controller: " + err . Error () )
213
+ return fmt . Errorf ( "failed to create network policy controller: %v" , err )
213
214
}
214
215
215
216
_ , err = podInformer .AddEventHandler (npc .PodEventHandler )
216
217
if err != nil {
217
- return errors . New ( "Failed to add PodEventHandler: " + err . Error () )
218
+ return fmt . Errorf ( "failed to add PodEventHandler: %v" , err )
218
219
}
219
220
_ , err = nsInformer .AddEventHandler (npc .NamespaceEventHandler )
220
221
if err != nil {
221
- return errors . New ( "Failed to add NamespaceEventHandler: " + err . Error () )
222
+ return fmt . Errorf ( "failed to add NamespaceEventHandler: %v" , err )
222
223
}
223
224
_ , err = npInformer .AddEventHandler (npc .NetworkPolicyEventHandler )
224
225
if err != nil {
225
- return errors . New ( "Failed to add NetworkPolicyEventHandler: " + err . Error () )
226
+ return fmt . Errorf ( "failed to add NetworkPolicyEventHandler: %v" , err )
226
227
}
227
228
228
229
wg .Add (1 )
@@ -233,10 +234,13 @@ func (kr *KubeRouter) Run() error {
233
234
klog .V (0 ).Info ("running load balancer allocator controller" )
234
235
lbc , err := lballoc .NewLoadBalancerController (kr .Client , kr .Config , svcInformer )
235
236
if err != nil {
236
- return errors . New ( "Failed to create load balancer allocator: " + err . Error () )
237
+ return fmt . Errorf ( "failed to create load balancer allocator: %v" , err )
237
238
}
238
239
239
- svcInformer .AddEventHandler (lbc )
240
+ _ , err = svcInformer .AddEventHandler (lbc )
241
+ if err != nil {
242
+ return fmt .Errorf ("failed to add ServiceEventHandler: %v" , err )
243
+ }
240
244
241
245
wg .Add (1 )
242
246
go lbc .Run (healthChan , stopCh , & wg )
@@ -265,7 +269,7 @@ func (kr *KubeRouter) CacheSyncOrTimeout(informerFactory informers.SharedInforme
265
269
266
270
select {
267
271
case <- time .After (kr .Config .CacheSyncTimeout ):
268
- return errors . New ( kr .Config .CacheSyncTimeout .String () + " timeout" )
272
+ return fmt . Errorf ( "%s timeout" , kr .Config .CacheSyncTimeout .String ())
269
273
case <- syncOverCh :
270
274
return nil
271
275
}
0 commit comments