gateway-api icon indicating copy to clipboard operation
gateway-api copied to clipboard

conformance test: CORS

Open zhaohuabing opened this issue 8 months ago • 23 comments

What type of PR is this? /kind test /area conformance-test

What this PR does / why we need it: This PR adds conformance tests for HTTPCORSFilter.

Which issue(s) this PR fixes:

Related #3649

Does this PR introduce a user-facing change?:

NONE

zhaohuabing avatar Apr 09 '25 02:04 zhaohuabing

Hi @zhaohuabing. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

k8s-ci-robot avatar Apr 09 '25 02:04 k8s-ci-robot

Hi @mikemorris @sunjayBhatia @youngnick Is there anything I can do to help the review? This is the first time creating a conformance test PR, so there is a good chance I may have missed something that's blocking the review. Please feel free to let me know if there's anything I can address. Thanks!

cc @arkodg

zhaohuabing avatar May 06 '25 04:05 zhaohuabing

@zhaohuabing I verified the new CORS tests against our implementation and identified a difference in how the access-control-request-headers is mapped. See the comment here: https://github.com/kubernetes-sigs/gateway-api/pull/3739#discussion_r2090538491.

Just a heads-up: depending on the outcome of #3648, the tests might need to be adapted or extended accordingly.

snorwin avatar May 15 '25 08:05 snorwin

@zhaohuabing lgtm, however, since I’m not part of the approvers, I’m unable to formally approve it.

snorwin avatar May 15 '25 11:05 snorwin

Gentle ping @youngnick @sunjayBhatia @mikemorris — whenever you get a chance, would love your thoughts on this.

zhaohuabing avatar May 21 '25 11:05 zhaohuabing

/ok-to-test

snorwin avatar May 29 '25 10:05 snorwin

/test pull-gateway-api-verify

zhaohuabing avatar May 30 '25 02:05 zhaohuabing

/lgtm /assign @youngnick

@zhaohuabing your None in the PR description is not recognized by the bot, please replace it with:

```
NONE
```

snorwin avatar Jun 04 '25 06:06 snorwin

@zhaohuabing just checking in :wave:

It seems that we're still able to move forward with this one, but there are several lingering comments that need addressing. How are things going? Do you need any support to move this forward?

shaneutt avatar Jul 03 '25 17:07 shaneutt

@zhaohuabing just checking in 👋

It seems that we're still able to move forward with this one, but there are several lingering comments that need addressing. How are things going? Do you need any support to move this forward?

Hi @shaneutt Sorry for the delay - will continue working on this and address the comments.

zhaohuabing avatar Jul 08 '25 08:07 zhaohuabing

New changes are detected. LGTM label has been removed.

k8s-ci-robot avatar Jul 10 '25 05:07 k8s-ci-robot

Do we want to test (or specify!) the behavior of multiple CORs filters ? Like in the route and backendRef etc

I think we should clarify the behavior in the GEP first - should multiple CORS filters be allowed? If yes, what's the expected behavior (or, and)?

zhaohuabing avatar Jul 10 '25 07:07 zhaohuabing

Hi @shaneutt I've addressed the lingering comments. There are still a few open issues related to the CORS GEP. I'm happy to wait until we reach consensus on those, or we can go ahead and merge this PR and handle the remaining items in follow-up PRs.

zhaohuabing avatar Jul 10 '25 08:07 zhaohuabing

Sounds good, we also have https://github.com/kubernetes-sigs/gateway-api/pull/3895 incoming due to an issue with the current AllowCredentials to keep a lookout for.

shaneutt avatar Jul 10 '25 13:07 shaneutt

We're doing a time extension for v1.4.0, I realize it would be a nice-to-have to get this one in, so I'm flagging it as v1.4.0 in case we can manage it.

/cc

shaneutt avatar Aug 26 '25 19:08 shaneutt

hi @zhaohuabing

echoing what @snorwin requested + the fix added on https://github.com/kubernetes-sigs/gateway-api/pull/4032 can you please rebase your PR over main?

Thank you!

rikatz avatar Aug 28 '25 11:08 rikatz

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: snorwin, zhaohuabing Once this PR has been reviewed and has the lgtm label, please ask for approval from shaneutt. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment Approvers can cancel approval by writing /approve cancel in a comment

k8s-ci-robot avatar Aug 28 '25 12:08 k8s-ci-robot

@rikatz I rebased and might have broken conformance/utils/http/http.go - I will wrap this up this weekend.

Thanks!

zhaohuabing avatar Aug 28 '25 12:08 zhaohuabing

Thank you @zhaohuabing! Sorry that this lagged for a while. We're trying to code freeze next wednesday for v1.4.0 and we appreciate you jumping back in :vulcan_salute:

shaneutt avatar Aug 28 '25 12:08 shaneutt

/release-note-none

rikatz avatar Sep 02 '25 12:09 rikatz

/hold /assign /cc

I am taking a look into it. I think the test is fine, but I have some concerns on changing the http library, so I will take a deeper look into the changes :)

rikatz avatar Sep 02 '25 12:09 rikatz

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Dec 02 '25 20:12 k8s-triage-robot

PR needs rebase.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

k8s-ci-robot avatar Dec 02 '25 20:12 k8s-ci-robot