Commit Graph

149 Commits

Author SHA1 Message Date
Marcin Grzejszczak
6e008e87c4 Added symbolic link of index.adoc 2019-07-29 14:43:55 +02:00
Tony Clarke
83515df63b Adds conifugration to allow http options globally.
This is done by adding a global cors config to simlple URL Handler mapping. Spring webflux adds a static resource handler, WebFluxAutoConfiguration.WebFluxConfig. This adds a SimpleURLHandler which will be the handler that ends returning http 404 for requets that match any spring cloud gateway predicates.

fixes gh-840
2019-07-25 15:24:53 -04:00
Anastasiia Smirnova
7d78365648 Adds exponential backoff config options to retry filter. 2019-07-25 13:15:36 -04:00
Tony Clarke
6eb6634b32 Suppprt remapping headers in request 2019-07-24 17:23:51 -04:00
Vitaliy Pavlyuk
33ad555831 Rewrite Location response header filter 2019-07-24 14:28:38 -04:00
Spencer Gibb
9fc302ec72 Adds support for netty wiretap on server and client.
fixes gh-1194
2019-07-23 13:31:41 -04:00
Spencer Gibb
f1dbcdc0fe Adds ability to expand uri variables for other filters. (#711)
Currently only SetPath can use the uri variables from the path and host
predicates. Now, other filters can use them thru the
ServerWebExchangeUtils.expand() method.

fixes gh-704
2019-07-23 12:48:25 -04:00
Spencer Gibb
1cf449c870 Adds toString() to filter factories and predicate factories. (#785)
This allows for easier debugging and visibility into configuration.

Predicates needed custom implementations of and() or() and not() so
that toString() could function.

Actuator endpoint was updated to use the new toString(). To enable
set `spring.cloud.gateway.actuator.verbose.enabled=true`.

fixes gh-784
2019-07-23 11:31:00 -04:00
Thirunavukkarasu Ravichandran
ee6f7d01c4 Fixes gh-878 - secure headers can be disabled 2019-06-04 06:58:50 +02:00
Olga Maciaszek-Sharma
4b267b358d Merge remote-tracking branch 'origin/2.1.x' into 2.1.x 2019-04-01 18:36:08 +02:00
Ryan Baxter
949611d896 Merge remote-tracking branch 'origin/2.0.x' into 2.1.x 2019-04-01 12:19:56 -04:00
Ryan Baxter
1a7df11108 Merge pull request #880 from tony-clarke-amdocs/2.0.x
Update GW metrics filter to include two new tags; the http Method and…
2019-04-01 12:12:25 -04:00
Spring Operator
baebc551f5 URL Cleanup
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# HTTP URLs that Could Not Be Fixed
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.

* [ ] http://httpbin.org:80 (200) with 11 occurrences could not be migrated:
   ([https](https://httpbin.org:80) result NotSslRecordException).

# Fixed URLs

## Fixed But Review Recommended
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.

* [ ] http://acme.com:8080 (ConnectTimeoutException) with 1 occurrences migrated to:
  https://acme.com:8080 ([https](https://acme.com:8080) result ConnectTimeoutException).
* [ ] http://acme.org (ConnectTimeoutException) with 2 occurrences migrated to:
  https://acme.org ([https](https://acme.org) result ConnectTimeoutException).
* [ ] http://compose.docker.io/ (UnknownHostException) with 1 occurrences migrated to:
  https://compose.docker.io/ ([https](https://compose.docker.io/) result UnknownHostException).
* [ ] http://foo.example.com (UnknownHostException) with 1 occurrences migrated to:
  https://foo.example.com ([https](https://foo.example.com) result UnknownHostException).
* [ ] http://www.uri-destination.org (UnknownHostException) with 1 occurrences migrated to:
  https://www.uri-destination.org ([https](https://www.uri-destination.org) result UnknownHostException).
* [ ] http://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/GatewayFilter.html (301) with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/GatewayFilter.html ([https](https://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/GatewayFilter.html) result 404).
* [ ] http://www.puppycrawl.com/dtds/suppressions_1_1.dtd (404) with 1 occurrences migrated to:
  https://www.puppycrawl.com/dtds/suppressions_1_1.dtd ([https](https://www.puppycrawl.com/dtds/suppressions_1_1.dtd) result 404).

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://acme.com with 1 occurrences migrated to:
  https://acme.com ([https](https://acme.com) result 200).
* [ ] http://cloud.spring.io/spring-cloud-netflix/ with 5 occurrences migrated to:
  https://cloud.spring.io/spring-cloud-netflix/ ([https](https://cloud.spring.io/spring-cloud-netflix/) result 200).
* [ ] http://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html with 1 occurrences migrated to:
  https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html ([https](https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html) result 200).
* [ ] http://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/ServerWebExchange.html with 1 occurrences migrated to:
  https://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/ServerWebExchange.html ([https](https://docs.spring.io/spring/docs/5.0.x/javadoc-api/org/springframework/web/server/ServerWebExchange.html) result 200).
* [ ] http://example.com with 8 occurrences migrated to:
  https://example.com ([https](https://example.com) result 200).
* [ ] http://example.org with 34 occurrences migrated to:
  https://example.org ([https](https://example.org) result 200).
* [ ] http://httpbin.org with 1 occurrences migrated to:
  https://httpbin.org ([https](https://httpbin.org) result 200).
* [ ] http://projects.spring.io/spring-cloud/ with 1 occurrences migrated to:
  https://projects.spring.io/spring-cloud/ ([https](https://projects.spring.io/spring-cloud/) result 200).
* [ ] http://projects.spring.io/spring-security/ with 2 occurrences migrated to:
  https://projects.spring.io/spring-security/ ([https](https://projects.spring.io/spring-security/) result 200).
* [ ] http://projects.spring.io/spring-session/ with 2 occurrences migrated to:
  https://projects.spring.io/spring-session/ ([https](https://projects.spring.io/spring-session/) result 200).
* [ ] http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html with 2 occurrences migrated to:
  https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html ([https](https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) result 200).
* [ ] http://docs.spring.io with 1 occurrences migrated to:
  https://docs.spring.io ([https](https://docs.spring.io) result 301).
* [ ] http://plugins.jetbrains.com/plugin/6546 with 2 occurrences migrated to:
  https://plugins.jetbrains.com/plugin/6546 ([https](https://plugins.jetbrains.com/plugin/6546) result 301).
* [ ] http://eclipse.org with 1 occurrences migrated to:
  https://eclipse.org ([https](https://eclipse.org) result 302).
* [ ] http://eclipse.org/m2e/ with 2 occurrences migrated to:
  https://eclipse.org/m2e/ ([https](https://eclipse.org/m2e/) result 302).
* [ ] http://www.springsource.com/developer/sts with 1 occurrences migrated to:
  https://www.springsource.com/developer/sts ([https](https://www.springsource.com/developer/sts) result 302).

# Ignored
These URLs were intentionally ignored.

* http://endpoint with 1 occurrences
* http://localhost with 51 occurrences
* http://localhost/ with 2 occurrences
* http://localhost/abc with 1 occurrences
* http://localhost/get with 10 occurrences
* http://localhost/get?a=b with 2 occurrences
* http://localhost/get?a=b&c=d with 4 occurrences
* http://localhost/get?key with 1 occurrences
* http://localhost/getb with 3 occurrences
* http://localhost:3001 with 1 occurrences
* http://localhost:8008/configserver/foo/default with 1 occurrences
* http://localhost:8080/flakey with 1 occurrences
* http://localhost:8080/get with 6 occurrences
* http://localhost:8080/upload with 1 occurrences
* http://localhost:9000/foos/ with 4 occurrences
* http://localhost:9080 with 1 occurrences
* http://localhost:9994 with 3 occurrences
* http://myhost with 5 occurrences
* http://myhost/abc%20def/get with 1 occurrences
* http://myhost/mypath with 1 occurrences
* http://myservice with 2 occurrences
* http://nameservice with 1 occurrences
* http://nameservice/foo with 1 occurrences
* http://originalhost:8080/foo/bar with 2 occurrences
* http://originalhost:8080/get with 2 occurrences
* http://originalhost:8080/get/ with 1 occurrences
* http://originalhost:8080/one/two/three with 1 occurrences
* http://originalhost:8080/prefix/get with 1 occurrences
* http://originalhost:8080/prefix/get/ with 1 occurrences
* http://override-url with 1 occurrences
* http://override-url:80 with 1 occurrences
* http://routedservice:8090/ with 1 occurrences
* http://routedservice:8090/get with 2 occurrences
* http://routedservice:8090/two with 1 occurrences
* http://service1 with 1 occurrences
* http://someuri with 1 occurrences
* http://someuri:80 with 1 occurrences
* http://someurl with 1 occurrences
2019-03-26 03:38:32 -05:00
Spencer Gibb
2020e9c8b0 Merge branch '2.0.x' into 2.1.x 2019-03-20 16:09:19 -04:00
vpavlyuk
0beff09af2 Dedupe response header filter (#866)
Filter that de-duplicates response filter values. Comes handy when e.g. both the gateway CORS logic and a downstream add Access-Control-Allow-Credentials and Access-Control-Allow-Origin headers. See https://github.com/spring-cloud/spring-cloud-gateway/issues/728 for additional context.
2019-03-20 16:00:50 -04:00
Spring Operator
9c00e60ee4 URL Cleanup (#906)
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success 
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* http://maven.apache.org/xsd/maven-4.0.0.xsd with 8 occurrences migrated to:  
  https://maven.apache.org/xsd/maven-4.0.0.xsd ([https](https://maven.apache.org/xsd/maven-4.0.0.xsd) result 200).
* http://stackoverflow.com/questions/1593051/how-to-programmatically-determine-the-current-checked-out-git-branch with 1 occurrences migrated to:  
  https://stackoverflow.com/questions/1593051/how-to-programmatically-determine-the-current-checked-out-git-branch ([https](https://stackoverflow.com/questions/1593051/how-to-programmatically-determine-the-current-checked-out-git-branch) result 200).
* http://stackoverflow.com/questions/29300806/a-bash-script-to-check-if-a-string-is-present-in-a-comma-separated-list-of-strin with 1 occurrences migrated to:  
  https://stackoverflow.com/questions/29300806/a-bash-script-to-check-if-a-string-is-present-in-a-comma-separated-list-of-strin ([https](https://stackoverflow.com/questions/29300806/a-bash-script-to-check-if-a-string-is-present-in-a-comma-separated-list-of-strin) result 200).
* http://www.apache.org/licenses/LICENSE-2.0 with 3 occurrences migrated to:  
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).
* http://www.spring.io with 1 occurrences migrated to:  
  https://www.spring.io ([https](https://www.spring.io) result 301).

# Ignored
These URLs were intentionally ignored.

* http://maven.apache.org/POM/4.0.0 with 16 occurrences
* http://www.w3.org/2001/XMLSchema-instance with 8 occurrences
2019-03-16 11:43:40 -04:00
Tony Clarke
9af4b50a8d Update GW metrics filter to include two new tags; the http Method and the http status (intger value) 2019-03-06 00:25:24 -05:00
Ryan Baxter
5b810c3557 Merge remote-tracking branch 'origin/2.0.x' 2019-02-28 11:23:03 -05:00
Ryan Baxter
f2acad91a9 Add documentation on how to remove sensitive headers. Fixes #703 2019-02-28 11:16:47 -05:00
Ryan Baxter
0de8d2f197 Merge remote-tracking branch 'origin/2.0.x' 2019-02-28 11:03:57 -05:00
Ryan Baxter
a93d83a6a7 Add note to documentation pointing people to Boot, WebFlux, and Reactor before working with Gateway. Fixes #813 2019-02-28 11:03:28 -05:00
Ryan Baxter
0f153377f3 Merge remote-tracking branch 'origin/2.0.x' 2019-02-25 12:01:00 -05:00
Ryan Baxter
b38719a029 Merge pull request #849 from tony-clarke-amdocs/updated-grafana
Add new row to Grafana dashboard that includes four JVM panels
2019-02-25 11:59:01 -05:00
Ryan Baxter
02d01d4fc1 Merge remote-tracking branch 'origin/2.0.x' 2019-02-21 16:03:28 -05:00
Ryan Baxter
69d336c569 Fixes #838 2019-02-21 16:02:36 -05:00
Tony Clarke
1014d90478 Add new row to Grafana dashboard that includes four JVM panels 2019-02-21 14:56:28 -05:00
Olga Maciaszek-Sharma
ecd741545b Merge branch '2.0.x' 2019-02-14 12:11:16 +01:00
Olga Maciaszek-Sharma
e5e39d5387 Remove unresolved lombok doc links. 2019-02-14 12:10:42 +01:00
Nastya Smirnova
414dcfe23a Fix documentation (#839) 2019-02-14 11:27:12 +01:00
Olga Maciaszek-Sharma
af1278feb0 Merge changes from 2.0.x. 2019-02-13 16:14:20 +01:00
Alex Simons
8fd35c55b1 Revisited documentation about writing a custom global pre/post-filter (#836)
* Added documentation about writing a custom global pre/post-filter

* Removed unnecessary words about GlobalFilter.

* Added back removed section title
2019-02-13 16:05:19 +01:00
Ryan Baxter
68f97e9c49 Merge pull request #797 from Gsealy/delete-lombok
remove lombok in doc
2019-02-01 11:46:59 -05:00
Jan Thewes
569060c995 Fixed typo
Fixed an typo where an 'r' was missing and it was read as making instead of marking
2019-01-31 14:19:24 +01:00
Gsealy
93560a5644 remove lombok in doc 2019-01-25 11:34:58 +08:00
Spencer Gibb
ec3c9c7509 Documents retry filter does not support body.
fixes gh-761
2019-01-09 13:05:54 -05:00
Spencer Gibb
0cd2c4934e Merge branch '2.0.x' 2019-01-08 10:51:49 -05:00
Ryan Baxter
3b41ee5b7a Merge pull request #722 from ryanjbaxter/use-scheme-from-loadbalancer
Allow isSecure property of LoadBalancer ServiceInstance to determine the scheme of the URL
2019-01-07 16:13:31 -05:00
Usman
fc3ccbbdf1 Fixed type in documentation related to custom filters 2018-12-26 12:41:11 +00:00
Ryan Baxter
ef14f1543e Merge remote-tracking branch 'origin/2.0.x' 2018-12-19 20:03:57 -05:00
Ryan Baxter
383a204bcf Adding documentation on customizing DiscoveryClient predicates and filters. Fixes #637 2018-12-19 19:59:51 -05:00
Ryan Baxter
65f88ca2a4 Adding documentation for modify request/response gateway filters. Fixes #714. 2018-12-19 12:08:41 -05:00
Ryan Baxter
077b647ec4 Allow isSecure property of LoadBalancer ServiceInstance to determine the scheme of the URL. Fixes #641 2018-12-18 15:51:19 -05:00
Spencer Gibb
4d94650896 Merge branch '2.0.x' 2018-12-10 23:18:39 -05:00
Spencer Gibb
0da60bbeae Extracts variables from Host Route Predicate.
fixes gh-706
2018-12-10 23:00:34 -05:00
Spencer Gibb
8194137f03 Fixes constant documentation reference for Path Route Predicate.
Also aligns to a new constant name.

fixes gh-708
2018-12-10 22:19:07 -05:00
Spencer Gibb
c5ae434dd0 Merge branch '2.0.x' 2018-12-10 21:26:46 -05:00
Spencer Gibb
21f165c313 Adds convenience methods for working with Path Predicate variables.
fixes gh-705
2018-12-10 21:26:29 -05:00
Spencer Gibb
7a5502fd7a Allows multiple patterns in Path Predicate.
fixes gh-256
2018-12-10 17:22:27 -05:00
Spencer Gibb
4311db5214 Merge branch '2.0.x' 2018-12-10 15:46:43 -05:00
Spencer Gibb
d7669b7415 Fixes inconsistencies in request rate limiter filter.
Allows other `KeyResolver` implementations to be injected.

If key resolver does not resolve a key, requests can be conditionally
denied.

fixes gh-624
2018-12-10 15:45:20 -05:00