@@ -16,6 +16,7 @@ import (
16
16
kerrors "k8s.io/apimachinery/pkg/util/errors"
17
17
"k8s.io/apimachinery/pkg/util/sets"
18
18
kapi "k8s.io/kubernetes/pkg/api"
19
+ externalclientset "k8s.io/kubernetes/pkg/client/clientset_generated/clientset"
19
20
kclientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
20
21
"k8s.io/kubernetes/pkg/kubectl/resource"
21
22
kprinters "k8s.io/kubernetes/pkg/printers"
@@ -24,10 +25,11 @@ import (
24
25
)
25
26
26
27
type NodeOptions struct {
27
- DefaultNamespace string
28
- KubeClient kclientset.Interface
29
- Writer io.Writer
30
- ErrWriter io.Writer
28
+ DefaultNamespace string
29
+ ExternalKubeClient externalclientset.Interface
30
+ KubeClient kclientset.Interface
31
+ Writer io.Writer
32
+ ErrWriter io.Writer
31
33
32
34
Mapper meta.RESTMapper
33
35
Typer runtime.ObjectTyper
@@ -50,17 +52,29 @@ func (n *NodeOptions) Complete(f *clientcmd.Factory, c *cobra.Command, args []st
50
52
if err != nil {
51
53
return err
52
54
}
55
+
53
56
_ , kc , err := f .Clients ()
54
57
if err != nil {
55
58
return err
56
59
}
60
+
61
+ config , err := f .ClientConfig ()
62
+ if err != nil {
63
+ return err
64
+ }
65
+ externalkc , err := externalclientset .NewForConfig (config )
66
+ if err != nil {
67
+ return err
68
+ }
69
+
57
70
cmdPrinter , err := f .PrinterForCommand (c , false , nil , kprinters.PrintOptions {})
58
71
if err != nil {
59
72
return err
60
73
}
61
74
mapper , typer := f .Object ()
62
75
63
76
n .DefaultNamespace = defaultNamespace
77
+ n .ExternalKubeClient = externalkc
64
78
n .KubeClient = kc
65
79
n .Writer = out
66
80
n .ErrWriter = errout
0 commit comments