Skip to content

Commit 3b74e5f

Browse files
committed
semantic comparision do not chack lastTransition timestamp
1 parent 73577fc commit 3b74e5f

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

pkg/gateway/gateway.go

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424
apierrors "k8s.io/apimachinery/pkg/api/errors"
2525
"k8s.io/apimachinery/pkg/api/meta"
2626
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
27+
"k8s.io/apimachinery/pkg/conversion"
2728
"k8s.io/apimachinery/pkg/labels"
2829
"k8s.io/apimachinery/pkg/types"
2930
"k8s.io/apimachinery/pkg/util/sets"
@@ -420,6 +421,15 @@ func getSupportedKinds(listener gatewayv1.Listener) ([]gatewayv1.RouteGroupKind,
420421

421422
return supportedKinds, allKindsValid
422423
}
424+
425+
var semanticIgnoreLastTransitionTime = conversion.EqualitiesOrDie(
426+
func(a, b metav1.Condition) bool {
427+
a.LastTransitionTime = metav1.Time{}
428+
b.LastTransitionTime = metav1.Time{}
429+
return a == b
430+
},
431+
)
432+
423433
func (c *Controller) updateRouteStatuses(
424434
ctx context.Context,
425435
httpRouteStatuses map[types.NamespacedName][]gatewayv1.RouteParentStatus,
@@ -444,7 +454,7 @@ func (c *Controller) updateRouteStatuses(
444454
routeToUpdate.Status.Parents = desiredParentStatuses
445455

446456
// Only make an API call if the status has actually changed.
447-
if !reflect.DeepEqual(originalRoute.Status, routeToUpdate.Status) {
457+
if !semanticIgnoreLastTransitionTime.DeepEqual(originalRoute.Status, routeToUpdate.Status) {
448458
_, updateErr := c.gwClient.GatewayV1().HTTPRoutes(routeToUpdate.Namespace).UpdateStatus(ctx, routeToUpdate, metav1.UpdateOptions{})
449459
return updateErr
450460
}

0 commit comments

Comments
 (0)