Skip to content

Commit fb4c307

Browse files
committed
fix(object-controller): use COS revision in rollout status
Format ClusterObjectSet rollout messages from spec.revision instead of the bundle-version annotation. Update controller and ClusterExtension E2E expectations for the numeric revision. Signed-off-by: Fabricio Aguiar <fabricio.aguiar@gmail.com> rh-pre-commit.version: 2.3.2 rh-pre-commit.check-secrets: ENABLED
1 parent aa82c0d commit fb4c307

3 files changed

Lines changed: 15 additions & 15 deletions

File tree

‎internal/object-controller/controllers/clusterobjectset_controller.go‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -224,9 +224,9 @@ func (c *ClusterObjectSetReconciler) reconcile(ctx context.Context, cos *ocv1.Cl
224224
}
225225
}
226226

227-
revVersion := cos.GetAnnotations()[labels.BundleVersionKey]
227+
revisionNumber := cos.Spec.Revision
228228
if rres.InTransition() {
229-
markAsProgressing(l, cos, ocv1.ReasonRollingOut, fmt.Sprintf("Revision %s is rolling out.", revVersion), isDeadlineExceeded)
229+
markAsProgressing(l, cos, ocv1.ReasonRollingOut, fmt.Sprintf("Revision %d is rolling out.", revisionNumber), isDeadlineExceeded)
230230
}
231231

232232
//nolint:nestif
@@ -246,7 +246,7 @@ func (c *ClusterObjectSetReconciler) reconcile(ctx context.Context, cos *ocv1.Cl
246246
}
247247
}
248248

249-
markAsProgressing(l, cos, ocv1.ReasonSucceeded, fmt.Sprintf("Revision %s has rolled out.", revVersion), isDeadlineExceeded)
249+
markAsProgressing(l, cos, ocv1.ReasonSucceeded, fmt.Sprintf("Revision %d has rolled out.", revisionNumber), isDeadlineExceeded)
250250
markAsAvailable(cos, ocv1.ClusterObjectSetReasonProbesSucceeded, "Objects are available and pass all probes.")
251251

