Skip to content

Commit ff20029

Browse files
Zoltan Szaboopenshift-merge-bot[bot]
authored andcommitted
MGMT-20179: Fix IBIO status conditions
1 parent e8372a1 commit ff20029

5 files changed

Lines changed: 159 additions & 186 deletions

File tree

api/v1alpha1/imageclusterinstall_types.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,13 +25,15 @@ import (
2525
)
2626

2727
const (
28-
ImageNotReadyReason = "NotReady"
29-
ImageReadyReason = "Ready"
30-
ImageReadyMessage = "Image is ready for use"
28+
ConfigurationPendingReason = "ConfigurationPending"
29+
ConfigurationFailedReason = "ConfigurationFailed"
3130

32-
HostConfiguraionFailedReason = "HostConfigurationFailed"
33-
HostConfiguraionSucceededReason = "HostConfigurationSucceeded"
34-
HostConfigurationSucceededMessage = "Configuration image is attached to the referenced host"
31+
ImageCreationFailedReason = "ImageCreationFailed"
32+
ImageCreationPendingReason = "ImageCreationPending"
33+
34+
HostConfigurationPendingReason = "HostConfigurationPending"
35+
HostConfigurationFailedReason = "HostConfigurationFailed"
36+
HostConfigurationSucceededReason = "HostConfigurationSucceeded"
3537

3638
InstallTimedoutReason = "ClusterInstallationTimedOut"
3739
InstallTimedoutMessage = "Cluster installation is taking longer than expected"
@@ -42,10 +44,8 @@ const (
4244
InstallSucceededReason = "ClusterInstallationSucceeded"
4345
InstallSucceededMessage = "Cluster installation has succeeded"
4446

45-
HostValidationFailedReason = "HostValidationFailed"
46-
HostValidationSucceeded = "HostValidationSucceeded"
47-
HostValidationPending = "HostValidationPending"
48-
HostValidationsOKMsg = "The host's validations are passing and image is ready"
47+
HostValidationFailedReason = "HostValidationFailed"
48+
HostValidationPendingReason = "HostValidationPending"
4949
)
5050

5151
// ImageClusterInstallSpec defines the desired state of ImageClusterInstall

api/v1alpha1/imageclusterinstall_webhook_test.go

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ var _ = Describe("ValidateUpdate", func() {
3131
Hostname: "test",
3232
},
3333
Status: ImageClusterInstallStatus{
34-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageNotReadyReason),
34+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageCreationFailedReason),
3535
},
3636
}
3737
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -51,7 +51,7 @@ var _ = Describe("ValidateUpdate", func() {
5151
Hostname: "test",
5252
},
5353
Status: ImageClusterInstallStatus{
54-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageNotReadyReason),
54+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageCreationFailedReason),
5555
},
5656
}
5757
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -70,7 +70,7 @@ var _ = Describe("ValidateUpdate", func() {
7070
Hostname: "test",
7171
},
7272
Status: ImageClusterInstallStatus{
73-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageNotReadyReason),
73+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageCreationFailedReason),
7474
},
7575
}
7676
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -90,7 +90,7 @@ var _ = Describe("ValidateUpdate", func() {
9090
Hostname: "test",
9191
},
9292
Status: ImageClusterInstallStatus{
93-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageNotReadyReason),
93+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageCreationFailedReason),
9494
},
9595
}
9696
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -222,7 +222,7 @@ var _ = Describe("ValidateUpdate", func() {
222222
Hostname: "test",
223223
},
224224
Status: ImageClusterInstallStatus{
225-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageNotReadyReason),
225+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionFalse, ImageCreationFailedReason),
226226
},
227227
}
228228
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -301,7 +301,7 @@ var _ = Describe("ValidateUpdate", func() {
301301
},
302302
},
303303
Status: ImageClusterInstallStatus{
304-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionTrue, ImageReadyReason),
304+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionTrue, HostConfigurationSucceededReason),
305305
},
306306
}
307307
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -331,7 +331,7 @@ var _ = Describe("ValidateUpdate", func() {
331331
},
332332
},
333333
Status: ImageClusterInstallStatus{
334-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionTrue, ImageReadyReason),
334+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionTrue, HostConfigurationSucceededReason),
335335
},
336336
}
337337
newClusterInstall := oldClusterInstall.DeepCopy()
@@ -389,7 +389,7 @@ var _ = Describe("ValidateUpdate", func() {
389389
},
390390
},
391391
Status: ImageClusterInstallStatus{
392-
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionTrue, ImageReadyReason),
392+
Conditions: setClusterInstallCondition(hivev1.ClusterInstallRequirementsMet, corev1.ConditionTrue, HostConfigurationSucceededReason),
393393
},
394394
}
395395
newClusterInstall := oldClusterInstall.DeepCopy()

