envoyproxy / envoyproxy/gateway

Support GatewayInfrastructurePropagation in default mode

Open
#9,475 1 comment 0 reactions 0 assignees View on GitHub
stale triage
Dominant language
Go
Stars
3k
Forks
864
Avg merge
2d 2h
Merged PRs (30d)
140

Description

*Description*:
Following up on #6000: the `GatewayInfrastructurePropagation` conformance feature is now supported in Gateway Namespace Mode, but it is still unsupported in the default mode, as shown in the [latest conformance report](https://github.com/kubernetes-sigs/gateway-api/blob/main/conformance/reports/v1.5/envoy-gateway/experimental-v1.8.0-default-report.yaml)

The only missing piece is the standard `gateway.networking.k8s.io/gateway-name`
label on the generated resources, which is currently added only in Gateway Namespace Mode.

One open question is how to handle `mergeGateways`, where a single
proxy fleet is shared by multiple Gateways and no single gateway name applies.
There are two options (i think option 1 is better):
1. Skip the label when gateways are merged. A merged fleet belongs to the GatewayClass rather than to any single Gateway, and this is already expressed by the `owning-gatewayclass` label, so we shouldn't force a single gateway name on it.
2. Write a representative gateway name. This breaks the semantics of the label, so I'd rather avoid it.

It might take a little time, but I'd like to work on this. Let me know what you think.

[optional *Relevant Links*:]
- #6000
- https://github.com/kubernetes-sigs/gateway-api/blob/main/conformance/tests/gateway-infrastructure.go

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with conformance/tests/gateway-infrastructure.go and the latest default-mode conformance report referenced in the issue, then trace how generated resources receive labels outside Gateway Namespace Mode. Verify GatewayInfrastructurePropagation passes in default mode and that merged gateways omit gateway-name while retaining the GatewayClass ownership label.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
api, infrastructure, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.