9
9
"crypto/x509"
10
10
"encoding/hex"
11
11
"encoding/pem"
12
+ "errors"
12
13
"fmt"
13
14
"io"
14
15
"net"
@@ -32,7 +33,7 @@ import (
32
33
"github.com/k3s-io/k3s/pkg/util"
33
34
"github.com/k3s-io/k3s/pkg/version"
34
35
"github.com/k3s-io/k3s/pkg/vpn"
35
- "github.com/pkg/errors"
36
+ pkgerrors "github.com/pkg/errors"
36
37
certutil "github.com/rancher/dynamiclistener/cert"
37
38
"github.com/rancher/wharfie/pkg/registries"
38
39
"github.com/rancher/wrangler/v3/pkg/slice"
@@ -247,7 +248,7 @@ func upgradeOldNodePasswordPath(oldNodePasswordFile, newNodePasswordFile string)
247
248
func getKubeletServingCert (nodeName string , nodeIPs []net.IP , certFile , keyFile , nodePasswordFile string , info * clientaccess.Info ) error {
248
249
csr , err := getCSRBytes (keyFile )
249
250
if err != nil {
250
- return errors . Wrapf (err , "failed to create certificate request %s" , certFile )
251
+ return pkgerrors . WithMessagef (err , "failed to create certificate request %s" , certFile )
251
252
}
252
253
253
254
basename := filepath .Base (certFile )
@@ -261,11 +262,11 @@ func getKubeletServingCert(nodeName string, nodeIPs []net.IP, certFile, keyFile,
261
262
// must be used instead of the one we signed the CSR with.
262
263
certBytes , keyBytes := splitCertKeyPEM (body )
263
264
if err := os .WriteFile (certFile , certBytes , 0600 ); err != nil {
264
- return errors . Wrapf (err , "failed to write cert %s" , certFile )
265
+ return pkgerrors . WithMessagef (err , "failed to write cert %s" , certFile )
265
266
}
266
267
if len (keyBytes ) > 0 {
267
268
if err := os .WriteFile (keyFile , keyBytes , 0600 ); err != nil {
268
- return errors . Wrapf (err , "failed to write key %s" , keyFile )
269
+ return pkgerrors . WithMessagef (err , "failed to write key %s" , keyFile )
269
270
}
270
271
}
271
272
return nil
@@ -279,7 +280,7 @@ func getHostFile(filename string, info *clientaccess.Info) error {
279
280
return err
280
281
}
281
282
if err := os .WriteFile (filename , fileBytes , 0600 ); err != nil {
282
- return errors . Wrapf (err , "failed to write cert %s" , filename )
283
+ return pkgerrors . WithMessagef (err , "failed to write cert %s" , filename )
283
284
}
284
285
return nil
285
286
}
@@ -291,7 +292,7 @@ func getHostFile(filename string, info *clientaccess.Info) error {
291
292
func getClientCert (certFile , keyFile string , info * clientaccess.Info ) error {
292
293
csr , err := getCSRBytes (keyFile )
293
294
if err != nil {
294
- return errors . Wrapf (err , "failed to create certificate request %s" , certFile )
295
+ return pkgerrors . WithMessagef (err , "failed to create certificate request %s" , certFile )
295
296
}
296
297
297
298
basename := filepath .Base (certFile )
@@ -305,11 +306,11 @@ func getClientCert(certFile, keyFile string, info *clientaccess.Info) error {
305
306
// must be used instead of the one we signed the CSR with.
306
307
certBytes , keyBytes := splitCertKeyPEM (fileBytes )
307
308
if err := os .WriteFile (certFile , certBytes , 0600 ); err != nil {
308
- return errors . Wrapf (err , "failed to write cert %s" , certFile )
309
+ return pkgerrors . WithMessagef (err , "failed to write cert %s" , certFile )
309
310
}
310
311
if len (keyBytes ) > 0 {
311
312
if err := os .WriteFile (keyFile , keyBytes , 0600 ); err != nil {
312
- return errors . Wrapf (err , "failed to write key %s" , keyFile )
313
+ return pkgerrors . WithMessagef (err , "failed to write key %s" , keyFile )
313
314
}
314
315
}
315
316
return nil
@@ -352,7 +353,7 @@ func splitCertKeyPEM(bytes []byte) (certPem []byte, keyPem []byte) {
352
353
func getKubeletClientCert (certFile , keyFile , nodeName string , nodeIPs []net.IP , nodePasswordFile string , info * clientaccess.Info ) error {
353
354
csr , err := getCSRBytes (keyFile )
354
355
if err != nil {
355
- return errors . Wrapf (err , "failed to create certificate request %s" , certFile )
356
+ return pkgerrors . WithMessagef (err , "failed to create certificate request %s" , certFile )
356
357
}
357
358
358
359
basename := filepath .Base (certFile )
@@ -366,11 +367,11 @@ func getKubeletClientCert(certFile, keyFile, nodeName string, nodeIPs []net.IP,
366
367
// must be used instead of the one we signed the CSR with.
367
368
certBytes , keyBytes := splitCertKeyPEM (body )
368
369
if err := os .WriteFile (certFile , certBytes , 0600 ); err != nil {
369
- return errors . Wrapf (err , "failed to write cert %s" , certFile )
370
+ return pkgerrors . WithMessagef (err , "failed to write cert %s" , certFile )
370
371
}
371
372
if len (keyBytes ) > 0 {
372
373
if err := os .WriteFile (keyFile , keyBytes , 0600 ); err != nil {
373
- return errors . Wrapf (err , "failed to write key %s" , keyFile )
374
+ return pkgerrors . WithMessagef (err , "failed to write key %s" , keyFile )
374
375
}
375
376
}
376
377
return nil
@@ -437,13 +438,13 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
437
438
438
439
controlConfig , err := getConfig (info )
439
440
if err != nil {
440
- return nil , errors . Wrap (err , "failed to retrieve configuration from server" )
441
+ return nil , pkgerrors . WithMessage (err , "failed to retrieve configuration from server" )
441
442
}
442
443
// If the supervisor and externally-facing apiserver are not on the same port, tell the proxy where to find the apiserver.
443
444
if controlConfig .SupervisorPort != controlConfig .HTTPSPort {
444
445
isIPv6 := utilsnet .IsIPv6 (net .ParseIP (util .GetFirstValidIPString (envInfo .NodeIP )))
445
446
if err := proxy .SetAPIServerPort (controlConfig .HTTPSPort , isIPv6 ); err != nil {
446
- return nil , errors . Wrapf (err , "failed to set apiserver port to %d" , controlConfig .HTTPSPort )
447
+ return nil , pkgerrors . WithMessagef (err , "failed to set apiserver port to %d" , controlConfig .HTTPSPort )
447
448
}
448
449
}
449
450
apiServerURL := proxy .APIServerURL ()
@@ -452,7 +453,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
452
453
if controlConfig .FlannelBackend != config .FlannelBackendNone && len (envInfo .FlannelIface ) > 0 {
453
454
flannelIface , err = net .InterfaceByName (envInfo .FlannelIface )
454
455
if err != nil {
455
- return nil , errors . Wrapf (err , "unable to find interface %s" , envInfo .FlannelIface )
456
+ return nil , pkgerrors . WithMessagef (err , "unable to find interface %s" , envInfo .FlannelIface )
456
457
}
457
458
}
458
459
@@ -508,7 +509,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
508
509
vpnIPs = append (vpnIPs , vpnInfo .IPv4Address )
509
510
}
510
511
} else {
511
- return nil , errors .Errorf ("address family mismatch when assigning VPN addresses to node: node=%v, VPN ipv4=%v ipv6=%v" , nodeIPs , vpnInfo .IPv4Address , vpnInfo .IPv6Address )
512
+ return nil , fmt .Errorf ("address family mismatch when assigning VPN addresses to node: node=%v, VPN ipv4=%v ipv6=%v" , nodeIPs , vpnInfo .IPv4Address , vpnInfo .IPv6Address )
512
513
}
513
514
514
515
// Overwrite nodeip and flannel interface and throw a warning if user explicitly set those parameters
@@ -523,7 +524,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
523
524
nodeIPs = vpnIPs
524
525
flannelIface , err = net .InterfaceByName (vpnInfo .VPNInterface )
525
526
if err != nil {
526
- return nil , errors . Wrapf (err , "unable to find vpn interface: %s" , vpnInfo .VPNInterface )
527
+ return nil , pkgerrors . WithMessagef (err , "unable to find vpn interface: %s" , vpnInfo .VPNInterface )
527
528
}
528
529
}
529
530
}
@@ -558,12 +559,12 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
558
559
559
560
// Ask the server to sign our kubelet server cert.
560
561
if err := getKubeletServingCert (nodeName , nodeExternalAndInternalIPs , servingKubeletCert , servingKubeletKey , newNodePasswordFile , info ); err != nil {
561
- return nil , errors . Wrap (err , servingKubeletCert )
562
+ return nil , pkgerrors . WithMessage (err , servingKubeletCert )
562
563
}
563
564
564
565
// Ask the server to sign our kubelet client cert.
565
566
if err := getKubeletClientCert (clientKubeletCert , clientKubeletKey , nodeName , nodeIPs , newNodePasswordFile , info ); err != nil {
566
- return nil , errors . Wrap (err , clientKubeletCert )
567
+ return nil , pkgerrors . WithMessage (err , clientKubeletCert )
567
568
}
568
569
569
570
// Generate a kubeconfig for the kubelet.
@@ -577,7 +578,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
577
578
578
579
// Ask the server to sign our kube-proxy client cert.
579
580
if err := getClientCert (clientKubeProxyCert , clientKubeProxyKey , info ); err != nil {
580
- return nil , errors . Wrap (err , clientKubeProxyCert )
581
+ return nil , pkgerrors . WithMessage (err , clientKubeProxyCert )
581
582
}
582
583
583
584
// Generate a kubeconfig for kube-proxy.
@@ -591,7 +592,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
591
592
592
593
// Ask the server to sign our agent controller client cert.
593
594
if err := getClientCert (clientK3sControllerCert , clientK3sControllerKey , info ); err != nil {
594
- return nil , errors . Wrap (err , clientK3sControllerCert )
595
+ return nil , pkgerrors . WithMessage (err , clientK3sControllerCert )
595
596
}
596
597
597
598
// Generate a kubeconfig for the agent controller.
@@ -660,7 +661,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
660
661
} else {
661
662
listenAddress , _ , _ , err := util .GetDefaultAddresses (nodeIPs [0 ])
662
663
if err != nil {
663
- return nil , errors . Wrap (err , "cannot configure IPv4/IPv6 node-ip" )
664
+ return nil , pkgerrors . WithMessage (err , "cannot configure IPv4/IPv6 node-ip" )
664
665
}
665
666
nodeConfig .AgentConfig .ListenAddress = listenAddress
666
667
}
@@ -691,7 +692,7 @@ func get(ctx context.Context, envInfo *cmds.Agent, proxy proxy.Proxy) (*config.N
691
692
if ! nodeConfig .NoFlannel {
692
693
hostLocal , err := exec .LookPath ("host-local" )
693
694
if err != nil {
694
- return nil , errors . Wrapf (err , "failed to find host-local" )
695
+ return nil , pkgerrors . WithMessagef (err , "failed to find host-local" )
695
696
}
696
697
697
698
if envInfo .FlannelConf == "" {
@@ -858,7 +859,7 @@ func getKubeProxyDisabled(ctx context.Context, node *config.Node, proxy proxy.Pr
858
859
859
860
controlConfig , err := getConfig (info )
860
861
if err != nil {
861
- return false , errors . Wrap (err , "failed to retrieve configuration from server" )
862
+ return false , pkgerrors . WithMessage (err , "failed to retrieve configuration from server" )
862
863
}
863
864
864
865
return controlConfig .DisableKubeProxy , nil
0 commit comments