in pkg/selector/outputs/outputs.go [73:106]
func TableOutputShort(instanceTypeInfoSlice []*instancetypes.Details) []string {
if len(instanceTypeInfoSlice) == 0 {
return nil
}
w := new(tabwriter.Writer)
buf := new(bytes.Buffer)
w.Init(buf, 8, 8, 8, ' ', 0)
defer w.Flush()
headers := []interface{}{
"Instance Type",
"VCPUs",
"Mem (GiB)",
}
separators := []interface{}{}
headerFormat := ""
for _, header := range headers {
headerFormat = headerFormat + "%s\t"
separators = append(separators, strings.Repeat("-", len(header.(string))))
}
fmt.Fprintf(w, headerFormat, headers...)
fmt.Fprintf(w, "\n"+headerFormat, separators...)
for _, instanceTypeInfo := range instanceTypeInfoSlice {
fmt.Fprintf(w, "\n%s\t%d\t%s\t",
instanceTypeInfo.InstanceType,
*instanceTypeInfo.VCpuInfo.DefaultVCpus,
formatFloat(float64(*instanceTypeInfo.MemoryInfo.SizeInMiB)/1024.0),
)
}
w.Flush()
return []string{buf.String()}
}