@@ -203,20 +203,33 @@ func printStatusTable(out io.Writer, infos []statusInfo, useColors bool) {
203
203
}
204
204
config := info .ConfigCounts .String ()
205
205
configColor := configColor (info .ConfigCounts )
206
- compoInfo := info .GetInfo ()
207
- grpcState := compoInfo .GRPCConnState .String ()
208
- var statusClr int
209
- // gRPC state does not make sense for StoneWork itself
210
- if info .GetMode () == client .ComponentStonework {
211
- grpcState = strings .Repeat ("-" , len ("Status" ))
212
- statusClr = tablewriter .FgHiBlackColor
206
+ grpcState := strings .Repeat ("-" , len ("Status" ))
207
+ statusClr := tablewriter .FgHiBlackColor
208
+ var ipAddr , grpcPort , httpPort string
209
+ if info .GetInfo () != nil {
210
+ compoInfo := info .GetInfo ()
211
+ ipAddr = compoInfo .IPAddr
212
+ grpcPort = strconv .Itoa (compoInfo .GRPCPort )
213
+ httpPort = strconv .Itoa (compoInfo .HTTPPort )
214
+ // gRPC state does not make sense for StoneWork itself
215
+ if info .GetMode () != client .ComponentStonework {
216
+ grpcState = compoInfo .GRPCConnState .String ()
217
+ statusClr = tablewriter .Normal
218
+ }
219
+ } else {
220
+ // TODO: this is standalone cnf related, currently using default values but these should be correctly detected
221
+ ipAddr = info .GetMetadata ()["containerIPAddress" ]
222
+ grpcPort = strconv .Itoa (client .DefaultPortGRPC )
223
+ httpPort = strconv .Itoa (client .DefaultPortHTTP )
213
224
}
214
- row = append (row ,
215
- compoInfo .IPAddr ,
216
- strconv .Itoa (compoInfo .GRPCPort ),
217
- strconv .Itoa (compoInfo .HTTPPort ),
225
+ row = append (
226
+ row ,
227
+ ipAddr ,
228
+ grpcPort ,
229
+ httpPort ,
218
230
grpcState ,
219
- config )
231
+ config ,
232
+ )
220
233
221
234
if useColors {
222
235
clrs = []tablewriter.Colors {{}, {}, {}, {}, {}, {statusClr }, {configColor }}
0 commit comments