Commit Graph

20583 Commits

Author SHA1 Message Date
Phillip Webb c59c8cc674 Change SslOptions to use null for defaults rather than empty sets
Update `SslOptions` so that `null` is used for default values rather
than empty sets. Most libraries use `null` to indicate defaults so
aligning our class makes things easier.

See gh-34814
2023-04-21 16:18:44 -07:00
Phillip Webb 77c468c956 Add test to check SSL RestTemplate requests work against server
Add a test to `AbstractClientHttpRequestFactoriesTests` to ensure
that SSL configuration works when calling a real Tomcat server.

See gh-34810
2023-04-21 14:06:55 -07:00
Phillip Webb 72c1f667f5 Fix @Since javadoc in RestTemplateBuilder
See gh-34810
2023-04-21 14:06:46 -07:00
Scott Frederick b6befd133c Add SSL bundle support to RestTemplateBuilder auto-configuration
Update RestTemplateBuilder auto-configuration so that an SSL can be
configured via an SSL bundle.

Closes gh-34810
2023-04-21 01:13:10 -07:00
Scott Frederick fd5fd1491a Add SSL bundle support to MongoDB auto-configuration
Update MongoDB auto-configuration so that an SSL can be configured
via an SSL bundle.

Closes gh-35042
2023-04-21 01:13:09 -07:00
Scott Frederick 1618aa2dac Add SSL bundle support to Couchbase auto-configuration
Update Couchbase auto-configuration so that an SSL can be configured
via an SSL bundle.

Closes gh-34811
2023-04-21 01:13:09 -07:00
Scott Frederick 682457377a Add SSL bundle support to Cassandra auto-configuration
Update Cassandra auto-configuration so that an SSL can be configured
via an SSL bundle.

Closes gh-25602
2023-04-21 01:13:09 -07:00
Scott Frederick a03f857059 Document update SSL support
Add a new SSL section to the reference documentation to describe SSL
bundles.

See gh-34814
2023-04-21 01:13:05 -07:00
Scott Frederick 66db13b962 Refactor web server support to use SslBundles
Update Tomcat, Jetty, Undertow and Netty servers so that an SslBundle
is used to apply SSL configuration. Existing `Ssl` properties are
internally adapted to an `SslBundle` using the `WebServerSslBundle`
class. Additionally, if `Ssl.getBundle()` returns a non-null value the
the `SslBundles` bean will be used to find a registered bundle by name.

See gh-34814
2023-04-21 01:02:47 -07:00
Scott Frederick 8e1f24f98f Add SSL bundle auto-configuration support
Add auto-configuration for SSL bundles including new configuration
properties that can be used to define a bundle.

SSL bundle properties are provided under the `spring.ssl.bundle` key.
Currently `jks` and `pem` variants are support. Both are configured
as a `Map` where the bundle name is the key.

A typical example would be:

    spring:
      ssl:
        bundle:
          pem:
            mybundle
              key:
                password: secret
              keystore:
                certificate: classpath:mycert.pem
                private-key: classpath:mykey.pem

A `SslBundleRegistrar` interface is also provided to allow programmatic
contributions to the auto-configured `SslBundleRegistry`.

See gh-34814
2023-04-21 01:01:54 -07:00
Scott Frederick e3677f7ff6 Add SSL bundle support to spring-boot module
Add classes to support SSL bundles which can be used to apply SSL
settings in a centralized way. An `SslBundle` can be registered with
an `SslBundleRegistry` and obtained from an `SslBundles` instance. The
`DefaultSslBundleRegistry` provides a default in-memory implementation.

Different client libraries often configure SSL in slightly different
ways. To accommodate this, the `SslBundle` provides a layered approach
of obtaining SSL information:

	- `getStores` provides access to the key store and trust stores
	  as well as any required key store password.

	- `getManagers` provides access to the `KeyManagerFactory`,
	  `TrustManagerFactory` as well as the `KeyManger` and
	  `TrustManager` arrays that they create.

	- `createSslContext` provides a convenient way to obtain a new
	  `SSLContext` instance.

In addition, the `SslBundle` also provides details about the key being
used, the protocol to use and any options that should be applied to the
SSL engine.

See gh-34814
2023-04-21 01:01:11 -07:00
Andy Wilkinson e61adc6cbf Allow even more time for Redpanda to start 2023-04-20 17:41:40 +01:00
Andy Wilkinson b64adbc34b Fix disabled conditions on AbstractDockerComposeIntegrationTests 2023-04-20 16:12:36 +01:00
Andy Wilkinson cbc03783d0 Allow startup to contiune when ConnectionDetailsFactory load fails
Prior to this commit, a failure to load a ConnectionDetailsFactory
caused startup to fail. This causes problems when some of a
factory's required classes were not available, for examle when using
spring-boot-docker-compose without Actuator.

