in tpu-provisioner/internal/cloud/gke.go [167:197]
func (g *GKE) ListNodePools() ([]NodePoolRef, error) {
var refs []NodePoolRef
resp, err := g.NodePools.List(context.TODO())
if err != nil {
return nil, fmt.Errorf("listing node pools: %w", err)
}
for _, np := range resp.NodePools {
jsName, exists := np.Config.Labels[LabelJobSetName]
if !exists {
jsName = np.Config.Labels[LabelProvisionerNodepoolID]
}
jsNamespace, exists := np.Config.Labels[LabelJobSetNamespace]
if !exists {
jsNamespace = "default"
}
refs = append(refs, NodePoolRef{
Name: np.Name,
Error: np.Status == "ERROR",
Message: np.StatusMessage,
CreatedForJobSet: types.NamespacedName{
Name: jsName,
Namespace: jsNamespace,
},
})
}
return refs, nil
}