Skip to content

Commit 703b1a7

Browse files
committed
OCPBUGS-63028: filtering only PEs from cluster list
1 parent 4820a10 commit 703b1a7

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

pkg/asset/installconfig/nutanix/nutanix.go

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -172,6 +172,32 @@ func getPrismElement(ctx context.Context, client *nutanixclientv3.Client) (*nuta
172172
return nil, errors.New("did not find any prism element clusters")
173173
}
174174

175+
// Filter out Prism Central clusters - we only want Prism Elements
176+
var filteredPes []*nutanixclientv3.ClusterIntentResponse
177+
for _, p := range pes {
178+
// Skip Prism Central clusters by checking the service list
179+
if p.Status != nil && p.Status.Resources != nil && p.Status.Resources.Config != nil &&
180+
p.Status.Resources.Config.ServiceList != nil {
181+
isPrismCentral := false
182+
for _, service := range p.Status.Resources.Config.ServiceList {
183+
if service != nil && *service == "PRISM_CENTRAL" {
184+
isPrismCentral = true
185+
break
186+
}
187+
}
188+
if isPrismCentral {
189+
continue
190+
}
191+
}
192+
filteredPes = append(filteredPes, p)
193+
}
194+
195+
pes = filteredPes
196+
197+
if len(pes) == 0 {
198+
return nil, errors.New("did not find any prism element clusters")
199+
}
200+
175201
if len(pes) == 1 {
176202
pe.UUID = *pes[0].Metadata.UUID
177203
pe.Endpoint.Address = *pes[0].Spec.Resources.Network.ExternalIP

0 commit comments

Comments
 (0)