🤬
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
  • ■ ■ ■ ■ ■ ■
    pkg/cloud_provider/client/vsphere.go
    skipped 95 lines
    96 96   }
    97 97   networks := []string{}
    98 98   for _, value := range nws {
    99  - if value.Reference().Type == "Network" {
    100  - network, _ := v.getNetworkName(value.Reference())
     99 + network, _ := v.getNetworkName(value.Reference())
     100 + if network != "" {
    101 101   networks = append(networks, network)
    102 102   }
    103 103   }
    skipped 20 lines
    124 124   
    125 125  func (v *vSphereClient) getNetworkName(ref types.ManagedObjectReference) (string, error) {
    126 126   pc := property.DefaultCollector(v.Client.Client)
    127  - ns := mo.Network{}
    128  - err := pc.RetrieveOne(context.TODO(), ref, []string{"summary", "name"}, &ns)
    129  - if err != nil {
    130  - return "", err
     127 + if ref.Type == "Network" {
     128 + ns := mo.Network{}
     129 + err := pc.RetrieveOne(context.TODO(), ref, []string{"summary", "name"}, &ns)
     130 + if err != nil {
     131 + return "", err
     132 + }
     133 + return ns.Name, nil
    131 134   }
    132  - return ns.Name, nil
     135 + if ref.Type == "DistributedVirtualPortgroup" {
     136 + ns := mo.DistributedVirtualPortgroup{}
     137 + err := pc.RetrieveOne(context.TODO(), ref, []string{"summary", "name"}, &ns)
     138 + if err != nil {
     139 + return "", err
     140 + }
     141 + return ns.Name, nil
     142 + }
     143 + 
     144 + return "", nil
    133 145  }
    134 146   
    135 147  func (v *vSphereClient) ListTemplates() ([]interface{}, error) {
    skipped 452 lines
Please wait...
Page is in error, reload to recover