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

Signed-off-by: qicz <qiczzhu@gmail.com>
@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
Member

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 <qiczzhu@gmail.com>
@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 <qiczzhu@gmail.com>

* ut for bugfix

Signed-off-by: qicz <qiczzhu@gmail.com>

---------

Signed-off-by: qicz <qiczzhu@gmail.com>
Co-authored-by: Xunzhuo <bitliu@tencent.com>
(cherry picked from commit b77f6a4)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>
arkodg pushed a commit to arkodg/gateway that referenced this pull request Sep 7, 2024
* bugfix: fix upstream get unwanted /.

Signed-off-by: qicz <qiczzhu@gmail.com>

* ut for bugfix

Signed-off-by: qicz <qiczzhu@gmail.com>

---------

Signed-off-by: qicz <qiczzhu@gmail.com>
Co-authored-by: Xunzhuo <bitliu@tencent.com>
(cherry picked from commit b77f6a4)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>
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 <qiczzhu@gmail.com>

* ut for bugfix

Signed-off-by: qicz <qiczzhu@gmail.com>

---------

Signed-off-by: qicz <qiczzhu@gmail.com>
Co-authored-by: Xunzhuo <bitliu@tencent.com>
(cherry picked from commit b77f6a4)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* feat: gateway http listener isolation (#4000)

Signed-off-by: Kobi Levi <kobilevi503@gmail.com>
(cherry picked from commit 97830e9)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

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

* fix: multiple reference grants in same namespace

Signed-off-by: Ardika Bagus <me@ardikabs.com>

* test: add e2e test

Signed-off-by: Ardika Bagus <me@ardikabs.com>

* chore: wrong service port

Signed-off-by: Ardika Bagus <me@ardikabs.com>

---------

Signed-off-by: Ardika Bagus <me@ardikabs.com>
(cherry picked from commit b82f4b2)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* 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 <arko@tetrate.io>
(cherry picked from commit 67575b8)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* 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 <lior.okman@sap.com>
(cherry picked from commit eac30d6)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* fix ratelimit statsd not working (#4073)

fix ratelimit statd not working

Signed-off-by: zirain <zirain2009@gmail.com>
(cherry picked from commit 6ab6482)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* 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 <lior.okman@sap.com>
(cherry picked from commit 0926b38)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

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

fix IsNotFound check for secret and configmap

Signed-off-by: TasdidurRahman <tasdid@appscode.com>
(cherry picked from commit c20315f)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

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

Signed-off-by: qicz <qiczzhu@gmail.com>
Co-authored-by: zirain <zirain2009@gmail.com>
(cherry picked from commit b50f5fa)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* use sets and return stable result (#4074)

Signed-off-by: zirain <zirain2009@gmail.com>
(cherry picked from commit 6066f5a)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

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

Signed-off-by: Arko Dasgupta <arko@tetrate.io>

* bump to go1.22.7 (#4175)

* bump to go1.22.6

Signed-off-by: zirain <zirain2009@gmail.com>

* bump to 1.22.7

Signed-off-by: zirain <zirain2009@gmail.com>

---------

Signed-off-by: zirain <zirain2009@gmail.com>
(cherry picked from commit 69bf882)
Signed-off-by: Arko Dasgupta <arko@tetrate.io>

---------

Signed-off-by: qicz <qiczzhu@gmail.com>
Signed-off-by: Arko Dasgupta <arko@tetrate.io>
Signed-off-by: Kobi Levi <kobilevi503@gmail.com>
Signed-off-by: Ardika Bagus <me@ardikabs.com>
Signed-off-by: Lior Okman <lior.okman@sap.com>
Signed-off-by: zirain <zirain2009@gmail.com>
Signed-off-by: TasdidurRahman <tasdid@appscode.com>
Co-authored-by: qi <qiczzhu@gmail.com>
Co-authored-by: Xunzhuo <bitliu@tencent.com>
Co-authored-by: Kobi Levi <56400138+levikobi@users.noreply.github.com>
Co-authored-by: Ardika <me@ardikabs.com>
Co-authored-by: Lior Okman <lior.okman@sap.com>
Co-authored-by: zirain <zirain2009@gmail.com>
Co-authored-by: Tasdidur Rahman <52253951+TasdidurRahman@users.noreply.github.com>
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