-
Notifications
You must be signed in to change notification settings - Fork 594
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore(deps) update to GWAPI 0.7.1 #4142
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #4142 +/- ##
=====================================
Coverage 60.6% 60.6%
=====================================
Files 150 150
Lines 16843 16822 -21
=====================================
- Hits 10213 10201 -12
+ Misses 5984 5976 -8
+ Partials 646 645 -1
☔ View full report in Codecov by Sentry. |
e1da095
to
a125cfd
Compare
1125944
to
8b710c1
Compare
8b710c1
to
43104eb
Compare
Use the Programmed reason instead of Ready for valid Listeners. Apply the Accepted condition to Listeners when it is true, instead of only when it is false. This is an additional conformance requirement. GWAPI 0.7 kinda deprecated Ready per: https://github.com/kubernetes-sigs/gateway-api/blob/v0.7.1/apis/v1beta1/gateway_types.go#L880-L897 Although Programmed does not replace Ready and was already present, we should not use Ready until its status is decided. As Programmed precedes ready (Programmed indicates that a Listener is available in configuration, whereas Ready means that the configuration is definitely live--difficult to determine in an eventually consistent environment), it is suitable for checks where we previously used Ready.
Following kubernetes-sigs/gateway-api#1877 the Ready condition is effectively deprecated. Programmed is appropriate for cases where we used Ready as it represents a state where Readiness is expected based on submitted configuration.
Skip a conformance test that fails because it requires a non-standard port not exposed by our test Gateway. Skip an unclear rule precedence test. Although the requirement is unclear, it is unlikely that the controller can address this, as precedence is governed by Kong. Skip the HTTP mirroring conformance test. This extended feature is not supported.
Co-authored-by: Patryk Małek <patryk.malek@konghq.com>
43104eb
to
71a1e09
Compare
More rebases since something happened in main that Github thought was a conflict, but wasn't? Dunno, fetch and rebase to origin/main didn't actually raise any conflicts in |
What this PR does / why we need it:
GWAPI upgrades and a conformance fix.
Which issue this PR fixes:
Fix #3726
Fix #2953
Fix #3990
Special notes for your reviewer:
kubernetes-sigs/gateway-api#1888 and kubernetes-sigs/gateway-api#1832 (comment) change expectations around statuses. This PR includes changes that adhere to the 0.7.1 conformance test informed by these changes, but it's possible we missed something not covered in conformance. GWAPI doesn't really provide an expected state flowchart for statuses (we have to go off individual condition descriptions in the API docs), which makes it a bit difficult to determine if our state changes are truly correct absent conformance tests.
Changes to conformance suite covered in:
#4166
#4165
#4164
Also skips mesh stuff but no issue for that as I assume we have no intention to implement that for Kong-based products.
PR Readiness Checklist:
Complete these before marking the PR as
ready to review
:CHANGELOG.md
release notes have been updated to reflect any significant (and particularly user-facing) changes introduced by this PR