@@ -84,7 +84,7 @@ func allowedXRay(gvr client.GVR) bool {
84
84
return ok
85
85
}
86
86
87
- func (c * Command ) contextCmd (p * cmd.Interpreter ) error {
87
+ func (c * Command ) contextCmd (p * cmd.Interpreter , pushCmd bool ) error {
88
88
ct , ok := p .ContextArg ()
89
89
if ! ok {
90
90
return fmt .Errorf ("invalid command use `context xxx`" )
@@ -99,7 +99,7 @@ func (c *Command) contextCmd(p *cmd.Interpreter) error {
99
99
return err
100
100
}
101
101
102
- return c .exec (p , gvr , c .componentFor (gvr , ct , v ), true , true )
102
+ return c .exec (p , gvr , c .componentFor (gvr , ct , v ), true , pushCmd )
103
103
}
104
104
105
105
func (c * Command ) namespaceCmd (p * cmd.Interpreter ) bool {
@@ -115,17 +115,17 @@ func (c *Command) namespaceCmd(p *cmd.Interpreter) bool {
115
115
return false
116
116
}
117
117
118
- func (c * Command ) aliasCmd (p * cmd.Interpreter ) error {
118
+ func (c * Command ) aliasCmd (p * cmd.Interpreter , pushCmd bool ) error {
119
119
filter , _ := p .FilterArg ()
120
120
121
121
gvr := client .NewGVR ("aliases" )
122
122
v := NewAlias (gvr )
123
123
v .SetFilter (filter )
124
124
125
- return c .exec (p , gvr , v , false , true )
125
+ return c .exec (p , gvr , v , false , pushCmd )
126
126
}
127
127
128
- func (c * Command ) xrayCmd (p * cmd.Interpreter ) error {
128
+ func (c * Command ) xrayCmd (p * cmd.Interpreter , pushCmd bool ) error {
129
129
arg , cns , ok := p .XrayArgs ()
130
130
if ! ok {
131
131
return errors .New ("invalid command. use `xray xxx`" )
@@ -148,12 +148,12 @@ func (c *Command) xrayCmd(p *cmd.Interpreter) error {
148
148
return err
149
149
}
150
150
151
- return c .exec (p , client .NewGVR ("xrays" ), NewXray (gvr ), true , true )
151
+ return c .exec (p , client .NewGVR ("xrays" ), NewXray (gvr ), true , pushCmd )
152
152
}
153
153
154
154
// Run execs the command by showing associated display.
155
155
func (c * Command ) run (p * cmd.Interpreter , fqn string , clearStack bool , pushCmd bool ) error {
156
- if c .specialCmd (p ) {
156
+ if c .specialCmd (p , pushCmd ) {
157
157
return nil
158
158
}
159
159
gvr , v , err := c .viewMetaFor (p )
@@ -233,7 +233,7 @@ func (c *Command) defaultCmd(isRoot bool) error {
233
233
return nil
234
234
}
235
235
236
- func (c * Command ) specialCmd (p * cmd.Interpreter ) bool {
236
+ func (c * Command ) specialCmd (p * cmd.Interpreter , pushCmd bool ) bool {
237
237
switch {
238
238
case p .IsCowCmd ():
239
239
if msg , ok := p .CowArg (); ! ok {
@@ -246,11 +246,11 @@ func (c *Command) specialCmd(p *cmd.Interpreter) bool {
246
246
case p .IsHelpCmd ():
247
247
_ = c .app .helpCmd (nil )
248
248
case p .IsAliasCmd ():
249
- if err := c .aliasCmd (p ); err != nil {
249
+ if err := c .aliasCmd (p , pushCmd ); err != nil {
250
250
c .app .Flash ().Err (err )
251
251
}
252
252
case p .IsXrayCmd ():
253
- if err := c .xrayCmd (p ); err != nil {
253
+ if err := c .xrayCmd (p , pushCmd ); err != nil {
254
254
c .app .Flash ().Err (err )
255
255
}
256
256
case p .IsRBACCmd ():
@@ -260,15 +260,15 @@ func (c *Command) specialCmd(p *cmd.Interpreter) bool {
260
260
c .app .Flash ().Err (err )
261
261
}
262
262
case p .IsContextCmd ():
263
- if err := c .contextCmd (p ); err != nil {
263
+ if err := c .contextCmd (p , pushCmd ); err != nil {
264
264
c .app .Flash ().Err (err )
265
265
}
266
266
case p .IsNamespaceCmd ():
267
267
return c .namespaceCmd (p )
268
268
case p .IsDirCmd ():
269
269
if a , ok := p .DirArg (); ! ok {
270
270
c .app .Flash ().Errf ("Invalid command. Use `dir xxx`" )
271
- } else if err := c .app .dirCmd (a ); err != nil {
271
+ } else if err := c .app .dirCmd (a , pushCmd ); err != nil {
272
272
c .app .Flash ().Err (err )
273
273
}
274
274
default :
0 commit comments