func()

in network/network.go [50:88]


func (info *NetworkInfo) GetHostComputeNetworkConfig() *hcn.HostComputeNetwork {
	subnets := []hcn.Subnet{}
	for _, subnet := range info.Subnets {
		subnets = append(subnets, *subnet.GetHostComputeSubnetConfig())
	}

	hcnPolicies := GetHostComputeNetworkPolicies(info.Policies)
	// Note: HostComputeNetwork has NetAdapterNameNetworkPolicySetting instead of a NetworkAdapterName/InterfaceName field.
	if info.InterfaceName != "" {
		hcnPolicies = append(hcnPolicies, CreateNetworkPolicySetting(info.InterfaceName))
	}

	ipams := []hcn.Ipam{}
	if len(subnets) > 0 {
		ipams = []hcn.Ipam{
			{
				Type:    "Static",
				Subnets: subnets,
			},
		}
	}

	return &hcn.HostComputeNetwork{
		Name:  info.Name,
		Type:  hcn.NetworkType(info.Type),
		Ipams: ipams,
		Dns: hcn.Dns{
			Domain:     info.DNS.Domain,
			Search:     info.DNS.Search,
			ServerList: info.DNS.Nameservers,
			Options:    info.DNS.Options,
		},
		SchemaVersion: hcn.SchemaVersion{
			Major: 2,
			Minor: 0,
		},
		Policies: hcnPolicies,
	}
}