MCPcopy Create free account
hub / github.com/cloudbase/garm / formatOneEnterprise

Function formatOneEnterprise

cmd/garm-cli/cmd/enterprise.go:261–300  ·  view source on GitHub ↗
(enterprise params.Enterprise)

Source from the content-addressed store, hash-verified

259}
260
261func formatOneEnterprise(enterprise params.Enterprise) {
262 if outputFormat == common.OutputFormatJSON {
263 printAsJSON(enterprise)
264 return
265 }
266 t := table.NewWriter()
267 rowConfigAutoMerge := table.RowConfig{AutoMerge: true}
268 header := table.Row{"Field", "Value"}
269 t.AppendHeader(header)
270 t.AppendRow(table.Row{"ID", enterprise.ID})
271 t.AppendRow(table.Row{"Created At", enterprise.CreatedAt})
272 t.AppendRow(table.Row{"Updated At", enterprise.UpdatedAt})
273 t.AppendRow(table.Row{"Name", enterprise.Name})
274 t.AppendRow(table.Row{"Endpoint", enterprise.Endpoint.Name})
275 t.AppendRow(table.Row{"Pool balancer type", enterprise.GetBalancerType()})
276 t.AppendRow(table.Row{"Credentials", enterprise.Credentials.Name})
277 t.AppendRow(table.Row{"Agent Mode", enterprise.AgentMode})
278 t.AppendRow(table.Row{"Pool manager running", enterprise.PoolManagerStatus.IsRunning})
279 if !enterprise.PoolManagerStatus.IsRunning {
280 t.AppendRow(table.Row{"Failure reason", enterprise.PoolManagerStatus.FailureReason})
281 }
282
283 if len(enterprise.Pools) > 0 {
284 for _, pool := range enterprise.Pools {
285 t.AppendRow(table.Row{"Pools", pool.ID}, rowConfigAutoMerge)
286 }
287 }
288
289 if len(enterprise.Events) > 0 {
290 for _, event := range enterprise.Events {
291 t.AppendRow(table.Row{"Events", fmt.Sprintf("%s %s: %s", event.CreatedAt.Format("2006-01-02T15:04:05"), strings.ToUpper(string(event.EventLevel)), event.Message)}, rowConfigAutoMerge)
292 }
293 }
294 t.SetColumnConfigs([]table.ColumnConfig{
295 {Number: 1, AutoMerge: true},
296 {Number: 2, AutoMerge: false, WidthMax: 100},
297 })
298
299 fmt.Println(t.Render())
300}

Callers 1

enterprise.goFile · 0.85

Calls 2

printAsJSONFunction · 0.85
GetBalancerTypeMethod · 0.45

Tested by

no test coverage detected