Fixes gh-35100
2023-04-20 15:00:46 +01:00
Andy Wilkinson bc58df3467 Prohibit upgrades to Liquibase 4.21.1
See gh-34983
2023-04-20 12:22:55 +01:00
Andy Wilkinson 26c98eded9 Upgrade to Tomcat 10.1.8
Closes gh-35095
2023-04-20 12:22:54 +01:00
Andy Wilkinson dbab743018 Upgrade to Spring Integration 6.1.0-RC1
Closes gh-34973
2023-04-20 12:22:54 +01:00
Andy Wilkinson 68b25598b9 Upgrade to Spring GraphQL 1.2.0-RC1
Closes gh-34972
2023-04-20 12:22:54 +01:00
Andy Wilkinson 5965df39b5 Upgrade to Selenium HtmlUnit 4.8.3
Closes gh-35094
2023-04-20 12:22:54 +01:00
Andy Wilkinson 503e88f2ec Upgrade to Logback 1.4.7
Closes gh-35093
2023-04-20 12:22:53 +01:00
Andy Wilkinson 04780650a1 Merge branch '3.0.x'
Closes gh-35087
2023-04-20 08:04:37 +01:00
Andy Wilkinson 32444fed4b Merge branch '2.7.x' into 3.0.x
Closes gh-35086
2023-04-20 08:04:18 +01:00
Madhura Bhave 3522714c13 Use endpoint mappings in CloudFoundry integration
Closes gh-35085
2023-04-20 07:50:44 +01:00
Andy Wilkinson c55d398f95 Validate health group includes and excludes
Closes gh-34360
2023-04-19 19:51:57 +01:00
Andy Wilkinson a03fe8befc Enable customization of JWK Set URI decoder builders
Closes gh-20750
2023-04-19 17:23:53 +01:00
Andy Wilkinson 45068c777f Document default value for management.otlp.tracing.compression
See gh-34508
2023-04-19 17:21:14 +01:00
Stephane Nicoll 366f7a85c9 Merge branch '3.0.x'
Closes gh-35069
2023-04-19 18:01:43 +02:00
Stephane Nicoll 6933796f2a Merge branch '2.7.x' into 3.0.x
Closes gh-35068
2023-04-19 18:01:16 +02:00
Stephane Nicoll 1b832d82f8 Polish "Back off if a custom ApplicationAvailability bean is present"
See gh-34347
2023-04-19 17:25:10 +02:00
Taeik Lim 5e95ba8448 Back off if a custom ApplicationAvailability bean is present
See gh-34347
2023-04-19 17:24:59 +02:00
Andy Wilkinson f2e5eab09c Polish does for reporting traces using OTLP
See gh-34508
2023-04-19 15:42:21 +01:00
Andy Wilkinson 2bccd586ea Fix DockerComposeFileTests on Windows 2023-04-19 15:36:07 +01:00
Andy Wilkinson c543d9172c Polish "Add auto-configuration for OTLP span exporter"
See gh-34508
2023-04-19 15:11:00 +01:00
Jonatan Ivanov ceaafeca0b Add auto-configuration for OTLP span exporter
With these changes an OTLP HTTP/protobuf exporter is auto-configured
if opentelemetry-exporter-otlp is on the classpath.

See gh-34508
2023-04-19 14:44:56 +01:00
Andy Wilkinson d4f857683d Polish formatting of DockerImageNames 2023-04-19 14:22:12 +01:00
Andy Wilkinson f5e654748c Polish "Add customizer for conversion service used by Spring Batch"
See gh-34769
2023-04-19 14:15:08 +01:00
Claudio Nave cafa6f5d9c Add customizer for conversion service used by Spring Batch
See gh-34769
2023-04-19 13:25:31 +01:00
Stephane Nicoll a323bd90a8 Polish "Reintroduce support for ActiveMQ"
See gh-35048
2023-04-19 13:08:14 +02:00
Martin BENDA 3e9908a797 Reintroduce support for ActiveMQ
See gh-35048
2023-04-19 11:00:40 +02:00
Stephane Nicoll bed11671d3 Upgrade to Spring WS 4.0.3
Closes gh-34971
2023-04-19 11:00:04 +02:00
Stephane Nicoll 41db5a2d0b Upgrade to Spring WS 4.0.3
Closes gh-34953
2023-04-19 10:57:21 +02:00
Stephane Nicoll 098d338d7c Upgrade to Spring WS 3.1.6
Closes gh-34949
2023-04-19 10:56:09 +02:00
Andy Wilkinson 5ec03d2b34 Wait longer for Redpanda to start 2023-04-18 21:43:25 +01:00
Andy Wilkinson 7b3e687f05 Deprecate OAuth2ClientPropertiesRegistrationAdapter
This commit deprecates OAuth2ClientPropertiesRegistrationAdapter as
it wasn't really an adapter because it provides a static utility
method rather than adapting one contract to another. A replacement,
OAuth2ClientPropertiesMapper, is introduced that maps the OAuth2
client properties to the required types.

Closes gh-34714
2023-04-18 20:43:34 +01:00
Andy Wilkinson 651f341385 Fix compatibility of Redpanda Docker image name
See 3e010b12
2023-04-18 19:52:17 +01:00
Andy Wilkinson 4eb7558707 Polish "Add properties to support device grant"
See gh-34957
2023-04-18 19:34:13 +01:00
Steve Riesenberg 25b582c822 Add properties to support device grant
This commit adds the following properties under
spring.security.oauth2.authorizationserver.client.[registration-id]:

* endpoint.device-authorization-uri
* endpoint.device-verification-uri
* token.device-code-time-to-live

See gh-34957
2023-04-18 19:15:12 +01:00
Andy Wilkinson c3e739c751 Add dependency management for io.asyncer:r2dbc-mysql
Closes gh-34927
2023-04-18 19:05:12 +01:00
Andy Wilkinson e72bff8dd4 Add dependency management for org.mariadb:r2dbc-mariadb
Closes gh-34625
2023-04-18 19:02:15 +01:00
Phillip Webb 3e010b1230 Fetch redpanda directly from docker hub
Attempt to avoid rate limiting issues by fetching redpanda directly
from docker hub.

See gh-34780
2023-04-18 10:51:46 -07:00