252252
// Record the timestamp of the first time the revision was observed to be
@@ -286,9 +286,9 @@ func (c *ClusterObjectSetReconciler) reconcile(ctx context.Context, cos *ocv1.Cl
286286
if len(probeFailureMsgs) > 0 {
287287
markAsUnavailable(cos, ocv1.ClusterObjectSetReasonProbeFailure, strings.Join(probeFailureMsgs, "\n"))
288288
} else {
289-
markAsUnavailable(cos, ocv1.ReasonRollingOut, fmt.Sprintf("Revision %s is rolling out.", revVersion))
289+
markAsUnavailable(cos, ocv1.ReasonRollingOut, fmt.Sprintf("Revision %d is rolling out.", revisionNumber))
290290
}
291-
markAsProgressing(l, cos, ocv1.ReasonRollingOut, fmt.Sprintf("Revision %s is rolling out.", revVersion), isDeadlineExceeded)
291+
markAsProgressing(l, cos, ocv1.ReasonRollingOut, fmt.Sprintf("Revision %d is rolling out.", revisionNumber), isDeadlineExceeded)
292292
if hasDeadline && !isDeadlineExceeded {
293293
return ctrl.Result{RequeueAfter: remaining}, nil
294294
}

‎internal/object-controller/controllers/clusterobjectset_controller_test.go‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_RevisionReconciliation(t *testing
9898
Type: ocv1.ClusterObjectSetTypeAvailable,
9999
Status: metav1.ConditionTrue,
100100
Reason: ocv1.ClusterObjectSetReasonProbesSucceeded,
101-
Message: "Revision 1.0.0 is rolled out.",
101+
Message: "Revision 1 is rolled out.",
102102
ObservedGeneration: 1,
103103
})
104104
return []client.Object{ext, rev1}
@@ -136,7 +136,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_RevisionReconciliation(t *testing
136136
require.NotNil(t, cond)
137137
require.Equal(t, metav1.ConditionFalse, cond.Status)
138138
require.Equal(t, ocv1.ReasonRollingOut, cond.Reason)
139-
require.Equal(t, "Revision 1.0.0 is rolling out.", cond.Message)
139+
require.Equal(t, "Revision 1 is rolling out.", cond.Message)
140140
require.Equal(t, int64(1), cond.ObservedGeneration)
141141
},
142142
},
@@ -360,7 +360,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_RevisionReconciliation(t *testing
360360
require.NotNil(t, cond)
361361
require.Equal(t, metav1.ConditionTrue, cond.Status)
362362
require.Equal(t, ocv1.ReasonRollingOut, cond.Reason)
363-
require.Equal(t, "Revision 1.0.0 is rolling out.", cond.Message)
363+
require.Equal(t, "Revision 1 is rolling out.", cond.Message)
364364
require.Equal(t, int64(1), cond.ObservedGeneration)
365365
},
366366
},
@@ -378,7 +378,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_RevisionReconciliation(t *testing
378378
Type: ocv1.TypeProgressing,
379379
Status: metav1.ConditionTrue,
380380
Reason: ocv1.ReasonRollingOut,
381-
Message: "Revision 1.0.0 is rolling out.",
381+
Message: "Revision 1 is rolling out.",
382382
ObservedGeneration: 1,
383383
})
384384
return []client.Object{ext, rev1}
@@ -393,7 +393,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_RevisionReconciliation(t *testing
393393
require.NotNil(t, cond)
394394
require.Equal(t, metav1.ConditionTrue, cond.Status)
395395
require.Equal(t, ocv1.ReasonSucceeded, cond.Reason)
396-
require.Equal(t, "Revision 1.0.0 has rolled out.", cond.Message)
396+
require.Equal(t, "Revision 1 has rolled out.", cond.Message)
397397
require.Equal(t, int64(1), cond.ObservedGeneration)
398398
},
399399
},
@@ -425,7 +425,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_RevisionReconciliation(t *testing
425425
require.NotNil(t, cond)
426426
require.Equal(t, metav1.ConditionTrue, cond.Status)
427427
require.Equal(t, ocv1.ReasonSucceeded, cond.Reason)
428-
require.Equal(t, "Revision 1.0.0 has rolled out.", cond.Message)
428+
require.Equal(t, "Revision 1 has rolled out.", cond.Message)
429429
require.Equal(t, int64(1), cond.ObservedGeneration)
430430

431431
require.False(t, rev.Status.CompletedAt.IsZero(), "completedAt should be set on successful rollout")
@@ -1097,7 +1097,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_ProgressDeadline(t *testing.T) {
10971097
Type: ocv1.ClusterObjectSetTypeProgressing,
10981098
Status: metav1.ConditionFalse,
10991099
Reason: ocv1.ReasonProgressDeadlineExceeded,
1100-
Message: "Revision has not rolled out for 1 minute(s). Last status: Revision 1.0.0 is rolling out.",
1100+
Message: "Revision has not rolled out for 1 minute(s). Last status: Revision 1 is rolling out.",
11011101
ObservedGeneration: rev1.Generation,
11021102
})
11031103
return []client.Object{rev1, ext}
@@ -1116,7 +1116,7 @@ func Test_ClusterObjectSetReconciler_Reconcile_ProgressDeadline(t *testing.T) {
11161116
require.NotNil(t, cnd)
11171117
require.Equal(t, metav1.ConditionTrue, cnd.Status)
11181118
require.Equal(t, ocv1.ReasonSucceeded, cnd.Reason)
1119-
require.Equal(t, "Revision 1.0.0 has rolled out.", cnd.Message)
1119+
require.Equal(t, "Revision 1 has rolled out.", cnd.Message)
11201120
},
11211121
},
11221122
{

‎test/e2e/features/install.feature‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -373,7 +373,7 @@ Feature: Install ClusterExtension
373373
Then ClusterObjectSet "${NAME}-1" reports Progressing as False with Reason ProgressDeadlineExceeded
374374
And ClusterExtension reports Progressing as False with Reason ProgressDeadlineExceeded and Message:
375375
"""
376-
Revision has not rolled out for 1 minute(s). Last status: Revision 1.0.2 is rolling out.
376+
Revision has not rolled out for 1 minute(s). Last status: Revision 1 is rolling out.
377377
"""
378378
And ClusterExtension reports Progressing transition between 1 and 2 minutes since its creation
379379

@@ -407,7 +407,7 @@ Feature: Install ClusterExtension
407407
Then ClusterObjectSet "${NAME}-1" reports Progressing as False with Reason ProgressDeadlineExceeded
408408
And ClusterExtension reports Progressing as False with Reason ProgressDeadlineExceeded and Message:
409409
"""
410-
Revision has not rolled out for 1 minute(s). Last status: Revision 1.0.3 is rolling out.
410+
Revision has not rolled out for 1 minute(s). Last status: Revision 1 is rolling out.
411411
"""
412412
And ClusterExtension reports Progressing transition between 1 and 2 minutes since its creation
413413

0 commit comments

Comments
 (0)