You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What happened:
external-dns is deleting entries of existing Gateway API HTTPRoutes when handling an event with a new added route. What you expected to happen:
external-dns adding a new entry for the new route and keeping existing ones
How to reproduce it (as minimally and precisely as possible):
Create a Gateway with an "allowedRoutes" filter of type kind: HTTPRoute
allowedRoutes:
kinds:
- kind: HTTPRoutenamespaces:
from: All
Anything else we need to know?:
After addind some debug logs and rebuild external-dns, it seems that the APIGroup and Kind fields of the handled HTTPRoute objects are present at external-dns startup but no more after while handling events. The problem is located here: https://github.com/kubernetes-sigs/external-dns/blob/master/source/gateway.go#L442
But I did not find an explanation why gvk.Group and gvk.Kind are empty strings once a while.
I have added the following log line juste before the Kind check: log.Debugf("Check for kind match for route %s/%s, gw kind: %s/%s rt kind: %s/%s", meta.Namespace, meta.Name, group, gk.Kind, gvk.Group, gvk.Kind)
At startup I see: level=debug msg="Check for kind match for route nsA/routeA, gw kind: gateway.networking.k8s.io/HTTPRoute rt kind: gateway.networking.k8s.io/HTTPRoute"
After handling a new route: "Check for kind match for route nsA/routeA, gw kind: gateway.networking.k8s.io/HTTPRoute rt kind: /"
Environment:
External-DNS version (use external-dns --version): 0.12.2
DNS provider: google
Others: Using external-dns with gateway api v1beta1
The text was updated successfully, but these errors were encountered:
What happened:
external-dns is deleting entries of existing Gateway API HTTPRoutes when handling an event with a new added route.
What you expected to happen:
external-dns adding a new entry for the new route and keeping existing ones
How to reproduce it (as minimally and precisely as possible):
Create a Gateway with an "allowedRoutes" filter of type
kind: HTTPRoute
Anything else we need to know?:
After addind some debug logs and rebuild external-dns, it seems that the APIGroup and Kind fields of the handled HTTPRoute objects are present at external-dns startup but no more after while handling events. The problem is located here:
https://github.com/kubernetes-sigs/external-dns/blob/master/source/gateway.go#L442
But I did not find an explanation why gvk.Group and gvk.Kind are empty strings once a while.
I have added the following log line juste before the
Kind
check:log.Debugf("Check for kind match for route %s/%s, gw kind: %s/%s rt kind: %s/%s", meta.Namespace, meta.Name, group, gk.Kind, gvk.Group, gvk.Kind)
At startup I see:
level=debug msg="Check for kind match for route nsA/routeA, gw kind: gateway.networking.k8s.io/HTTPRoute rt kind: gateway.networking.k8s.io/HTTPRoute"
After handling a new route:
"Check for kind match for route nsA/routeA, gw kind: gateway.networking.k8s.io/HTTPRoute rt kind: /"
Environment:
external-dns --version
): 0.12.2The text was updated successfully, but these errors were encountered: