in pkg/table/table.go [121:171]
func AppendTemplateNetworkInterfaces(h *ec2helper.EC2Helper, data [][]string,
networkInterfaces []*ec2.LaunchTemplateInstanceNetworkInterfaceSpecification) ([][]string, error) {
if networkInterfaces != nil && len(networkInterfaces) > 0 {
subnetsMap := map[string]string{}
// Gather information about subnets
for _, networkInterface := range networkInterfaces {
if networkInterface.SubnetId != nil {
subnet, err := h.GetSubnetById(*networkInterface.SubnetId)
if err != nil {
return nil, err
}
// Format the name of the subnet
vpcId := *subnet.VpcId
subnetName := fmt.Sprintf("%s:%s", vpcId, *subnet.SubnetId)
subnetTagName := ec2helper.GetTagName(subnet.Tags)
if subnetTagName != nil {
subnetName = fmt.Sprintf("%s(%s:%s)", *subnetTagName, vpcId, *subnet.SubnetId)
}
subnetsMap[*subnet.SubnetId] = subnetName
}
}
if len(subnetsMap) > 0 {
// Append to the table
subnetsData := [][]string{}
counter := 1
// Sort the keys
var keys []string
for k := range subnetsMap {
keys = append(keys, k)
}
sort.Strings(keys)
for _, key := range keys {
subnetsData = append(subnetsData, []string{"", fmt.Sprintf("%d.%s", counter, subnetsMap[key])})
counter++
}
subnetsData[0][0] = "Subnets"
data = append(data, subnetsData...)
return data, nil
}
}
data = append(data, []string{"Subnets", "not specified"})
return data, nil
}