Skip to content

Commit f061323

Browse files
committed
chore: Add support for Secret resources in Gateway reconciliation
1 parent 3c83f52 commit f061323

File tree

3 files changed

+11
-10
lines changed

3 files changed

+11
-10
lines changed

internal/controller/gateway_controller.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,6 @@ import (
2626
"github.com/api7/api7-ingress-controller/internal/provider"
2727
)
2828

29-
// +kubebuilder:rbac:groups="",resources=secrets,verbs=get;list;watch
30-
3129
// GatewayReconciler reconciles a Gateway object.
3230
type GatewayReconciler struct { //nolint:revive
3331
client.Client
@@ -46,7 +44,15 @@ func (r *GatewayReconciler) SetupWithManager(mgr ctrl.Manager) error {
4644
predicate.NewPredicateFuncs(r.checkGatewayClass),
4745
),
4846
).
49-
WithEventFilter(predicate.GenerationChangedPredicate{}).
47+
WithEventFilter(
48+
predicate.Or(
49+
predicate.GenerationChangedPredicate{},
50+
predicate.NewPredicateFuncs(func(obj client.Object) bool {
51+
_, ok := obj.(*corev1.Secret)
52+
return ok
53+
}),
54+
),
55+
).
5056
Watches(
5157
&gatewayv1.GatewayClass{},
5258
handler.EnqueueRequestsFromMapFunc(r.listGatewayForGatewayClass),
@@ -70,8 +76,6 @@ func (r *GatewayReconciler) SetupWithManager(mgr ctrl.Manager) error {
7076
}
7177

7278
func (r *GatewayReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error) {
73-
r.Log.Info("request Reconcile")
74-
7579
gateway := new(gatewayv1.Gateway)
7680
if err := r.Get(ctx, req.NamespacedName, gateway); err != nil {
7781
if client.IgnoreNotFound(err) == nil {
@@ -315,7 +319,6 @@ func (r *GatewayReconciler) listGatewaysForSecret(ctx context.Context, obj clien
315319
)
316320
return nil
317321
}
318-
r.Log.Info("listGatewaysForSecret, secret", "namespace", secret.GetNamespace(), "name", secret.GetName())
319322
var gatewayList gatewayv1.GatewayList
320323
if err := r.List(ctx, &gatewayList, client.MatchingFields{
321324
indexer.SecretIndexRef: indexer.GenIndexKey(secret.GetNamespace(), secret.GetName()),
@@ -331,7 +334,6 @@ func (r *GatewayReconciler) listGatewaysForSecret(ctx context.Context, obj clien
331334
},
332335
})
333336
}
334-
r.Log.Info("listGatewaysForSecret", "requests", requests)
335337
return requests
336338
}
337339

@@ -356,7 +358,7 @@ func (r *GatewayReconciler) processListenerConfig(tctx *provider.TranslateContex
356358
if ref.Namespace != nil {
357359
ns = string(*ref.Namespace)
358360
}
359-
if ref.Kind != nil && *ref.Kind == "Secret" {
361+
if ref.Kind != nil && *ref.Kind == KindSecret {
360362
if err := r.Get(context.Background(), client.ObjectKey{
361363
Namespace: ns,
362364
Name: string(ref.Name),

internal/controller/indexer/indexer.go

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ package indexer
22

33
import (
44
"context"
5-
"log"
65

76
networkingv1 "k8s.io/api/networking/v1"
87
"k8s.io/apimachinery/pkg/runtime/schema"
@@ -335,7 +334,6 @@ func GatewaySecretIndexFunc(rawObj client.Object) (keys []string) {
335334
}
336335
}
337336
}
338-
log.Printf("GatewaySecretIndexFunc keys: %v", keys)
339337
return keys
340338
}
341339

internal/controller/utils.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ const (
3232
KindIngress = "Ingress"
3333
KindIngressClass = "IngressClass"
3434
KindGatewayProxy = "GatewayProxy"
35+
KindSecret = "Secret"
3536
)
3637

3738
const defaultIngressClassAnnotation = "ingressclass.kubernetes.io/is-default-class"

0 commit comments

Comments
 (0)