Skip to content

Commit 6e899b5

Browse files
authored
Merge pull request #930 from securesign/tturek/ensure-tsa
fix: panic error when TSA configuration is nil in Securesign resource
2 parents 4e79b9e + 2a8d7e7 commit 6e899b5

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

internal/controller/securesign/actions/ensure_tsa.go

+14
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package actions
33
import (
44
"context"
55
"fmt"
6+
"reflect"
67

78
rhtasv1alpha1 "github.com/securesign/operator/api/v1alpha1"
89
"github.com/securesign/operator/internal/controller/annotations"
@@ -47,6 +48,19 @@ func (i tsaAction) Handle(ctx context.Context, instance *rhtasv1alpha1.Securesig
4748
}
4849
)
4950

51+
if reflect.ValueOf(instance.Spec.TimestampAuthority).IsZero() {
52+
if meta.IsStatusConditionTrue(instance.Status.Conditions, TSACondition) {
53+
return i.Continue()
54+
}
55+
meta.SetStatusCondition(&instance.Status.Conditions, v1.Condition{
56+
Type: TSACondition,
57+
Status: v1.ConditionTrue,
58+
Reason: constants.NotDefined,
59+
Message: "TSA resource is undefined",
60+
})
61+
return i.StatusUpdate(ctx, instance)
62+
}
63+
5064
if result, err = kubernetes.CreateOrUpdate(ctx, i.Client,
5165
tsa,
5266
ensure.ControllerReference[*rhtasv1alpha1.TimestampAuthority](instance, i.Client),

internal/controller/securesign/actions/update_status.go

+1
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,7 @@ func sortByStatus(conditions []v1.Condition) []string {
6060
constants.Initialize: 1,
6161
constants.Creating: 2,
6262
constants.Ready: 3,
63+
constants.NotDefined: 4,
6364
}
6465

6566
return order[iCondition.Reason] < order[jCondition.Reason]

0 commit comments

Comments
 (0)