@@ -4,8 +4,10 @@ import (
44 "context"
55 "fmt"
66 "strconv"
7+ "strings"
78 "time"
89
10+ "github.com/openmcp-project/controller-utils/pkg/collections"
911 "github.com/openmcp-project/controller-utils/pkg/logging"
1012 corev1 "k8s.io/api/core/v1"
1113 rbacv1 "k8s.io/api/rbac/v1"
@@ -22,6 +24,7 @@ import (
2224 gcpv1alpha1 "github.com/openmcp-project/cluster-provider-gardener/api/core/v1alpha1"
2325 clustersv1alpha1 "github.com/openmcp-project/openmcp-operator/api/clusters/v1alpha1"
2426 clustersconst "github.com/openmcp-project/openmcp-operator/api/clusters/v1alpha1/constants"
27+ commonapi "github.com/openmcp-project/openmcp-operator/api/common"
2528 openmcpclusterutils "github.com/openmcp-project/openmcp-operator/lib/utils"
2629
2730 gardenv1beta1 "github.com/openmcp-project/mcp-operator/api/external/gardener/pkg/apis/core/v1beta1"
@@ -107,7 +110,9 @@ func v2HandleCreateOrUpdate(ctx context.Context, as *openmcpv1alpha1.APIServer,
107110 clusterReadyCon .Status = openmcpv1alpha1 .ComponentConditionStatusFromBool (cluster .Status .Phase == clustersv1alpha1 .CLUSTER_PHASE_READY )
108111 if clusterReadyCon .Status != openmcpv1alpha1 .ComponentConditionStatusTrue {
109112 clusterReadyCon .Reason = cconst .ReasonClusterNotReady
110- clusterReadyCon .Message = cluster .Status .Message
113+ clusterReadyCon .Message = strings .Join (collections .ProjectSlice (cluster .Status .Conditions , func (con metav1.Condition ) string {
114+ return fmt .Sprintf ("[%s] %s" , con .Reason , con .Message )
115+ }), "\n " )
111116 if clusterReadyCon .Message == "" {
112117 clusterReadyCon .Message = "Cluster is not ready yet, no further information available"
113118 }
@@ -160,11 +165,10 @@ func v2HandleCreateOrUpdate(ctx context.Context, as *openmcpv1alpha1.APIServer,
160165 } else {
161166 clusterRequestGrantedCon .Status = openmcpv1alpha1 .ComponentConditionStatusFalse
162167 clusterRequestGrantedCon .Reason = cconst .ReasonClusterRequestNotGranted
163- crReason := cr .Status .Reason
164- crMessage := cr .Status .Message
165- if crReason == "" {
166- crReason = "<NoReason>"
167- }
168+ crReason := cconst .ReasonClusterRequestNotGranted
169+ crMessage := strings .Join (collections .ProjectSlice (cr .Status .Conditions , func (con metav1.Condition ) string {
170+ return fmt .Sprintf ("[%s] %s" , con .Reason , con .Message )
171+ }), "\n " )
168172 if crMessage == "" {
169173 crMessage = "<NoMessage>"
170174 }
@@ -228,11 +232,10 @@ func v2HandleCreateOrUpdate(ctx context.Context, as *openmcpv1alpha1.APIServer,
228232 if ar .Status .Phase != clustersv1alpha1 .REQUEST_GRANTED && ar .Status .SecretRef == nil {
229233 accessRequestGrantedCon .Status = openmcpv1alpha1 .ComponentConditionStatusFalse
230234 accessRequestGrantedCon .Reason = cconst .ReasonAccessRequestNotGranted
231- arReason := cr .Status .Reason
232- arMessage := cr .Status .Message
233- if arReason == "" {
234- arReason = "<NoReason>"
235- }
235+ arReason := cconst .ReasonAccessRequestNotGranted
236+ arMessage := strings .Join (collections .ProjectSlice (ar .Status .Conditions , func (con metav1.Condition ) string {
237+ return fmt .Sprintf ("[%s] %s" , con .Reason , con .Message )
238+ }), "\n " )
236239 if arMessage == "" {
237240 arMessage = "<NoMessage>"
238241 }
@@ -472,11 +475,11 @@ func (m *AccessRequestMutator) MetadataMutator() resources.MetadataMutator {
472475// Mutate implements resources.Mutator.
473476func (m * AccessRequestMutator ) Mutate (r * clustersv1alpha1.AccessRequest ) error {
474477 if m .isClusterRef && r .Spec .ClusterRef == nil {
475- r .Spec .ClusterRef = & clustersv1alpha1. NamespacedObjectReference {}
478+ r .Spec .ClusterRef = & commonapi. ObjectReference {}
476479 r .Spec .ClusterRef .Name = m .refName
477480 r .Spec .ClusterRef .Namespace = m .refNamespace
478481 } else if ! m .isClusterRef && r .Spec .RequestRef == nil {
479- r .Spec .RequestRef = & clustersv1alpha1. NamespacedObjectReference {}
482+ r .Spec .RequestRef = & commonapi. ObjectReference {}
480483 r .Spec .RequestRef .Name = m .refName
481484 r .Spec .RequestRef .Namespace = m .refNamespace
482485 }
0 commit comments