@@ -18,7 +18,6 @@ import (
1818 "github.com/go-logr/logr"
1919 corev1 "k8s.io/api/core/v1"
2020 networkingv1 "k8s.io/api/networking/v1"
21- k8serrors "k8s.io/apimachinery/pkg/api/errors"
2221 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2322 "k8s.io/apimachinery/pkg/runtime"
2423 "k8s.io/apimachinery/pkg/types"
@@ -59,13 +58,13 @@ func (r *ApisixGlobalRuleReconciler) Reconcile(ctx context.Context, req ctrl.Req
5958
6059 var globalRule apiv2.ApisixGlobalRule
6160 if err := r .Get (ctx , req .NamespacedName , & globalRule ); err != nil {
62- if k8serrors . IsNotFound (err ) {
61+ if client . IgnoreNotFound (err ) == nil {
6362 log .Info ("global rule not found, possibly deleted" )
6463 // Create a minimal object for deletion
6564 globalRule .Namespace = req .Namespace
6665 globalRule .Name = req .Name
6766 globalRule .TypeMeta = metav1.TypeMeta {
68- Kind : "ApisixGlobalRule" ,
67+ Kind : KindApisixGlobalRule ,
6968 APIVersion : apiv2 .GroupVersion .String (),
7069 }
7170 // Delete from provider
@@ -75,19 +74,9 @@ func (r *ApisixGlobalRuleReconciler) Reconcile(ctx context.Context, req ctrl.Req
7574 }
7675 return ctrl.Result {}, nil
7776 }
78- log .Error (err , "failed to get ApisixGlobalRule" )
7977 return ctrl.Result {}, err
8078 }
8179
82- // Check if the global rule is being deleted
83- if ! globalRule .DeletionTimestamp .IsZero () {
84- if err := r .Provider .Delete (ctx , & globalRule ); err != nil {
85- log .Error (err , "failed to delete global rule from provider" )
86- return ctrl.Result {}, err
87- }
88- return ctrl.Result {}, nil
89- }
90-
9180 // create a translate context
9281 tctx := provider .NewDefaultTranslateContext (ctx )
9382
@@ -146,6 +135,12 @@ func (r *ApisixGlobalRuleReconciler) SetupWithManager(mgr ctrl.Manager) error {
146135 predicate .NewPredicateFuncs (r .checkIngressClass ),
147136 ),
148137 ).
138+ WithEventFilter (
139+ predicate .Or (
140+ predicate.GenerationChangedPredicate {},
141+ predicate.AnnotationChangedPredicate {},
142+ ),
143+ ).
149144 Watches (
150145 & networkingv1.IngressClass {},
151146 handler .EnqueueRequestsFromMapFunc (r .listGlobalRulesForIngressClass ),
@@ -156,7 +151,6 @@ func (r *ApisixGlobalRuleReconciler) SetupWithManager(mgr ctrl.Manager) error {
156151 Watches (& v1alpha1.GatewayProxy {},
157152 handler .EnqueueRequestsFromMapFunc (r .listGlobalRulesForGatewayProxy ),
158153 ).
159- Named ("apisixglobalrule" ).
160154 Complete (r )
161155}
162156
0 commit comments