1515package main
1616
1717import (
18+ "errors"
19+ "fmt"
1820 "io"
1921
20- "github.com/pkg/errors"
21-
2222 "github.com/ahmetb/kubectx/internal/kubeconfig"
2323 "github.com/ahmetb/kubectx/internal/printer"
2424)
@@ -37,39 +37,42 @@ func (op SwitchOp) Run(_, stderr io.Writer) error {
3737 newCtx , err = switchContext (op .Target )
3838 }
3939 if err != nil {
40- return errors . Wrap ( err , "failed to switch context" )
40+ return fmt . Errorf ( "failed to switch context, %w" , err )
4141 }
4242 err = printer .Success (stderr , "Switched to context \" %s\" ." , printer .SuccessColor .Sprint (newCtx ))
43- return errors .Wrap (err , "print error" )
43+ if err != nil {
44+ return fmt .Errorf ("print error, %w" , err )
45+ }
46+ return nil
4447}
4548
4649// switchContext switches to specified context name.
4750func switchContext (name string ) (string , error ) {
4851 prevCtxFile , err := kubectxPrevCtxFile ()
4952 if err != nil {
50- return "" , errors . Wrap ( err , "failed to determine state file" )
53+ return "" , fmt . Errorf ( "failed to determine state file, %w" , err )
5154 }
5255
5356 kc := new (kubeconfig.Kubeconfig ).WithLoader (kubeconfig .DefaultLoader )
5457 defer kc .Close ()
5558 if err := kc .Parse (); err != nil {
56- return "" , errors . Wrap ( err , "kubeconfig error" )
59+ return "" , fmt . Errorf ( "kubeconfig error, %w" , err )
5760 }
5861
5962 prev := kc .GetCurrentContext ()
6063 if ! kc .ContextExists (name ) {
61- return "" , errors .Errorf ("no context exists with the name: \" %s\" " , name )
64+ return "" , fmt .Errorf ("no context exists with the name: \" %s\" " , name )
6265 }
6366 if err := kc .ModifyCurrentContext (name ); err != nil {
6467 return "" , err
6568 }
6669 if err := kc .Save (); err != nil {
67- return "" , errors . Wrap ( err , "failed to save kubeconfig" )
70+ return "" , fmt . Errorf ( "failed to save kubeconfig, %w" , err )
6871 }
6972
7073 if prev != name {
7174 if err := writeLastContext (prevCtxFile , prev ); err != nil {
72- return "" , errors . Wrap ( err , "failed to save previous context name" )
75+ return "" , fmt . Errorf ( "failed to save previous context name, %w" , err )
7376 }
7477 }
7578 return name , nil
@@ -79,11 +82,11 @@ func switchContext(name string) (string, error) {
7982func swapContext () (string , error ) {
8083 prevCtxFile , err := kubectxPrevCtxFile ()
8184 if err != nil {
82- return "" , errors . Wrap ( err , "failed to determine state file" )
85+ return "" , fmt . Errorf ( "failed to determine state file, %w" , err )
8386 }
8487 prev , err := readLastContext (prevCtxFile )
8588 if err != nil {
86- return "" , errors . Wrap ( err , "failed to read previous context file" )
89+ return "" , fmt . Errorf ( "failed to read previous context file, %w" , err )
8790 }
8891 if prev == "" {
8992 return "" , errors .New ("no previous context found" )
0 commit comments