@@ -344,19 +344,7 @@ func (c *Controller) syncHandler(ctx context.Context, key string) error {
344344 routeCopy .Spec = desiredRoute .Spec
345345 routeCopy .OwnerReferences = desiredRoute .OwnerReferences
346346
347- // This avoids conflicts with the gateway-controller updating status.
348- patch := map [string ]interface {}{
349- "spec" : desiredRoute .Spec ,
350- "metadata" : map [string ]interface {}{
351- "ownerReferences" : desiredRoute .OwnerReferences ,
352- },
353- }
354- patchBytes , err := json .Marshal (patch )
355- if err != nil {
356- return fmt .Errorf ("failed to marshal patch for HTTPRoute %s/%s: %w" , desiredRoute .Namespace , desiredRoute .Name , err )
357- }
358-
359- _ , updateErr := c .gwClientset .GatewayV1 ().HTTPRoutes (namespace ).Patch (ctx , desiredRoute .Name , types .MergePatchType , patchBytes , metav1.PatchOptions {})
347+ _ , updateErr := c .gwClientset .GatewayV1 ().HTTPRoutes (namespace ).Update (ctx , routeCopy , metav1.UpdateOptions {})
360348 if updateErr != nil {
361349 klog .Errorf ("Failed to update HTTPRoute %s/%s: %v" , desiredRoute .Namespace , desiredRoute .Name , updateErr )
362350 return fmt .Errorf ("failed to update HTTPRoute: %w" , updateErr )
@@ -595,10 +583,12 @@ func (c *Controller) translateIngressPaths(ns string, paths []networkingv1.HTTPI
595583 backendRef := gatewayv1.HTTPBackendRef {
596584 BackendRef : gatewayv1.BackendRef {
597585 BackendObjectReference : gatewayv1.BackendObjectReference {
598- Name : gatewayv1 .ObjectName (ingressPath .Backend .Service .Name ),
599- Kind : ptr .To (gatewayv1 .Kind ("Service" )),
600- Port : & portPtr ,
586+ Name : gatewayv1 .ObjectName (ingressPath .Backend .Service .Name ),
587+ Kind : ptr .To (gatewayv1 .Kind ("Service" )),
588+ Group : ptr .To (gatewayv1 .Group ("" )),
589+ Port : & portPtr ,
601590 },
591+ Weight : ptr .To (int32 (1 )),
602592 },
603593 }
604594
@@ -630,6 +620,7 @@ func (c *Controller) generateDesiredHTTPRoutes(ingress *networkingv1.Ingress, ga
630620 Name : gatewayv1 .ObjectName (gatewayName ),
631621 Namespace : ptr .To (gatewayv1 .Namespace (gatewayNamespace )),
632622 Kind : ptr .To (gatewayv1 .Kind ("Gateway" )),
623+ Group : ptr .To (gatewayv1 .Group (gatewayv1 .GroupName )),
633624 }
634625
635626 var defaultPaths []networkingv1.HTTPIngressPath
@@ -702,10 +693,12 @@ func (c *Controller) generateDesiredHTTPRoutes(ingress *networkingv1.Ingress, ga
702693 {
703694 BackendRef : gatewayv1.BackendRef {
704695 BackendObjectReference : gatewayv1.BackendObjectReference {
705- Name : gatewayv1 .ObjectName (ingress .Spec .DefaultBackend .Service .Name ),
706- Kind : ptr .To (gatewayv1 .Kind ("Service" )),
707- Port : & portPtr ,
696+ Name : gatewayv1 .ObjectName (ingress .Spec .DefaultBackend .Service .Name ),
697+ Kind : ptr .To (gatewayv1 .Kind ("Service" )),
698+ Group : ptr .To (gatewayv1 .Group ("" )),
699+ Port : & portPtr ,
708700 },
701+ Weight : ptr .To (int32 (1 )),
709702 },
710703 },
711704 },
0 commit comments