Skip to content

Commit ce1ea02

Browse files
authored
Merge pull request #8604 from mercedes-benz/tobiasgiese/fix-clusterctl-describe-cluster-nil-pointer
🐛 Return error on infra cluster and control plane discovery
2 parents e641738 + f928305 commit ce1ea02

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

cmd/clusterctl/client/tree/discovery.go

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ package tree
1919
import (
2020
"context"
2121

22+
"github.com/pkg/errors"
2223
corev1 "k8s.io/api/core/v1"
2324
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2425
unstructured "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
@@ -83,9 +84,11 @@ func Discovery(ctx context.Context, c client.Client, namespace, name string, opt
8384
tree := NewObjectTree(cluster, options.toObjectTreeOptions())
8485

8586
// Adds cluster infra
86-
if clusterInfra, err := external.Get(ctx, c, cluster.Spec.InfrastructureRef, cluster.Namespace); err == nil {
87-
tree.Add(cluster, clusterInfra, ObjectMetaName("ClusterInfrastructure"))
87+
clusterInfra, err := external.Get(ctx, c, cluster.Spec.InfrastructureRef, cluster.Namespace)
88+
if err != nil {
89+
return nil, errors.Wrap(err, "get InfraCluster reference from Cluster")
8890
}
91+
tree.Add(cluster, clusterInfra, ObjectMetaName("ClusterInfrastructure"))
8992

9093
if options.ShowClusterResourceSets {
9194
addClusterResourceSetsToObjectTree(ctx, c, cluster, tree)
@@ -119,9 +122,11 @@ func Discovery(ctx context.Context, c client.Client, namespace, name string, opt
119122
}
120123

121124
controlPlaneMachines := selectControlPlaneMachines(machinesList)
122-
for i := range controlPlaneMachines {
123-
cp := controlPlaneMachines[i]
124-
addMachineFunc(controlPlane, cp)
125+
if controlPlane != nil {
126+
for i := range controlPlaneMachines {
127+
cp := controlPlaneMachines[i]
128+
addMachineFunc(controlPlane, cp)
129+
}
125130
}
126131

127132
machinePoolList, err := getMachinePoolsInCluster(ctx, c, cluster.Namespace, cluster.Name)

0 commit comments

Comments
 (0)