diff --git a/pkg/k8s/policyhelper/kind.go b/pkg/k8s/policyhelper/kind.go index 03343bfa..520320a7 100644 --- a/pkg/k8s/policyhelper/kind.go +++ b/pkg/k8s/policyhelper/kind.go @@ -5,6 +5,8 @@ import ( "sigs.k8s.io/controller-runtime/pkg/client" gwv1alpha2 "sigs.k8s.io/gateway-api/apis/v1alpha2" gwv1beta1 "sigs.k8s.io/gateway-api/apis/v1beta1" + + anv1alpha1 "github.com/aws/aws-application-networking-k8s/pkg/apis/applicationnetworking/v1alpha1" ) type GroupKind struct { @@ -20,6 +22,8 @@ func ObjToGroupKind(obj client.Object) GroupKind { return GroupKind{gwv1beta1.GroupName, "HTTPRoute"} case *gwv1alpha2.GRPCRoute: return GroupKind{gwv1alpha2.GroupName, "GRPCRoute"} + case *anv1alpha1.ServiceExport: + return GroupKind{anv1alpha1.GroupName, "ServiceExport"} case *corev1.Service: return GroupKind{corev1.GroupName, "Service"} default: @@ -44,6 +48,8 @@ func GroupKindToObj(gk GroupKind) (client.Object, bool) { return &gwv1alpha2.GRPCRoute{}, true case GroupKind{corev1.GroupName, "Service"}: return &corev1.Service{}, true + case GroupKind{anv1alpha1.GroupName, "ServiceExport"}: + return &anv1alpha1.ServiceExport{}, true default: return nil, false } diff --git a/pkg/k8s/policyhelper/policy.go b/pkg/k8s/policyhelper/policy.go index 125acbd2..b7b2b536 100644 --- a/pkg/k8s/policyhelper/policy.go +++ b/pkg/k8s/policyhelper/policy.go @@ -73,7 +73,7 @@ func NewTargetGroupPolicyHandler(log gwlog.Logger, c k8sclient.Client) *PolicyHa phcfg := PolicyHandlerConfig{ Log: log, Client: c, - TargetRefKinds: NewGroupKindSet(&corev1.Service{}), + TargetRefKinds: NewGroupKindSet(&corev1.Service{}, &anv1alpha1.ServiceExport{}), } return NewPolicyHandler[TGP, TGPL](phcfg) }