Skip to content
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

bugfix: fix upstream get unwanted /. #3990

Merged
merged 3 commits into from
Aug 5, 2024
Merged

Conversation

qicz
Copy link
Member

@qicz qicz commented Aug 2, 2024

What type of PR is this?

What this PR does / why we need it:
when the pathMath.Prefix has suffix / but EG has removed it,

// Remove trailing /
trimmedPrefix := strings.TrimSuffix(*pathMatch.Prefix, "/")
outMatch.PathSpecifier = &routev3.RouteMatch_PathSeparatedPrefix{
PathSeparatedPrefix: trimmedPrefix,
}
}

and the urlRewrite.Path.PrefixMatchReplace suffix with / the upstream will get unwanted /
Which issue(s) this PR fixes:

Fixes #3989 , Fix #3807

@qicz qicz requested a review from a team as a code owner August 2, 2024 02:19
Copy link

codecov bot commented Aug 2, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 67.59%. Comparing base (f4c53f4) to head (a87366c).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #3990   +/-   ##
=======================================
  Coverage   67.59%   67.59%           
=======================================
  Files         183      183           
  Lines       22444    22444           
=======================================
  Hits        15171    15171           
+ Misses       6194     6193    -1     
- Partials     1079     1080    +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@zirain
Copy link
Contributor

zirain commented Aug 2, 2024

can you add a test to guarantee this?

@qicz
Copy link
Member Author

qicz commented Aug 2, 2024

/retest

Signed-off-by: qicz <[email protected]>
@qicz
Copy link
Member Author

qicz commented Aug 2, 2024

/retest

@arkodg
Copy link
Contributor

arkodg commented Aug 5, 2024

@qicz can you add an e2e for this ?

@Xunzhuo Xunzhuo merged commit b77f6a4 into envoyproxy:main Aug 5, 2024
8 of 10 checks passed
arkodg pushed a commit to arkodg/gateway that referenced this pull request Sep 7, 2024
* bugfix: fix upstream get unwanted /.

Signed-off-by: qicz <[email protected]>

* ut for bugfix

Signed-off-by: qicz <[email protected]>

---------

Signed-off-by: qicz <[email protected]>
Co-authored-by: Xunzhuo <[email protected]>
(cherry picked from commit b77f6a4)
Signed-off-by: Arko Dasgupta <[email protected]>
arkodg pushed a commit to arkodg/gateway that referenced this pull request Sep 7, 2024
* bugfix: fix upstream get unwanted /.

Signed-off-by: qicz <[email protected]>

* ut for bugfix

Signed-off-by: qicz <[email protected]>

---------

Signed-off-by: qicz <[email protected]>
Co-authored-by: Xunzhuo <[email protected]>
(cherry picked from commit b77f6a4)
Signed-off-by: Arko Dasgupta <[email protected]>
guydc pushed a commit that referenced this pull request Sep 10, 2024
* bugfix: fix upstream get unwanted /. (#3990)

* bugfix: fix upstream get unwanted /.

Signed-off-by: qicz <[email protected]>

* ut for bugfix

Signed-off-by: qicz <[email protected]>

---------

Signed-off-by: qicz <[email protected]>
Co-authored-by: Xunzhuo <[email protected]>
(cherry picked from commit b77f6a4)
Signed-off-by: Arko Dasgupta <[email protected]>

* feat: gateway http listener isolation (#4000)

Signed-off-by: Kobi Levi <[email protected]>
(cherry picked from commit 97830e9)
Signed-off-by: Arko Dasgupta <[email protected]>

* fix: multiple reference grants in same namespace (#4008)

* fix: multiple reference grants in same namespace

Signed-off-by: Ardika Bagus <[email protected]>

* test: add e2e test

Signed-off-by: Ardika Bagus <[email protected]>

* chore: wrong service port

Signed-off-by: Ardika Bagus <[email protected]>

---------

Signed-off-by: Ardika Bagus <[email protected]>
(cherry picked from commit b82f4b2)
Signed-off-by: Arko Dasgupta <[email protected]>

* reduce readinessProbe failureThreshold and periodSeconds (#4021)

* Reduces time for the endpoint to be removed from the endpointSlice
from `30s` (3 * 10) to `5s` (1 * 5)

* Since kube-proxy and CNIs rely on this info and so do external LBs
like GKE https://cloud.google.com/kubernetes-engine/docs/concepts/service-load-balancer

Signed-off-by: Arko Dasgupta <[email protected]>
(cherry picked from commit 67575b8)
Signed-off-by: Arko Dasgupta <[email protected]>

* fix: add header values as described in the documentation (#4031)

Add header values after splitting the provided value string on ',', like
described in the documentation.

Signed-off-by: Lior Okman <[email protected]>
(cherry picked from commit eac30d6)
Signed-off-by: Arko Dasgupta <[email protected]>

* fix ratelimit statsd not working (#4073)

fix ratelimit statd not working

Signed-off-by: zirain <[email protected]>
(cherry picked from commit 6ab6482)
Signed-off-by: Arko Dasgupta <[email protected]>

* fix: active http healthcheck documents a default for expected status, but doesn't use it (#4090)

If no expected status was explicitly set, use the default value as
described in the documentation.

Signed-off-by: Lior Okman <[email protected]>
(cherry picked from commit 0926b38)
Signed-off-by: Arko Dasgupta <[email protected]>

* Fix IsNotFound check for secret and configmap (#4126)

fix IsNotFound check for secret and configmap

Signed-off-by: TasdidurRahman <[email protected]>
(cherry picked from commit c20315f)
Signed-off-by: Arko Dasgupta <[email protected]>

* fix: assign sugar logger name. (#4144)

Signed-off-by: qicz <[email protected]>
Co-authored-by: zirain <[email protected]>
(cherry picked from commit b50f5fa)
Signed-off-by: Arko Dasgupta <[email protected]>

* use sets and return stable result (#4074)

Signed-off-by: zirain <[email protected]>
(cherry picked from commit 6066f5a)
Signed-off-by: Arko Dasgupta <[email protected]>

* delete internal/gatewayapi/clustersettings.go NA for v1.1

Signed-off-by: Arko Dasgupta <[email protected]>

* bump to go1.22.7 (#4175)

* bump to go1.22.6

Signed-off-by: zirain <[email protected]>

* bump to 1.22.7

Signed-off-by: zirain <[email protected]>

---------

Signed-off-by: zirain <[email protected]>
(cherry picked from commit 69bf882)
Signed-off-by: Arko Dasgupta <[email protected]>

---------

Signed-off-by: qicz <[email protected]>
Signed-off-by: Arko Dasgupta <[email protected]>
Signed-off-by: Kobi Levi <[email protected]>
Signed-off-by: Ardika Bagus <[email protected]>
Signed-off-by: Lior Okman <[email protected]>
Signed-off-by: zirain <[email protected]>
Signed-off-by: TasdidurRahman <[email protected]>
Co-authored-by: qi <[email protected]>
Co-authored-by: Xunzhuo <[email protected]>
Co-authored-by: Kobi Levi <[email protected]>
Co-authored-by: Ardika <[email protected]>
Co-authored-by: Lior Okman <[email protected]>
Co-authored-by: zirain <[email protected]>
Co-authored-by: Tasdidur Rahman <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

upstream get unwanted / Incorrect url rewrite, double slash
5 participants