From 00a1f5b7712357c53d716538bca9006cdfc63112 Mon Sep 17 00:00:00 2001 From: buildmaster Date: Thu, 11 Feb 2021 14:27:32 +0000 Subject: [PATCH 1/4] Update SNAPSHOT to 2.2.7.RELEASE --- docs/pom.xml | 2 +- docs/src/main/asciidoc/_configprops.adoc | 145 +++++++++++++++------- pom.xml | 8 +- spring-cloud-gateway-core/pom.xml | 2 +- spring-cloud-gateway-dependencies/pom.xml | 4 +- spring-cloud-gateway-mvc/pom.xml | 2 +- spring-cloud-gateway-sample/pom.xml | 2 +- spring-cloud-gateway-server/pom.xml | 2 +- spring-cloud-gateway-webflux/pom.xml | 2 +- spring-cloud-starter-gateway/pom.xml | 2 +- 10 files changed, 114 insertions(+), 57 deletions(-) diff --git a/docs/pom.xml b/docs/pom.xml index 8f82d451..4a892ed3 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE spring-cloud-gateway-docs pom diff --git a/docs/src/main/asciidoc/_configprops.adoc b/docs/src/main/asciidoc/_configprops.adoc index adbd0f2c..80f99db0 100644 --- a/docs/src/main/asciidoc/_configprops.adoc +++ b/docs/src/main/asciidoc/_configprops.adoc @@ -2,30 +2,73 @@ |Name | Default | Description |spring.cloud.gateway.default-filters | | List of filter definitions that are applied to every route. -|spring.cloud.gateway.discovery.locator.enabled | false | Flag that enables DiscoveryClient gateway integration. +|spring.cloud.gateway.discovery.locator.enabled | `false` | Flag that enables DiscoveryClient gateway integration. |spring.cloud.gateway.discovery.locator.filters | | -|spring.cloud.gateway.discovery.locator.include-expression | true | SpEL expression that will evaluate whether to include a service in gateway integration or not, defaults to: true. -|spring.cloud.gateway.discovery.locator.lower-case-service-id | false | Option to lower case serviceId in predicates and filters, defaults to false. Useful with eureka when it automatically uppercases serviceId. so MYSERIVCE, would match /myservice/** +|spring.cloud.gateway.discovery.locator.include-expression | `true` | SpEL expression that will evaluate whether to include a service in gateway integration or not, defaults to: true. +|spring.cloud.gateway.discovery.locator.lower-case-service-id | `false` | Option to lower case serviceId in predicates and filters, defaults to false. Useful with eureka when it automatically uppercases serviceId. so MYSERIVCE, would match /myservice/** |spring.cloud.gateway.discovery.locator.predicates | | |spring.cloud.gateway.discovery.locator.route-id-prefix | | The prefix for the routeId, defaults to discoveryClient.getClass().getSimpleName() + "_". Service Id will be appended to create the routeId. -|spring.cloud.gateway.discovery.locator.url-expression | 'lb://'+serviceId | SpEL expression that create the uri for each route, defaults to: 'lb://'+serviceId. -|spring.cloud.gateway.enabled | true | Enables gateway functionality. -|spring.cloud.gateway.fail-on-route-definition-error | true | Option to fail on route definition errors, defaults to true. Otherwise, a warning is logged. +|spring.cloud.gateway.discovery.locator.url-expression | `'lb://'+serviceId` | SpEL expression that create the uri for each route, defaults to: 'lb://'+serviceId. +|spring.cloud.gateway.enabled | `true` | Enables gateway functionality. +|spring.cloud.gateway.fail-on-route-definition-error | `true` | Option to fail on route definition errors, defaults to true. Otherwise, a warning is logged. +|spring.cloud.gateway.filter.add-request-header.enabled | `true` | Enables the add-request-header filter. +|spring.cloud.gateway.filter.add-request-parameter.enabled | `true` | Enables the add-request-parameter filter. +|spring.cloud.gateway.filter.add-response-header.enabled | `true` | Enables the add-response-header filter. +|spring.cloud.gateway.filter.circuit-breaker.enabled | `true` | Enables the circuit-breaker filter. +|spring.cloud.gateway.filter.dedupe-response-header.enabled | `true` | Enables the dedupe-response-header filter. +|spring.cloud.gateway.filter.fallback-headers.enabled | `true` | Enables the fallback-headers filter. +|spring.cloud.gateway.filter.hystrix.enabled | `true` | Enables the hystrix filter. +|spring.cloud.gateway.filter.map-request-header.enabled | `true` | Enables the map-request-header filter. +|spring.cloud.gateway.filter.modify-request-body.enabled | `true` | Enables the modify-request-body filter. +|spring.cloud.gateway.filter.modify-response-body.enabled | `true` | Enables the modify-response-body filter. +|spring.cloud.gateway.filter.prefix-path.enabled | `true` | Enables the prefix-path filter. +|spring.cloud.gateway.filter.preserve-host-header.enabled | `true` | Enables the preserve-host-header filter. +|spring.cloud.gateway.filter.redirect-to.enabled | `true` | Enables the redirect-to filter. |spring.cloud.gateway.filter.remove-hop-by-hop.headers | | |spring.cloud.gateway.filter.remove-hop-by-hop.order | | -|spring.cloud.gateway.filter.request-rate-limiter.deny-empty-key | true | Switch to deny requests if the Key Resolver returns an empty key, defaults to true. +|spring.cloud.gateway.filter.remove-request-header.enabled | `true` | Enables the remove-request-header filter. +|spring.cloud.gateway.filter.remove-request-parameter.enabled | `true` | Enables the remove-request-parameter filter. +|spring.cloud.gateway.filter.remove-response-header.enabled | `true` | Enables the remove-response-header filter. +|spring.cloud.gateway.filter.request-header-size.enabled | `true` | Enables the request-header-size filter. +|spring.cloud.gateway.filter.request-header-to-request-uri.enabled | `true` | Enables the request-header-to-request-uri filter. +|spring.cloud.gateway.filter.request-rate-limiter.deny-empty-key | `true` | Switch to deny requests if the Key Resolver returns an empty key, defaults to true. |spring.cloud.gateway.filter.request-rate-limiter.empty-key-status-code | | HttpStatus to return when denyEmptyKey is true, defaults to FORBIDDEN. -|spring.cloud.gateway.filter.secure-headers.content-security-policy | default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline' | -|spring.cloud.gateway.filter.secure-headers.content-type-options | nosniff | +|spring.cloud.gateway.filter.request-rate-limiter.enabled | `true` | Enables the request-rate-limiter filter. +|spring.cloud.gateway.filter.request-size.enabled | `true` | Enables the request-size filter. +|spring.cloud.gateway.filter.retry.enabled | `true` | Enables the retry filter. +|spring.cloud.gateway.filter.rewrite-location-response-header.enabled | `true` | Enables the rewrite-location-response-header filter. +|spring.cloud.gateway.filter.rewrite-location.enabled | `true` | Enables the rewrite-location filter. +|spring.cloud.gateway.filter.rewrite-path.enabled | `true` | Enables the rewrite-path filter. +|spring.cloud.gateway.filter.rewrite-response-header.enabled | `true` | Enables the rewrite-response-header filter. +|spring.cloud.gateway.filter.save-session.enabled | `true` | Enables the save-session filter. +|spring.cloud.gateway.filter.secure-headers.content-security-policy | `default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline'` | +|spring.cloud.gateway.filter.secure-headers.content-type-options | `nosniff` | |spring.cloud.gateway.filter.secure-headers.disable | | -|spring.cloud.gateway.filter.secure-headers.download-options | noopen | -|spring.cloud.gateway.filter.secure-headers.frame-options | DENY | -|spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies | none | -|spring.cloud.gateway.filter.secure-headers.referrer-policy | no-referrer | -|spring.cloud.gateway.filter.secure-headers.strict-transport-security | max-age=631138519 | -|spring.cloud.gateway.filter.secure-headers.xss-protection-header | 1 ; mode=block | -|spring.cloud.gateway.forwarded.enabled | true | Enables the ForwardedHeadersFilter. -|spring.cloud.gateway.globalcors.add-to-simple-url-handler-mapping | false | If global CORS config should be added to the URL handler. +|spring.cloud.gateway.filter.secure-headers.download-options | `noopen` | +|spring.cloud.gateway.filter.secure-headers.enabled | `true` | Enables the secure-headers filter. +|spring.cloud.gateway.filter.secure-headers.frame-options | `DENY` | +|spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies | `none` | +|spring.cloud.gateway.filter.secure-headers.referrer-policy | `no-referrer` | +|spring.cloud.gateway.filter.secure-headers.strict-transport-security | `max-age=631138519` | +|spring.cloud.gateway.filter.secure-headers.xss-protection-header | `1 ; mode=block` | +|spring.cloud.gateway.filter.set-path.enabled | `true` | Enables the set-path filter. +|spring.cloud.gateway.filter.set-request-header.enabled | `true` | Enables the set-request-header filter. +|spring.cloud.gateway.filter.set-request-host-header.enabled | `true` | Enables the set-request-host-header filter. +|spring.cloud.gateway.filter.set-response-header.enabled | `true` | Enables the set-response-header filter. +|spring.cloud.gateway.filter.set-status.enabled | `true` | Enables the set-status filter. +|spring.cloud.gateway.filter.strip-prefix.enabled | `true` | Enables the strip-prefix filter. +|spring.cloud.gateway.forwarded.enabled | `true` | Enables the ForwardedHeadersFilter. +|spring.cloud.gateway.global-filter.adapt-cached-body.enabled | `true` | Enables the adapt-cached-body global filter. +|spring.cloud.gateway.global-filter.forward-path.enabled | `true` | Enables the forward-path global filter. +|spring.cloud.gateway.global-filter.forward-routing.enabled | `true` | Enables the forward-routing global filter. +|spring.cloud.gateway.global-filter.load-balancer-client.enabled | `true` | Enables the load-balancer-client global filter. +|spring.cloud.gateway.global-filter.netty-routing.enabled | `true` | Enables the netty-routing global filter. +|spring.cloud.gateway.global-filter.netty-write-response.enabled | `true` | Enables the netty-write-response global filter. +|spring.cloud.gateway.global-filter.reactive-load-balancer.enabled | `true` | Enables the reactive-loadbalancer global filter. +|spring.cloud.gateway.global-filter.remove-cached-body.enabled | `true` | Enables the remove-cached-body global filter. +|spring.cloud.gateway.global-filter.route-to-request-url.enabled | `true` | Enables the route-to-request-url global filter. +|spring.cloud.gateway.global-filter.websocket-routing.enabled | `true` | Enables the websocket-routing global filter. +|spring.cloud.gateway.globalcors.add-to-simple-url-handler-mapping | `false` | If global CORS config should be added to the URL handler. |spring.cloud.gateway.globalcors.cors-configurations | | |spring.cloud.gateway.httpclient.connect-timeout | | The connect timeout in millis, the default is 45s. |spring.cloud.gateway.httpclient.max-header-size | | The max response header size. @@ -34,7 +77,7 @@ |spring.cloud.gateway.httpclient.pool.max-connections | | Only for type FIXED, the maximum number of connections before starting pending acquisition on existing ones. |spring.cloud.gateway.httpclient.pool.max-idle-time | | Time in millis after which the channel will be closed. If NULL, there is no max idle time. |spring.cloud.gateway.httpclient.pool.max-life-time | | Duration after which the channel will be closed. If NULL, there is no max life time. -|spring.cloud.gateway.httpclient.pool.name | proxy | The channel pool map name, defaults to proxy. +|spring.cloud.gateway.httpclient.pool.name | `proxy` | The channel pool map name, defaults to proxy. |spring.cloud.gateway.httpclient.pool.type | | Type of pool for HttpClient to use, defaults to ELASTIC. |spring.cloud.gateway.httpclient.proxy.host | | Hostname for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.proxy.non-proxy-hosts-pattern | | Regular expression (Java) for a configured list of hosts. that should be reached directly, bypassing the proxy @@ -42,47 +85,61 @@ |spring.cloud.gateway.httpclient.proxy.port | | Port for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.proxy.username | | Username for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.response-timeout | | The response timeout. -|spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout | 3000ms | SSL close_notify flush timeout. Default to 3000 ms. +|spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout | `3000ms` | SSL close_notify flush timeout. Default to 3000 ms. |spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout | | SSL close_notify read timeout. Default to 0 ms. |spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.default-configuration-type | | The default ssl configuration type. Defaults to TCP. -|spring.cloud.gateway.httpclient.ssl.handshake-timeout | 10000ms | SSL handshake timeout. Default to 10000 ms +|spring.cloud.gateway.httpclient.ssl.handshake-timeout | `10000ms` | SSL handshake timeout. Default to 10000 ms |spring.cloud.gateway.httpclient.ssl.handshake-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.key-password | | Key password, default is same as keyStorePassword. |spring.cloud.gateway.httpclient.ssl.key-store | | Keystore path for Netty HttpClient. |spring.cloud.gateway.httpclient.ssl.key-store-password | | Keystore password. |spring.cloud.gateway.httpclient.ssl.key-store-provider | | Keystore provider for Netty HttpClient, optional field. -|spring.cloud.gateway.httpclient.ssl.key-store-type | JKS | Keystore type for Netty HttpClient, default is JKS. +|spring.cloud.gateway.httpclient.ssl.key-store-type | `JKS` | Keystore type for Netty HttpClient, default is JKS. |spring.cloud.gateway.httpclient.ssl.trusted-x509-certificates | | Trusted certificates for verifying the remote endpoint's certificate. -|spring.cloud.gateway.httpclient.ssl.use-insecure-trust-manager | false | Installs the netty InsecureTrustManagerFactory. This is insecure and not suitable for production. +|spring.cloud.gateway.httpclient.ssl.use-insecure-trust-manager | `false` | Installs the netty InsecureTrustManagerFactory. This is insecure and not suitable for production. |spring.cloud.gateway.httpclient.websocket.max-frame-payload-length | | Max frame payload length. -|spring.cloud.gateway.httpclient.websocket.proxy-ping | true | Proxy ping frames to downstream services, defaults to true. -|spring.cloud.gateway.httpclient.wiretap | false | Enables wiretap debugging for Netty HttpClient. -|spring.cloud.gateway.httpserver.wiretap | false | Enables wiretap debugging for Netty HttpServer. -|spring.cloud.gateway.loadbalancer.use404 | false | -|spring.cloud.gateway.metrics.enabled | true | Enables the collection of metrics data. +|spring.cloud.gateway.httpclient.websocket.proxy-ping | `true` | Proxy ping frames to downstream services, defaults to true. +|spring.cloud.gateway.httpclient.wiretap | `false` | Enables wiretap debugging for Netty HttpClient. +|spring.cloud.gateway.httpserver.wiretap | `false` | Enables wiretap debugging for Netty HttpServer. +|spring.cloud.gateway.loadbalancer.use404 | `false` | +|spring.cloud.gateway.metrics.enabled | `false` | Enables the collection of metrics data. +|spring.cloud.gateway.metrics.prefix | `gateway` | The prefix of all metrics emitted by gateway. |spring.cloud.gateway.metrics.tags | | Tags map that added to metrics. -|spring.cloud.gateway.redis-rate-limiter.burst-capacity-header | X-RateLimit-Burst-Capacity | The name of the header that returns the burst capacity configuration. +|spring.cloud.gateway.predicate.after.enabled | `true` | Enables the after predicate. +|spring.cloud.gateway.predicate.before.enabled | `true` | Enables the before predicate. +|spring.cloud.gateway.predicate.between.enabled | `true` | Enables the between predicate. +|spring.cloud.gateway.predicate.cloud-foundry-route-service.enabled | `true` | Enables the cloud-foundry-route-service predicate. +|spring.cloud.gateway.predicate.cookie.enabled | `true` | Enables the cookie predicate. +|spring.cloud.gateway.predicate.header.enabled | `true` | Enables the header predicate. +|spring.cloud.gateway.predicate.host.enabled | `true` | Enables the host predicate. +|spring.cloud.gateway.predicate.method.enabled | `true` | Enables the method predicate. +|spring.cloud.gateway.predicate.path.enabled | `true` | Enables the path predicate. +|spring.cloud.gateway.predicate.query.enabled | `true` | Enables the query predicate. +|spring.cloud.gateway.predicate.read-body.enabled | `true` | Enables the read-body predicate. +|spring.cloud.gateway.predicate.remote-addr.enabled | `true` | Enables the remote-addr predicate. +|spring.cloud.gateway.predicate.weight.enabled | `true` | Enables the weight predicate. +|spring.cloud.gateway.redis-rate-limiter.burst-capacity-header | `X-RateLimit-Burst-Capacity` | The name of the header that returns the burst capacity configuration. |spring.cloud.gateway.redis-rate-limiter.config | | -|spring.cloud.gateway.redis-rate-limiter.include-headers | true | Whether or not to include headers containing rate limiter information, defaults to true. -|spring.cloud.gateway.redis-rate-limiter.remaining-header | X-RateLimit-Remaining | The name of the header that returns number of remaining requests during the current second. -|spring.cloud.gateway.redis-rate-limiter.replenish-rate-header | X-RateLimit-Replenish-Rate | The name of the header that returns the replenish rate configuration. -|spring.cloud.gateway.redis-rate-limiter.requested-tokens-header | X-RateLimit-Requested-Tokens | The name of the header that returns the requested tokens configuration. +|spring.cloud.gateway.redis-rate-limiter.include-headers | `true` | Whether or not to include headers containing rate limiter information, defaults to true. +|spring.cloud.gateway.redis-rate-limiter.remaining-header | `X-RateLimit-Remaining` | The name of the header that returns number of remaining requests during the current second. +|spring.cloud.gateway.redis-rate-limiter.replenish-rate-header | `X-RateLimit-Replenish-Rate` | The name of the header that returns the replenish rate configuration. +|spring.cloud.gateway.redis-rate-limiter.requested-tokens-header | `X-RateLimit-Requested-Tokens` | The name of the header that returns the requested tokens configuration. |spring.cloud.gateway.routes | | List of Routes. |spring.cloud.gateway.set-status.original-status-header-name | | The name of the header which contains http code of the proxied request. |spring.cloud.gateway.streaming-media-types | | -|spring.cloud.gateway.x-forwarded.enabled | true | If the XForwardedHeadersFilter is enabled. -|spring.cloud.gateway.x-forwarded.for-append | true | If appending X-Forwarded-For as a list is enabled. -|spring.cloud.gateway.x-forwarded.for-enabled | true | If X-Forwarded-For is enabled. -|spring.cloud.gateway.x-forwarded.host-append | true | If appending X-Forwarded-Host as a list is enabled. -|spring.cloud.gateway.x-forwarded.host-enabled | true | If X-Forwarded-Host is enabled. -|spring.cloud.gateway.x-forwarded.order | 0 | The order of the XForwardedHeadersFilter. -|spring.cloud.gateway.x-forwarded.port-append | true | If appending X-Forwarded-Port as a list is enabled. -|spring.cloud.gateway.x-forwarded.port-enabled | true | If X-Forwarded-Port is enabled. -|spring.cloud.gateway.x-forwarded.prefix-append | true | If appending X-Forwarded-Prefix as a list is enabled. -|spring.cloud.gateway.x-forwarded.prefix-enabled | true | If X-Forwarded-Prefix is enabled. -|spring.cloud.gateway.x-forwarded.proto-append | true | If appending X-Forwarded-Proto as a list is enabled. -|spring.cloud.gateway.x-forwarded.proto-enabled | true | If X-Forwarded-Proto is enabled. +|spring.cloud.gateway.x-forwarded.enabled | `true` | If the XForwardedHeadersFilter is enabled. +|spring.cloud.gateway.x-forwarded.for-append | `true` | If appending X-Forwarded-For as a list is enabled. +|spring.cloud.gateway.x-forwarded.for-enabled | `true` | If X-Forwarded-For is enabled. +|spring.cloud.gateway.x-forwarded.host-append | `true` | If appending X-Forwarded-Host as a list is enabled. +|spring.cloud.gateway.x-forwarded.host-enabled | `true` | If X-Forwarded-Host is enabled. +|spring.cloud.gateway.x-forwarded.order | `0` | The order of the XForwardedHeadersFilter. +|spring.cloud.gateway.x-forwarded.port-append | `true` | If appending X-Forwarded-Port as a list is enabled. +|spring.cloud.gateway.x-forwarded.port-enabled | `true` | If X-Forwarded-Port is enabled. +|spring.cloud.gateway.x-forwarded.prefix-append | `true` | If appending X-Forwarded-Prefix as a list is enabled. +|spring.cloud.gateway.x-forwarded.prefix-enabled | `true` | If X-Forwarded-Prefix is enabled. +|spring.cloud.gateway.x-forwarded.proto-append | `true` | If appending X-Forwarded-Proto as a list is enabled. +|spring.cloud.gateway.x-forwarded.proto-enabled | `true` | If X-Forwarded-Proto is enabled. |=== \ No newline at end of file diff --git a/pom.xml b/pom.xml index 95b677a2..e0ff16bf 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE pom Spring Cloud Gateway @@ -15,7 +15,7 @@ org.springframework.cloud spring-cloud-build - 2.3.1.RELEASE + 2.3.2.RELEASE @@ -52,8 +52,8 @@ UTF-8 UTF-8 1.8 - 2.2.7.BUILD-SNAPSHOT - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE + 2.2.7.RELEASE 1.0.4.RELEASE 0.6 1.0.3.RELEASE diff --git a/spring-cloud-gateway-core/pom.xml b/spring-cloud-gateway-core/pom.xml index 45df287b..2190e279 100644 --- a/spring-cloud-gateway-core/pom.xml +++ b/spring-cloud-gateway-core/pom.xml @@ -7,7 +7,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE .. spring-cloud-gateway-core diff --git a/spring-cloud-gateway-dependencies/pom.xml b/spring-cloud-gateway-dependencies/pom.xml index 148cc4b1..48721226 100644 --- a/spring-cloud-gateway-dependencies/pom.xml +++ b/spring-cloud-gateway-dependencies/pom.xml @@ -6,12 +6,12 @@ spring-cloud-dependencies-parent org.springframework.cloud - 2.3.2.BUILD-SNAPSHOT + 2.3.2.RELEASE spring-cloud-gateway-dependencies - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE pom spring-cloud-gateway-dependencies diff --git a/spring-cloud-gateway-mvc/pom.xml b/spring-cloud-gateway-mvc/pom.xml index 543382b3..a0ffc4fa 100644 --- a/spring-cloud-gateway-mvc/pom.xml +++ b/spring-cloud-gateway-mvc/pom.xml @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE .. diff --git a/spring-cloud-gateway-sample/pom.xml b/spring-cloud-gateway-sample/pom.xml index 0386fe8f..225e6a26 100644 --- a/spring-cloud-gateway-sample/pom.xml +++ b/spring-cloud-gateway-sample/pom.xml @@ -16,7 +16,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE .. diff --git a/spring-cloud-gateway-server/pom.xml b/spring-cloud-gateway-server/pom.xml index b368edb8..bd873618 100644 --- a/spring-cloud-gateway-server/pom.xml +++ b/spring-cloud-gateway-server/pom.xml @@ -23,7 +23,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE .. spring-cloud-gateway-server diff --git a/spring-cloud-gateway-webflux/pom.xml b/spring-cloud-gateway-webflux/pom.xml index 26dc649a..5831f5d9 100644 --- a/spring-cloud-gateway-webflux/pom.xml +++ b/spring-cloud-gateway-webflux/pom.xml @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE .. diff --git a/spring-cloud-starter-gateway/pom.xml b/spring-cloud-starter-gateway/pom.xml index 6ad7a310..cc833c64 100644 --- a/spring-cloud-starter-gateway/pom.xml +++ b/spring-cloud-starter-gateway/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.7.RELEASE .. spring-cloud-starter-gateway From 973c458a7087ab3c5a877aecf92f2f65cc25e75c Mon Sep 17 00:00:00 2001 From: buildmaster Date: Thu, 11 Feb 2021 14:28:54 +0000 Subject: [PATCH 2/4] Going back to snapshots --- docs/pom.xml | 2 +- docs/src/main/asciidoc/_configprops.adoc | 145 +++++++--------------- pom.xml | 8 +- spring-cloud-gateway-core/pom.xml | 2 +- spring-cloud-gateway-dependencies/pom.xml | 4 +- spring-cloud-gateway-mvc/pom.xml | 2 +- spring-cloud-gateway-sample/pom.xml | 2 +- spring-cloud-gateway-server/pom.xml | 2 +- spring-cloud-gateway-webflux/pom.xml | 2 +- spring-cloud-starter-gateway/pom.xml | 2 +- 10 files changed, 57 insertions(+), 114 deletions(-) diff --git a/docs/pom.xml b/docs/pom.xml index 4a892ed3..8f82d451 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT spring-cloud-gateway-docs pom diff --git a/docs/src/main/asciidoc/_configprops.adoc b/docs/src/main/asciidoc/_configprops.adoc index 80f99db0..adbd0f2c 100644 --- a/docs/src/main/asciidoc/_configprops.adoc +++ b/docs/src/main/asciidoc/_configprops.adoc @@ -2,73 +2,30 @@ |Name | Default | Description |spring.cloud.gateway.default-filters | | List of filter definitions that are applied to every route. -|spring.cloud.gateway.discovery.locator.enabled | `false` | Flag that enables DiscoveryClient gateway integration. +|spring.cloud.gateway.discovery.locator.enabled | false | Flag that enables DiscoveryClient gateway integration. |spring.cloud.gateway.discovery.locator.filters | | -|spring.cloud.gateway.discovery.locator.include-expression | `true` | SpEL expression that will evaluate whether to include a service in gateway integration or not, defaults to: true. -|spring.cloud.gateway.discovery.locator.lower-case-service-id | `false` | Option to lower case serviceId in predicates and filters, defaults to false. Useful with eureka when it automatically uppercases serviceId. so MYSERIVCE, would match /myservice/** +|spring.cloud.gateway.discovery.locator.include-expression | true | SpEL expression that will evaluate whether to include a service in gateway integration or not, defaults to: true. +|spring.cloud.gateway.discovery.locator.lower-case-service-id | false | Option to lower case serviceId in predicates and filters, defaults to false. Useful with eureka when it automatically uppercases serviceId. so MYSERIVCE, would match /myservice/** |spring.cloud.gateway.discovery.locator.predicates | | |spring.cloud.gateway.discovery.locator.route-id-prefix | | The prefix for the routeId, defaults to discoveryClient.getClass().getSimpleName() + "_". Service Id will be appended to create the routeId. -|spring.cloud.gateway.discovery.locator.url-expression | `'lb://'+serviceId` | SpEL expression that create the uri for each route, defaults to: 'lb://'+serviceId. -|spring.cloud.gateway.enabled | `true` | Enables gateway functionality. -|spring.cloud.gateway.fail-on-route-definition-error | `true` | Option to fail on route definition errors, defaults to true. Otherwise, a warning is logged. -|spring.cloud.gateway.filter.add-request-header.enabled | `true` | Enables the add-request-header filter. -|spring.cloud.gateway.filter.add-request-parameter.enabled | `true` | Enables the add-request-parameter filter. -|spring.cloud.gateway.filter.add-response-header.enabled | `true` | Enables the add-response-header filter. -|spring.cloud.gateway.filter.circuit-breaker.enabled | `true` | Enables the circuit-breaker filter. -|spring.cloud.gateway.filter.dedupe-response-header.enabled | `true` | Enables the dedupe-response-header filter. -|spring.cloud.gateway.filter.fallback-headers.enabled | `true` | Enables the fallback-headers filter. -|spring.cloud.gateway.filter.hystrix.enabled | `true` | Enables the hystrix filter. -|spring.cloud.gateway.filter.map-request-header.enabled | `true` | Enables the map-request-header filter. -|spring.cloud.gateway.filter.modify-request-body.enabled | `true` | Enables the modify-request-body filter. -|spring.cloud.gateway.filter.modify-response-body.enabled | `true` | Enables the modify-response-body filter. -|spring.cloud.gateway.filter.prefix-path.enabled | `true` | Enables the prefix-path filter. -|spring.cloud.gateway.filter.preserve-host-header.enabled | `true` | Enables the preserve-host-header filter. -|spring.cloud.gateway.filter.redirect-to.enabled | `true` | Enables the redirect-to filter. +|spring.cloud.gateway.discovery.locator.url-expression | 'lb://'+serviceId | SpEL expression that create the uri for each route, defaults to: 'lb://'+serviceId. +|spring.cloud.gateway.enabled | true | Enables gateway functionality. +|spring.cloud.gateway.fail-on-route-definition-error | true | Option to fail on route definition errors, defaults to true. Otherwise, a warning is logged. |spring.cloud.gateway.filter.remove-hop-by-hop.headers | | |spring.cloud.gateway.filter.remove-hop-by-hop.order | | -|spring.cloud.gateway.filter.remove-request-header.enabled | `true` | Enables the remove-request-header filter. -|spring.cloud.gateway.filter.remove-request-parameter.enabled | `true` | Enables the remove-request-parameter filter. -|spring.cloud.gateway.filter.remove-response-header.enabled | `true` | Enables the remove-response-header filter. -|spring.cloud.gateway.filter.request-header-size.enabled | `true` | Enables the request-header-size filter. -|spring.cloud.gateway.filter.request-header-to-request-uri.enabled | `true` | Enables the request-header-to-request-uri filter. -|spring.cloud.gateway.filter.request-rate-limiter.deny-empty-key | `true` | Switch to deny requests if the Key Resolver returns an empty key, defaults to true. +|spring.cloud.gateway.filter.request-rate-limiter.deny-empty-key | true | Switch to deny requests if the Key Resolver returns an empty key, defaults to true. |spring.cloud.gateway.filter.request-rate-limiter.empty-key-status-code | | HttpStatus to return when denyEmptyKey is true, defaults to FORBIDDEN. -|spring.cloud.gateway.filter.request-rate-limiter.enabled | `true` | Enables the request-rate-limiter filter. -|spring.cloud.gateway.filter.request-size.enabled | `true` | Enables the request-size filter. -|spring.cloud.gateway.filter.retry.enabled | `true` | Enables the retry filter. -|spring.cloud.gateway.filter.rewrite-location-response-header.enabled | `true` | Enables the rewrite-location-response-header filter. -|spring.cloud.gateway.filter.rewrite-location.enabled | `true` | Enables the rewrite-location filter. -|spring.cloud.gateway.filter.rewrite-path.enabled | `true` | Enables the rewrite-path filter. -|spring.cloud.gateway.filter.rewrite-response-header.enabled | `true` | Enables the rewrite-response-header filter. -|spring.cloud.gateway.filter.save-session.enabled | `true` | Enables the save-session filter. -|spring.cloud.gateway.filter.secure-headers.content-security-policy | `default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline'` | -|spring.cloud.gateway.filter.secure-headers.content-type-options | `nosniff` | +|spring.cloud.gateway.filter.secure-headers.content-security-policy | default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline' | +|spring.cloud.gateway.filter.secure-headers.content-type-options | nosniff | |spring.cloud.gateway.filter.secure-headers.disable | | -|spring.cloud.gateway.filter.secure-headers.download-options | `noopen` | -|spring.cloud.gateway.filter.secure-headers.enabled | `true` | Enables the secure-headers filter. -|spring.cloud.gateway.filter.secure-headers.frame-options | `DENY` | -|spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies | `none` | -|spring.cloud.gateway.filter.secure-headers.referrer-policy | `no-referrer` | -|spring.cloud.gateway.filter.secure-headers.strict-transport-security | `max-age=631138519` | -|spring.cloud.gateway.filter.secure-headers.xss-protection-header | `1 ; mode=block` | -|spring.cloud.gateway.filter.set-path.enabled | `true` | Enables the set-path filter. -|spring.cloud.gateway.filter.set-request-header.enabled | `true` | Enables the set-request-header filter. -|spring.cloud.gateway.filter.set-request-host-header.enabled | `true` | Enables the set-request-host-header filter. -|spring.cloud.gateway.filter.set-response-header.enabled | `true` | Enables the set-response-header filter. -|spring.cloud.gateway.filter.set-status.enabled | `true` | Enables the set-status filter. -|spring.cloud.gateway.filter.strip-prefix.enabled | `true` | Enables the strip-prefix filter. -|spring.cloud.gateway.forwarded.enabled | `true` | Enables the ForwardedHeadersFilter. -|spring.cloud.gateway.global-filter.adapt-cached-body.enabled | `true` | Enables the adapt-cached-body global filter. -|spring.cloud.gateway.global-filter.forward-path.enabled | `true` | Enables the forward-path global filter. -|spring.cloud.gateway.global-filter.forward-routing.enabled | `true` | Enables the forward-routing global filter. -|spring.cloud.gateway.global-filter.load-balancer-client.enabled | `true` | Enables the load-balancer-client global filter. -|spring.cloud.gateway.global-filter.netty-routing.enabled | `true` | Enables the netty-routing global filter. -|spring.cloud.gateway.global-filter.netty-write-response.enabled | `true` | Enables the netty-write-response global filter. -|spring.cloud.gateway.global-filter.reactive-load-balancer.enabled | `true` | Enables the reactive-loadbalancer global filter. -|spring.cloud.gateway.global-filter.remove-cached-body.enabled | `true` | Enables the remove-cached-body global filter. -|spring.cloud.gateway.global-filter.route-to-request-url.enabled | `true` | Enables the route-to-request-url global filter. -|spring.cloud.gateway.global-filter.websocket-routing.enabled | `true` | Enables the websocket-routing global filter. -|spring.cloud.gateway.globalcors.add-to-simple-url-handler-mapping | `false` | If global CORS config should be added to the URL handler. +|spring.cloud.gateway.filter.secure-headers.download-options | noopen | +|spring.cloud.gateway.filter.secure-headers.frame-options | DENY | +|spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies | none | +|spring.cloud.gateway.filter.secure-headers.referrer-policy | no-referrer | +|spring.cloud.gateway.filter.secure-headers.strict-transport-security | max-age=631138519 | +|spring.cloud.gateway.filter.secure-headers.xss-protection-header | 1 ; mode=block | +|spring.cloud.gateway.forwarded.enabled | true | Enables the ForwardedHeadersFilter. +|spring.cloud.gateway.globalcors.add-to-simple-url-handler-mapping | false | If global CORS config should be added to the URL handler. |spring.cloud.gateway.globalcors.cors-configurations | | |spring.cloud.gateway.httpclient.connect-timeout | | The connect timeout in millis, the default is 45s. |spring.cloud.gateway.httpclient.max-header-size | | The max response header size. @@ -77,7 +34,7 @@ |spring.cloud.gateway.httpclient.pool.max-connections | | Only for type FIXED, the maximum number of connections before starting pending acquisition on existing ones. |spring.cloud.gateway.httpclient.pool.max-idle-time | | Time in millis after which the channel will be closed. If NULL, there is no max idle time. |spring.cloud.gateway.httpclient.pool.max-life-time | | Duration after which the channel will be closed. If NULL, there is no max life time. -|spring.cloud.gateway.httpclient.pool.name | `proxy` | The channel pool map name, defaults to proxy. +|spring.cloud.gateway.httpclient.pool.name | proxy | The channel pool map name, defaults to proxy. |spring.cloud.gateway.httpclient.pool.type | | Type of pool for HttpClient to use, defaults to ELASTIC. |spring.cloud.gateway.httpclient.proxy.host | | Hostname for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.proxy.non-proxy-hosts-pattern | | Regular expression (Java) for a configured list of hosts. that should be reached directly, bypassing the proxy @@ -85,61 +42,47 @@ |spring.cloud.gateway.httpclient.proxy.port | | Port for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.proxy.username | | Username for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.response-timeout | | The response timeout. -|spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout | `3000ms` | SSL close_notify flush timeout. Default to 3000 ms. +|spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout | 3000ms | SSL close_notify flush timeout. Default to 3000 ms. |spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout | | SSL close_notify read timeout. Default to 0 ms. |spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.default-configuration-type | | The default ssl configuration type. Defaults to TCP. -|spring.cloud.gateway.httpclient.ssl.handshake-timeout | `10000ms` | SSL handshake timeout. Default to 10000 ms +|spring.cloud.gateway.httpclient.ssl.handshake-timeout | 10000ms | SSL handshake timeout. Default to 10000 ms |spring.cloud.gateway.httpclient.ssl.handshake-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.key-password | | Key password, default is same as keyStorePassword. |spring.cloud.gateway.httpclient.ssl.key-store | | Keystore path for Netty HttpClient. |spring.cloud.gateway.httpclient.ssl.key-store-password | | Keystore password. |spring.cloud.gateway.httpclient.ssl.key-store-provider | | Keystore provider for Netty HttpClient, optional field. -|spring.cloud.gateway.httpclient.ssl.key-store-type | `JKS` | Keystore type for Netty HttpClient, default is JKS. +|spring.cloud.gateway.httpclient.ssl.key-store-type | JKS | Keystore type for Netty HttpClient, default is JKS. |spring.cloud.gateway.httpclient.ssl.trusted-x509-certificates | | Trusted certificates for verifying the remote endpoint's certificate. -|spring.cloud.gateway.httpclient.ssl.use-insecure-trust-manager | `false` | Installs the netty InsecureTrustManagerFactory. This is insecure and not suitable for production. +|spring.cloud.gateway.httpclient.ssl.use-insecure-trust-manager | false | Installs the netty InsecureTrustManagerFactory. This is insecure and not suitable for production. |spring.cloud.gateway.httpclient.websocket.max-frame-payload-length | | Max frame payload length. -|spring.cloud.gateway.httpclient.websocket.proxy-ping | `true` | Proxy ping frames to downstream services, defaults to true. -|spring.cloud.gateway.httpclient.wiretap | `false` | Enables wiretap debugging for Netty HttpClient. -|spring.cloud.gateway.httpserver.wiretap | `false` | Enables wiretap debugging for Netty HttpServer. -|spring.cloud.gateway.loadbalancer.use404 | `false` | -|spring.cloud.gateway.metrics.enabled | `false` | Enables the collection of metrics data. -|spring.cloud.gateway.metrics.prefix | `gateway` | The prefix of all metrics emitted by gateway. +|spring.cloud.gateway.httpclient.websocket.proxy-ping | true | Proxy ping frames to downstream services, defaults to true. +|spring.cloud.gateway.httpclient.wiretap | false | Enables wiretap debugging for Netty HttpClient. +|spring.cloud.gateway.httpserver.wiretap | false | Enables wiretap debugging for Netty HttpServer. +|spring.cloud.gateway.loadbalancer.use404 | false | +|spring.cloud.gateway.metrics.enabled | true | Enables the collection of metrics data. |spring.cloud.gateway.metrics.tags | | Tags map that added to metrics. -|spring.cloud.gateway.predicate.after.enabled | `true` | Enables the after predicate. -|spring.cloud.gateway.predicate.before.enabled | `true` | Enables the before predicate. -|spring.cloud.gateway.predicate.between.enabled | `true` | Enables the between predicate. -|spring.cloud.gateway.predicate.cloud-foundry-route-service.enabled | `true` | Enables the cloud-foundry-route-service predicate. -|spring.cloud.gateway.predicate.cookie.enabled | `true` | Enables the cookie predicate. -|spring.cloud.gateway.predicate.header.enabled | `true` | Enables the header predicate. -|spring.cloud.gateway.predicate.host.enabled | `true` | Enables the host predicate. -|spring.cloud.gateway.predicate.method.enabled | `true` | Enables the method predicate. -|spring.cloud.gateway.predicate.path.enabled | `true` | Enables the path predicate. -|spring.cloud.gateway.predicate.query.enabled | `true` | Enables the query predicate. -|spring.cloud.gateway.predicate.read-body.enabled | `true` | Enables the read-body predicate. -|spring.cloud.gateway.predicate.remote-addr.enabled | `true` | Enables the remote-addr predicate. -|spring.cloud.gateway.predicate.weight.enabled | `true` | Enables the weight predicate. -|spring.cloud.gateway.redis-rate-limiter.burst-capacity-header | `X-RateLimit-Burst-Capacity` | The name of the header that returns the burst capacity configuration. +|spring.cloud.gateway.redis-rate-limiter.burst-capacity-header | X-RateLimit-Burst-Capacity | The name of the header that returns the burst capacity configuration. |spring.cloud.gateway.redis-rate-limiter.config | | -|spring.cloud.gateway.redis-rate-limiter.include-headers | `true` | Whether or not to include headers containing rate limiter information, defaults to true. -|spring.cloud.gateway.redis-rate-limiter.remaining-header | `X-RateLimit-Remaining` | The name of the header that returns number of remaining requests during the current second. -|spring.cloud.gateway.redis-rate-limiter.replenish-rate-header | `X-RateLimit-Replenish-Rate` | The name of the header that returns the replenish rate configuration. -|spring.cloud.gateway.redis-rate-limiter.requested-tokens-header | `X-RateLimit-Requested-Tokens` | The name of the header that returns the requested tokens configuration. +|spring.cloud.gateway.redis-rate-limiter.include-headers | true | Whether or not to include headers containing rate limiter information, defaults to true. +|spring.cloud.gateway.redis-rate-limiter.remaining-header | X-RateLimit-Remaining | The name of the header that returns number of remaining requests during the current second. +|spring.cloud.gateway.redis-rate-limiter.replenish-rate-header | X-RateLimit-Replenish-Rate | The name of the header that returns the replenish rate configuration. +|spring.cloud.gateway.redis-rate-limiter.requested-tokens-header | X-RateLimit-Requested-Tokens | The name of the header that returns the requested tokens configuration. |spring.cloud.gateway.routes | | List of Routes. |spring.cloud.gateway.set-status.original-status-header-name | | The name of the header which contains http code of the proxied request. |spring.cloud.gateway.streaming-media-types | | -|spring.cloud.gateway.x-forwarded.enabled | `true` | If the XForwardedHeadersFilter is enabled. -|spring.cloud.gateway.x-forwarded.for-append | `true` | If appending X-Forwarded-For as a list is enabled. -|spring.cloud.gateway.x-forwarded.for-enabled | `true` | If X-Forwarded-For is enabled. -|spring.cloud.gateway.x-forwarded.host-append | `true` | If appending X-Forwarded-Host as a list is enabled. -|spring.cloud.gateway.x-forwarded.host-enabled | `true` | If X-Forwarded-Host is enabled. -|spring.cloud.gateway.x-forwarded.order | `0` | The order of the XForwardedHeadersFilter. -|spring.cloud.gateway.x-forwarded.port-append | `true` | If appending X-Forwarded-Port as a list is enabled. -|spring.cloud.gateway.x-forwarded.port-enabled | `true` | If X-Forwarded-Port is enabled. -|spring.cloud.gateway.x-forwarded.prefix-append | `true` | If appending X-Forwarded-Prefix as a list is enabled. -|spring.cloud.gateway.x-forwarded.prefix-enabled | `true` | If X-Forwarded-Prefix is enabled. -|spring.cloud.gateway.x-forwarded.proto-append | `true` | If appending X-Forwarded-Proto as a list is enabled. -|spring.cloud.gateway.x-forwarded.proto-enabled | `true` | If X-Forwarded-Proto is enabled. +|spring.cloud.gateway.x-forwarded.enabled | true | If the XForwardedHeadersFilter is enabled. +|spring.cloud.gateway.x-forwarded.for-append | true | If appending X-Forwarded-For as a list is enabled. +|spring.cloud.gateway.x-forwarded.for-enabled | true | If X-Forwarded-For is enabled. +|spring.cloud.gateway.x-forwarded.host-append | true | If appending X-Forwarded-Host as a list is enabled. +|spring.cloud.gateway.x-forwarded.host-enabled | true | If X-Forwarded-Host is enabled. +|spring.cloud.gateway.x-forwarded.order | 0 | The order of the XForwardedHeadersFilter. +|spring.cloud.gateway.x-forwarded.port-append | true | If appending X-Forwarded-Port as a list is enabled. +|spring.cloud.gateway.x-forwarded.port-enabled | true | If X-Forwarded-Port is enabled. +|spring.cloud.gateway.x-forwarded.prefix-append | true | If appending X-Forwarded-Prefix as a list is enabled. +|spring.cloud.gateway.x-forwarded.prefix-enabled | true | If X-Forwarded-Prefix is enabled. +|spring.cloud.gateway.x-forwarded.proto-append | true | If appending X-Forwarded-Proto as a list is enabled. +|spring.cloud.gateway.x-forwarded.proto-enabled | true | If X-Forwarded-Proto is enabled. |=== \ No newline at end of file diff --git a/pom.xml b/pom.xml index e0ff16bf..95b677a2 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT pom Spring Cloud Gateway @@ -15,7 +15,7 @@ org.springframework.cloud spring-cloud-build - 2.3.2.RELEASE + 2.3.1.RELEASE @@ -52,8 +52,8 @@ UTF-8 UTF-8 1.8 - 2.2.7.RELEASE - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT + 2.2.7.BUILD-SNAPSHOT 1.0.4.RELEASE 0.6 1.0.3.RELEASE diff --git a/spring-cloud-gateway-core/pom.xml b/spring-cloud-gateway-core/pom.xml index 2190e279..45df287b 100644 --- a/spring-cloud-gateway-core/pom.xml +++ b/spring-cloud-gateway-core/pom.xml @@ -7,7 +7,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT .. spring-cloud-gateway-core diff --git a/spring-cloud-gateway-dependencies/pom.xml b/spring-cloud-gateway-dependencies/pom.xml index 48721226..148cc4b1 100644 --- a/spring-cloud-gateway-dependencies/pom.xml +++ b/spring-cloud-gateway-dependencies/pom.xml @@ -6,12 +6,12 @@ spring-cloud-dependencies-parent org.springframework.cloud - 2.3.2.RELEASE + 2.3.2.BUILD-SNAPSHOT spring-cloud-gateway-dependencies - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT pom spring-cloud-gateway-dependencies diff --git a/spring-cloud-gateway-mvc/pom.xml b/spring-cloud-gateway-mvc/pom.xml index a0ffc4fa..543382b3 100644 --- a/spring-cloud-gateway-mvc/pom.xml +++ b/spring-cloud-gateway-mvc/pom.xml @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT .. diff --git a/spring-cloud-gateway-sample/pom.xml b/spring-cloud-gateway-sample/pom.xml index 225e6a26..0386fe8f 100644 --- a/spring-cloud-gateway-sample/pom.xml +++ b/spring-cloud-gateway-sample/pom.xml @@ -16,7 +16,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT .. diff --git a/spring-cloud-gateway-server/pom.xml b/spring-cloud-gateway-server/pom.xml index bd873618..b368edb8 100644 --- a/spring-cloud-gateway-server/pom.xml +++ b/spring-cloud-gateway-server/pom.xml @@ -23,7 +23,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT .. spring-cloud-gateway-server diff --git a/spring-cloud-gateway-webflux/pom.xml b/spring-cloud-gateway-webflux/pom.xml index 5831f5d9..26dc649a 100644 --- a/spring-cloud-gateway-webflux/pom.xml +++ b/spring-cloud-gateway-webflux/pom.xml @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT .. diff --git a/spring-cloud-starter-gateway/pom.xml b/spring-cloud-starter-gateway/pom.xml index cc833c64..6ad7a310 100644 --- a/spring-cloud-starter-gateway/pom.xml +++ b/spring-cloud-starter-gateway/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.RELEASE + 2.2.7.BUILD-SNAPSHOT .. spring-cloud-starter-gateway From df5e032bc90a158d463416ca6b29d294f4c6ffa5 Mon Sep 17 00:00:00 2001 From: buildmaster Date: Thu, 11 Feb 2021 14:28:54 +0000 Subject: [PATCH 3/4] Bumping versions to 2.2.8.BUILD-SNAPSHOT after release --- docs/pom.xml | 2 +- pom.xml | 8 ++++---- spring-cloud-gateway-core/pom.xml | 2 +- spring-cloud-gateway-dependencies/pom.xml | 4 ++-- spring-cloud-gateway-mvc/pom.xml | 2 +- spring-cloud-gateway-sample/pom.xml | 2 +- spring-cloud-gateway-server/pom.xml | 2 +- spring-cloud-gateway-webflux/pom.xml | 2 +- spring-cloud-starter-gateway/pom.xml | 2 +- 9 files changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/pom.xml b/docs/pom.xml index 8f82d451..8cf050f3 100644 --- a/docs/pom.xml +++ b/docs/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT spring-cloud-gateway-docs pom diff --git a/pom.xml b/pom.xml index 95b677a2..9b978b14 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT pom Spring Cloud Gateway @@ -15,7 +15,7 @@ org.springframework.cloud spring-cloud-build - 2.3.1.RELEASE + 2.3.2.RELEASE @@ -52,8 +52,8 @@ UTF-8 UTF-8 1.8 - 2.2.7.BUILD-SNAPSHOT - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT 1.0.4.RELEASE 0.6 1.0.3.RELEASE diff --git a/spring-cloud-gateway-core/pom.xml b/spring-cloud-gateway-core/pom.xml index 45df287b..3d1db569 100644 --- a/spring-cloud-gateway-core/pom.xml +++ b/spring-cloud-gateway-core/pom.xml @@ -7,7 +7,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT .. spring-cloud-gateway-core diff --git a/spring-cloud-gateway-dependencies/pom.xml b/spring-cloud-gateway-dependencies/pom.xml index 148cc4b1..97e7393b 100644 --- a/spring-cloud-gateway-dependencies/pom.xml +++ b/spring-cloud-gateway-dependencies/pom.xml @@ -6,12 +6,12 @@ spring-cloud-dependencies-parent org.springframework.cloud - 2.3.2.BUILD-SNAPSHOT + 2.3.3.BUILD-SNAPSHOT spring-cloud-gateway-dependencies - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT pom spring-cloud-gateway-dependencies diff --git a/spring-cloud-gateway-mvc/pom.xml b/spring-cloud-gateway-mvc/pom.xml index 543382b3..b14c1d9c 100644 --- a/spring-cloud-gateway-mvc/pom.xml +++ b/spring-cloud-gateway-mvc/pom.xml @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT .. diff --git a/spring-cloud-gateway-sample/pom.xml b/spring-cloud-gateway-sample/pom.xml index 0386fe8f..8c0af80a 100644 --- a/spring-cloud-gateway-sample/pom.xml +++ b/spring-cloud-gateway-sample/pom.xml @@ -16,7 +16,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT .. diff --git a/spring-cloud-gateway-server/pom.xml b/spring-cloud-gateway-server/pom.xml index b368edb8..2e060af3 100644 --- a/spring-cloud-gateway-server/pom.xml +++ b/spring-cloud-gateway-server/pom.xml @@ -23,7 +23,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT .. spring-cloud-gateway-server diff --git a/spring-cloud-gateway-webflux/pom.xml b/spring-cloud-gateway-webflux/pom.xml index 26dc649a..9dd822bf 100644 --- a/spring-cloud-gateway-webflux/pom.xml +++ b/spring-cloud-gateway-webflux/pom.xml @@ -11,7 +11,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT .. diff --git a/spring-cloud-starter-gateway/pom.xml b/spring-cloud-starter-gateway/pom.xml index 6ad7a310..3c2d8595 100644 --- a/spring-cloud-starter-gateway/pom.xml +++ b/spring-cloud-starter-gateway/pom.xml @@ -6,7 +6,7 @@ org.springframework.cloud spring-cloud-gateway - 2.2.7.BUILD-SNAPSHOT + 2.2.8.BUILD-SNAPSHOT .. spring-cloud-starter-gateway From 15db93cca9c5707d705e7d6eb910bf32d627346e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mete=20Alpaslan=20Kat=C4=B1rc=C4=B1o=C4=9Flu?= Date: Sun, 14 Feb 2021 13:20:45 +0300 Subject: [PATCH 4/4] Enable compression support via configuration Fixes gh-361 Fixes gh-2146 --- docs/src/main/asciidoc/_configprops.adoc | 25 ++++++++++--------- .../config/GatewayAutoConfiguration.java | 5 ++++ .../gateway/config/HttpClientProperties.java | 12 +++++++++ .../config/GatewayAutoConfigurationTests.java | 2 ++ 4 files changed, 32 insertions(+), 12 deletions(-) diff --git a/docs/src/main/asciidoc/_configprops.adoc b/docs/src/main/asciidoc/_configprops.adoc index adbd0f2c..46953338 100644 --- a/docs/src/main/asciidoc/_configprops.adoc +++ b/docs/src/main/asciidoc/_configprops.adoc @@ -15,15 +15,15 @@ |spring.cloud.gateway.filter.remove-hop-by-hop.order | | |spring.cloud.gateway.filter.request-rate-limiter.deny-empty-key | true | Switch to deny requests if the Key Resolver returns an empty key, defaults to true. |spring.cloud.gateway.filter.request-rate-limiter.empty-key-status-code | | HttpStatus to return when denyEmptyKey is true, defaults to FORBIDDEN. -|spring.cloud.gateway.filter.secure-headers.content-security-policy | default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline' | -|spring.cloud.gateway.filter.secure-headers.content-type-options | nosniff | +|spring.cloud.gateway.filter.secure-headers.content-security-policy | default-src 'self' https:; font-src 'self' https: data:; img-src 'self' https: data:; object-src 'none'; script-src https:; style-src 'self' https: 'unsafe-inline' | +|spring.cloud.gateway.filter.secure-headers.content-type-options | nosniff | |spring.cloud.gateway.filter.secure-headers.disable | | -|spring.cloud.gateway.filter.secure-headers.download-options | noopen | -|spring.cloud.gateway.filter.secure-headers.frame-options | DENY | -|spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies | none | -|spring.cloud.gateway.filter.secure-headers.referrer-policy | no-referrer | -|spring.cloud.gateway.filter.secure-headers.strict-transport-security | max-age=631138519 | -|spring.cloud.gateway.filter.secure-headers.xss-protection-header | 1 ; mode=block | +|spring.cloud.gateway.filter.secure-headers.download-options | noopen | +|spring.cloud.gateway.filter.secure-headers.frame-options | DENY | +|spring.cloud.gateway.filter.secure-headers.permitted-cross-domain-policies | none | +|spring.cloud.gateway.filter.secure-headers.referrer-policy | no-referrer | +|spring.cloud.gateway.filter.secure-headers.strict-transport-security | max-age=631138519 | +|spring.cloud.gateway.filter.secure-headers.xss-protection-header | 1 ; mode=block | |spring.cloud.gateway.forwarded.enabled | true | Enables the ForwardedHeadersFilter. |spring.cloud.gateway.globalcors.add-to-simple-url-handler-mapping | false | If global CORS config should be added to the URL handler. |spring.cloud.gateway.globalcors.cors-configurations | | @@ -43,12 +43,12 @@ |spring.cloud.gateway.httpclient.proxy.username | | Username for proxy configuration of Netty HttpClient. |spring.cloud.gateway.httpclient.response-timeout | | The response timeout. |spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout | 3000ms | SSL close_notify flush timeout. Default to 3000 ms. -|spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout-millis | | +|spring.cloud.gateway.httpclient.ssl.close-notify-flush-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout | | SSL close_notify read timeout. Default to 0 ms. -|spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout-millis | | +|spring.cloud.gateway.httpclient.ssl.close-notify-read-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.default-configuration-type | | The default ssl configuration type. Defaults to TCP. |spring.cloud.gateway.httpclient.ssl.handshake-timeout | 10000ms | SSL handshake timeout. Default to 10000 ms -|spring.cloud.gateway.httpclient.ssl.handshake-timeout-millis | | +|spring.cloud.gateway.httpclient.ssl.handshake-timeout-millis | | |spring.cloud.gateway.httpclient.ssl.key-password | | Key password, default is same as keyStorePassword. |spring.cloud.gateway.httpclient.ssl.key-store | | Keystore path for Netty HttpClient. |spring.cloud.gateway.httpclient.ssl.key-store-password | | Keystore password. @@ -58,9 +58,10 @@ |spring.cloud.gateway.httpclient.ssl.use-insecure-trust-manager | false | Installs the netty InsecureTrustManagerFactory. This is insecure and not suitable for production. |spring.cloud.gateway.httpclient.websocket.max-frame-payload-length | | Max frame payload length. |spring.cloud.gateway.httpclient.websocket.proxy-ping | true | Proxy ping frames to downstream services, defaults to true. +|spring.cloud.gateway.httpclient.compression | `false` | Enables compression support for Netty HttpClient. |spring.cloud.gateway.httpclient.wiretap | false | Enables wiretap debugging for Netty HttpClient. |spring.cloud.gateway.httpserver.wiretap | false | Enables wiretap debugging for Netty HttpServer. -|spring.cloud.gateway.loadbalancer.use404 | false | +|spring.cloud.gateway.loadbalancer.use404 | false | |spring.cloud.gateway.metrics.enabled | true | Enables the collection of metrics data. |spring.cloud.gateway.metrics.tags | | Tags map that added to metrics. |spring.cloud.gateway.redis-rate-limiter.burst-capacity-header | X-RateLimit-Burst-Capacity | The name of the header that returns the burst capacity configuration. diff --git a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java index 03c06830..47a7cf38 100644 --- a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java +++ b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/GatewayAutoConfiguration.java @@ -166,6 +166,7 @@ import static org.springframework.cloud.gateway.config.HttpClientProperties.Pool /** * @author Spencer Gibb * @author Ziemowit Stolarczyk + * @author Mete Alpaslan Katırcıoğlu */ @Configuration(proxyBeanMethods = false) @ConditionalOnProperty(name = "spring.cloud.gateway.enabled", matchIfMissing = true) @@ -761,6 +762,10 @@ public class GatewayAutoConfiguration { httpClient = httpClient.wiretap(true); } + if (properties.isCompression()) { + httpClient = httpClient.compress(true); + } + if (!CollectionUtils.isEmpty(customizers)) { customizers.sort(AnnotationAwareOrderComparator.INSTANCE); for (HttpClientCustomizer customizer : customizers) { diff --git a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/HttpClientProperties.java b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/HttpClientProperties.java index d1879348..a42b2a75 100644 --- a/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/HttpClientProperties.java +++ b/spring-cloud-gateway-server/src/main/java/org/springframework/cloud/gateway/config/HttpClientProperties.java @@ -78,6 +78,9 @@ public class HttpClientProperties { /** Enables wiretap debugging for Netty HttpClient. */ private boolean wiretap; + /** Enables compression for Netty HttpClient. */ + private boolean compression; + public Integer getConnectTimeout() { return connectTimeout; } @@ -152,6 +155,14 @@ public class HttpClientProperties { this.wiretap = wiretap; } + public boolean isCompression() { + return compression; + } + + public void setCompression(boolean compression) { + this.compression = compression; + } + @Override public String toString() { // @formatter:off @@ -165,6 +176,7 @@ public class HttpClientProperties { .append("ssl", ssl) .append("websocket", websocket) .append("wiretap", wiretap) + .append("compression", compression) .toString(); // @formatter:on diff --git a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/config/GatewayAutoConfigurationTests.java b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/config/GatewayAutoConfigurationTests.java index 975d00ba..1df5fa09 100644 --- a/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/config/GatewayAutoConfigurationTests.java +++ b/spring-cloud-gateway-server/src/test/java/org/springframework/cloud/gateway/config/GatewayAutoConfigurationTests.java @@ -92,6 +92,7 @@ public class GatewayAutoConfigurationTests { "spring.cloud.gateway.httpclient.connect-timeout=10", "spring.cloud.gateway.httpclient.response-timeout=10s", "spring.cloud.gateway.httpclient.pool.type=fixed", + "spring.cloud.gateway.httpclient.compression=true", // greather than integer max value "spring.cloud.gateway.httpclient.max-initial-line-length=2147483647", "spring.cloud.gateway.httpclient.proxy.host=myhost", @@ -103,6 +104,7 @@ public class GatewayAutoConfigurationTests { .getBean(HttpClientProperties.class); assertThat(properties.getMaxInitialLineLength().toBytes()) .isLessThanOrEqualTo(Integer.MAX_VALUE); + assertThat(properties.isCompression()).isEqualTo(true); /* * FIXME: 2.1.0 HttpClientOptions options = httpClient.options(); *