controllers/conditions.go

Lines changed: 6 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -100,52 +100,8 @@ func (r *ImageClusterInstallReconciler) initializeConditions(ctx context.Context
100100
return r.Status().Patch(ctx, ici, patch)
101101
}
102102

103-
func (r *ImageClusterInstallReconciler) setImageReadyCondition(ctx context.Context, ici *v1alpha1.ImageClusterInstall, err error) error {
104-
cond := hivev1.ClusterInstallCondition{
105-
Type: hivev1.ClusterInstallRequirementsMet,
106-
Status: corev1.ConditionTrue,
107-
Reason: v1alpha1.ImageReadyReason,
108-
Message: v1alpha1.ImageReadyMessage,
109-
}
110-
111-
if err != nil {
112-
cond.Status = corev1.ConditionFalse
113-
cond.Reason = v1alpha1.ImageNotReadyReason
114-
cond.Message = err.Error()
115-
}
116-
117-
patch := client.MergeFrom(ici.DeepCopy())
118-
if updated := setClusterInstallCondition(&ici.Status.Conditions, cond); !updated {
119-
return nil
120-
}
121-
r.Log.Infof("Setting image ready condition, status: %s, reason: %s, message: %s", cond.Status, cond.Reason, cond.Message)
122-
return r.Status().Patch(ctx, ici, patch)
123-
}
124-
125-
func (r *ImageClusterInstallReconciler) setHostConfiguredCondition(ctx context.Context, ici *v1alpha1.ImageClusterInstall, err error) error {
126-
cond := hivev1.ClusterInstallCondition{
127-
Type: hivev1.ClusterInstallRequirementsMet,
128-
Status: corev1.ConditionTrue,
129-
Reason: v1alpha1.HostConfiguraionSucceededReason,
130-
Message: v1alpha1.HostConfigurationSucceededMessage,
131-
}
132-
133-
if err != nil {
134-
cond.Status = corev1.ConditionFalse
135-
cond.Reason = v1alpha1.HostConfiguraionFailedReason
136-
cond.Message = err.Error()
137-
}
138-
139-
patch := client.MergeFrom(ici.DeepCopy())
140-
if updated := setClusterInstallCondition(&ici.Status.Conditions, cond); !updated {
141-
return nil
142-
}
143-
r.Log.Infof("Setting host configured condition, status: %s, reason: %s, message: %s", cond.Status, cond.Reason, cond.Message)
144-
return r.Status().Patch(ctx, ici, patch)
145-
}
146-
147103
func (r *ImageClusterInstallReconciler) setRequirementsMetCondition(ctx context.Context, ici *v1alpha1.ImageClusterInstall,
148-
status corev1.ConditionStatus, reason, msg string) error {
104+
status corev1.ConditionStatus, reason, msg string) {
149105
cond := hivev1.ClusterInstallCondition{
150106
Type: hivev1.ClusterInstallRequirementsMet,
151107
Status: status,
@@ -154,10 +110,13 @@ func (r *ImageClusterInstallReconciler) setRequirementsMetCondition(ctx context.
154110
}
155111
patch := client.MergeFrom(ici.DeepCopy())
156112
if updated := setClusterInstallCondition(&ici.Status.Conditions, cond); !updated {
157-
return nil
113+
return
158114
}
159115
r.Log.Infof("Setting requirements met condition, status: %s, reason: %s, message: %s", cond.Status, cond.Reason, cond.Message)
160-
return r.Status().Patch(ctx, ici, patch)
116+
updateErr := r.Status().Patch(ctx, ici, patch)
117+
if updateErr != nil {
118+
r.Log.WithError(updateErr).Error("failed to update requirements met condition")
119+
}
161120
}
162121

163122
func installationTimedout(ici *v1alpha1.ImageClusterInstall) bool {

0 commit comments

Comments
 (0)