Commit Graph

1225 Commits

Author SHA1 Message Date
Stéphane Nicoll e0152097f3 Polish "Upgrade to Testcontainers 1.20.2"
This commit review the original upgrade to retain compatiblity with the
deprecated Cassandra and ConfluentKafka containers.

This commit also fixes the SSL Cassandra tests. The new container uses
a custom wait strategy that uses plain text and does not work with an
SSL container.

Closes gh-42670

Co-authored-by: Moritz Halbritter <moritz.halbritter@broadcom.com>
2024-10-15 14:45:15 +02:00
Stéphane Nicoll a66d3d2f00 Merge branch '3.3.x'
Closes gh-42689
2024-10-15 10:42:41 +02:00
Stéphane Nicoll 056e2b6029 Merge branch '3.2.x' into 3.3.x
Closes gh-42688
2024-10-15 10:42:33 +02:00
Stéphane Nicoll b0dd42e9b9 Transform Maven settings with proper plugin repository tag
This commit adapts d44e7c9 to transforms plugin repositories using the
correct root tag. Previously, they were transformed with the regular
<repository> tag, which is invalid.

Closes gh-42687
2024-10-15 10:39:59 +02:00
Stéphane Nicoll a40ae49a76 Upgrade to Testcontainers 1.20.2
Closes gh-42670
2024-10-14 16:25:57 +02:00
Phillip Webb 8aee3e1e92 Allow structure logging JSON to be customized
Introduce a new `StructureLoggingJsonMembersCustomizer` interface as
well as additional properties that can be used to customize the JSON
produced with structured logging.

Closes gh-42486
2024-10-10 23:52:34 -07:00
Phillip Webb 54dcd9894c Remove remaining use of loader classic
Closes gh-42495
2024-10-01 18:23:35 -07:00
Phillip Webb 430753e4a8 Merge branch '3.3.x' 2024-10-01 17:50:26 -07:00
Phillip Webb 9ece00bda4 Merge branch '3.2.x' into 3.3.x 2024-10-01 17:50:21 -07:00
Phillip Webb c88a2dc116 Attempt to fix ant smoke test
See gh-42333
2024-10-01 17:49:24 -07:00
Phillip Webb e529769b0c Merge branch '3.3.x' 2024-10-01 17:20:14 -07:00
Phillip Webb 9f34899454 Merge branch '3.2.x' into 3.3.x 2024-10-01 17:20:10 -07:00
Phillip Webb d342eefa27 Use Sync task rather than Copy
See gh-42333
2024-10-01 17:19:52 -07:00
Phillip Webb 7de0b21089 Merge branch '3.3.x' 2024-10-01 16:57:06 -07:00
Phillip Webb 85ec3b1728 Merge branch '3.2.x' into 3.3.x 2024-10-01 16:57:00 -07:00
Phillip Webb e5b03a7741 Second attempt to fix spring-boot-smoke-test-ant
Fix error introduced in commit d44e7c9af2

See gh-42333
2024-10-01 16:56:37 -07:00
Phillip Webb 07d2b5180c Merge branch '3.3.x' 2024-10-01 16:26:37 -07:00
Phillip Webb 212e67b1cb Merge branch '3.2.x' into 3.3.x 2024-10-01 16:26:32 -07:00
Phillip Webb 1dce2cd62e Fix spring-boot-smoke-test-ant
Fix error introduced in commit d44e7c9af2

See gh-42333
2024-10-01 16:25:50 -07:00
Phillip Webb bc5a718cfa Merge branch '3.3.x' 2024-09-27 17:35:23 -07:00
Phillip Webb 3b8ae47096 Merge branch '3.2.x' into 3.3.x 2024-09-27 17:35:01 -07:00
Phillip Webb d44e7c9af2 Dynamically populate repositories used in Ant/Maven integration tests
Update build scripts and tests so that repository settings are copied
dynamically from the build.

See gh-42333
2024-09-27 17:33:00 -07:00
Phillip Webb 8282a90268 Merge branch '3.3.x' 2024-09-27 10:34:32 -07:00
Phillip Webb 055064f16b Merge branch '3.2.x' into 3.3.x 2024-09-27 10:33:30 -07:00
Phillip Webb 9836011ffd Create extension to configure Spring maven repositories
Create a small Groovy script that can be used in `settings.gradle`
files to extend `repositories` to support the various maven
repositories required for our build.

See gh-42333
2024-09-27 10:30:20 -07:00
Phillip Webb 7b3077280c Merge branch '3.3.x'
Closes gh-42441
2024-09-24 14:32:48 -07:00
Phillip Webb 100bedc07d Merge branch '3.2.x' into 3.3.x
Closes gh-42440
2024-09-24 14:29:09 -07:00
Phillip Webb ad72411e2b Apply conventions plugin to all subprojects
Closes gh-42438
2024-09-24 14:26:32 -07:00
Phillip Webb 0c1a042173 Merge branch '3.3.x' 2024-09-24 13:51:58 -07:00
Phillip Webb de2e5eeb22 Merge branch '3.2.x' into 3.3.x 2024-09-24 13:51:53 -07:00
Phillip Webb 54c3ccb4df Fix checkstyle violations in testng smoke test
Add conventions plugin and fix surfaced checkstyle errors.
2024-09-24 13:51:16 -07:00
Phillip Webb 72f379a5b2 Merge branch '3.2.x' into 3.3.x
Closes gh-42434
2024-09-24 13:01:05 -07:00
Phillip Webb eafe61c4ca Backport upgrade to Gradle 8.10.1
Cherry-pick commits d756bf4e86, 083ac67d13 and 162c929a80 to
upgrade to Gradle 8.10.1.

Closes gh-42433
2024-09-24 12:55:29 -07:00
Andy Wilkinson c6c4651337 Merge branch '3.3.x'
Closes gh-42385
2024-09-19 19:05:25 +01:00
Andy Wilkinson 7b427f4d3b Merge branch '3.2.x' into 3.3.x
Closes gh-42384
2024-09-19 19:05:12 +01:00
Andy Wilkinson 87c647cf65 Reduce log output of SampleJettyApplicationTests
Closes gh-42376
2024-09-19 19:04:59 +01:00
Johnny Lim 94e8c5db36 Polish gh-39957 and gh-41444
See gh-42359
2024-09-19 11:37:11 +02:00
Phillip Webb f5b6514bef Allow additional context interfaces to be defined for testing
Update `AssertableApplicationContext` and `ApplicationContextRunner`
implementations to support additional `ApplicationContext` interfaces.

Closes gh-42369
2024-09-18 23:47:13 -07:00
Stéphane Nicoll 3651ff87cd Reinstate auto-configuration support for embedded ActiveMQ
This commit restores auto-configuration for using an Embedded broker
with ActiveMQ classic.

Contrary to its 2.7.x version, "spring-boot-starter-activemq" no longer
adds the broker for consistency with Artemis, and to keep the existing
3.x behavior. Rather than "inMemory", a "s.a.embedded.enabled"
property has been reintroduced that matches the name used by Artemis.

The documentation has been updated to mention that the broker
dependency must be added to use it.

Closes gh-38404
2024-09-06 11:34:35 +02:00
Scott Frederick e7faca3bbb Add support for Testcontainer Redis
Add support for the official `com.redis:testcontainers-redis` container.

See gh-41450
2024-08-29 19:23:40 -07:00
Andy Wilkinson 4b0b5c263d Ensure that building test apps produces Java 17 bytecode
See gh-41980
2024-08-23 15:11:55 +01:00
Andy Wilkinson 4258953190 Ensure that building the SNI test apps produces Java 17 bytecode
See gh-41980
2024-08-23 14:56:20 +01:00
Andy Wilkinson d756bf4e86 Upgrade build to Gradle 8.10
Closes gh-41980
2024-08-23 12:41:05 +01:00
Andy Wilkinson 73f71d5560 Rework Cloud Foundry actuator support behind a pluggable abstraction
Deprecate `EndpointExposure.CLOUD_FOUNDRY` and introduce an alternative
implementation based on a pluggable abstraction.

The new `EndpointExposureOutcomeContributor` interface may now be used
to influence `@OnAvailableEndpointCondition` exposure results. Several
infrastructure beans that previously used the condition have been
refactored to always be registered, but tolerate missing endpoints.

A new smoke test application has been added that demonstrates how the
abstraction can be used by a third-party.

Closes gh-41135

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2024-08-20 16:22:56 -07:00
Moritz Halbritter 25c76957e5 Automatically disable banner when using structured logging
Closes gh-41659
2024-08-20 15:15:27 +02:00
Phillip Webb 450e31b42e Merge branch '3.3.x' 2024-08-19 16:47:31 -07:00
Phillip Webb 1d337b7c76 Merge branch '3.2.x' into 3.3.x 2024-08-19 16:46:51 -07:00
Phillip Webb f1987e6f8b Update copyright year of changed files 2024-08-19 16:45:34 -07:00
Moritz Halbritter fd1472784e Polish "Add SslInfoContributor and SslHealthIndicator"
See gh-41205
2024-08-19 10:41:29 +02:00
Jonatan Ivanov 5e3796e814 Add SslInfoContributor and SslHealthIndicator
See gh-41205
2024-08-19 10:00:00 +02:00
Moritz Halbritter 46150bae89 Merge branch '3.3.x'
Closes gh-41858
2024-08-14 17:20:59 +02:00
Moritz Halbritter 2a84fe5760 Merge branch '3.2.x' into 3.3.x
Closes gh-41857
2024-08-14 16:47:52 +02:00
Moritz Halbritter 1d45016d8c Upgrade to spring-javaformat 0.0.43
Closes gh-41853
2024-08-14 16:32:41 +02:00
Stéphane Nicoll 9fa0d3d8c7 Merge branch '3.3.x' 2024-08-13 10:19:47 +02:00
Stéphane Nicoll ff4b39a096 Merge branch '3.2.x' into 3.3.x 2024-08-13 10:19:39 +02:00
Stéphane Nicoll 68ce174980 Adapt LoaderIntegrationTests to Java 23
See gh-41698
2024-08-13 10:18:37 +02:00
Stéphane Nicoll 607627fce6 Adapt to deprecation in Spring Pulsar snapshots 2024-08-13 08:23:10 +02:00
Stéphane Nicoll a6567c7d47 Disable Infinispan tests on Java 23
Infinispan 14 does not work on Java 23, an upgrade to 15 is required.
This commit therefore disables those tests when running against a Java
version higher than 22.

Unfortunately, the version of JUnit that we use has no value for Java
23, so we have to use OTHER for that purpose.
2024-08-07 17:32:52 +02:00
Moritz Halbritter f4b4f4f0bf Make PID and application version available in the environment
Adds the following new properties:

- spring.application.pid
- spring.application.version

Refactors the ResourceBanner and the structured logging support to use
the new properties.

Closes gh-41604
2024-08-01 15:03:41 +02:00
Andy Wilkinson e201b94d4f Merge branch '3.3.x'
Closes gh-41616
2024-07-25 16:17:52 +01:00
Andy Wilkinson c642f6d268 Merge branch '3.2.x' into 3.3.x
Closes gh-41613
2024-07-25 16:16:35 +01:00
Phillip Webb de3b14f2b4 Refine structured logging
Refine structured logging to support `Environment`, `ApplicationPid` and
`ElasticCommonSchemaService` injection. With these updates we are able
to remove the `ApplicationMetadata` class and simplify the parameters
passed to the layout/encoder classes.

Closes gh-41491
2024-07-24 19:06:07 +01:00
Moritz Halbritter bf2950c045 Add support for structured logging
Update Logback and Log4j2 integrations to support structured logging.
Support for the ECS and Logstash JSON formats is provided out-of-the-box
and the `StructuredLogFormatter` interface may be used to if further
custom formats need to be supported.

Closes gh-5479

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2024-07-15 11:45:41 +01:00
Phillip Webb 5d4a777d27 Align test with upstream Spring Security change
Closes gh-41488
2024-07-15 06:53:09 +01:00
Andy Wilkinson cddf92e047 Polish "Deprecate @MockBean and @SpyBean"
See gh-39864
2024-07-12 13:49:11 +01:00
Jakob Wanger 24763940a0 Deprecate @MockBean and @SpyBean
- Deprecate Deprecate @MockBean and @SpyBean in favor of Spring
  Framework 6.2's @MockitoBean and @MockitoSpy
- Migrate usages of @MockBean and @SpyBean to @MockitoBean and
  @MockitoSpy

Signed-off-by: Jakob Wanger <jakobwanger@gmail.com>

See gh-39864
2024-07-12 12:18:01 +01:00
Phillip Webb c3ad8b0521 Add `APPLICATION_NAME` and `APPLICATION_GROUP` logging properties
Add `APPLICATION_NAME` and `APPLICATION_GROUP` properties that contain
verbatim values rather than formatted strings. Formatting of the values
is now handled by new `EnclosedInSquareBracketsConverter` classes for
both Logback and Log4J2.

The existing `LOGGED_APPLICATION_NAME` variable is now considered
deprecated. The `LOGGED_APPLICATION_GROUP` variable and related
logback converter have been removed since they never made it to a GA
release.

Closes gh-41444
2024-07-11 10:25:01 -07:00
Andy Wilkinson d07fe47102 Merge branch '3.3.x'
Closes gh-41447
2024-07-11 13:09:26 +01:00
Andy Wilkinson 784c8d2df4 Avoid duplicate junit-platform.properties files caused by Kafka
Gradle doesn't support excluding a dependency that's declared with a
classifier. Instead, this commit replaces the test-qualified
kafka-server-common dependency with the plain dependency. The plain
dependency was already present so this is equivalent to excluding
the test-qualified dependency.

Closes gh-41446
2024-07-11 13:08:58 +01:00
Stéphane Nicoll 156237227c Migrate MockMvc tests to MockMvcTester
See gh-41198
2024-07-03 15:09:10 +02:00
Moritz Halbritter de001f5af1 Polish "Add standardized property to distinguish a group of applications"
See gh-39957
2024-07-03 11:54:49 +02:00
Jakob Wanger 8ddb77f628 Add standardized property to distinguish a group of applications
This adds a property to provide some indicator that a set of
applications are part of a larger "business application" so that they
can be viewed in metrics, portals, traces and more.

See gh-39957
2024-07-03 11:06:46 +02:00
Andy Wilkinson 5b7365b63b Merge branch '3.3.x'
Closes gh-41258
2024-06-27 10:25:32 +01:00
Andy Wilkinson b0d4f1d356 Merge branch '3.2.x' into 3.3.x
Closes gh-41257
2024-06-27 10:16:36 +01:00
Andy Wilkinson 654016af7f Move Docker-related test support into a separate module
See gh-41228
2024-06-26 19:47:35 +01:00
Andy Wilkinson fda6f19c5b Update spring-boot-smoke-test-session-webflux-redis to use docker-test plugin
See gh-41228
2024-06-26 19:47:32 +01:00
Andy Wilkinson 5e332b8785 Update spring-boot-smoke-test-session-webflux-mongo to use docker-test plugin
See gh-41228
2024-06-26 19:47:28 +01:00
Andy Wilkinson 2890067e3a Update spring-boot-smoke-test-session-redis to use docker-test plugin
See gh-41228
2024-06-26 19:47:25 +01:00
Andy Wilkinson b3f3501e2b Update spring-boot-smoke-test-session-mongo to use docker-test plugin
See gh-41228
2024-06-26 19:47:22 +01:00
Andy Wilkinson da28e03670 Update spring-boot-smoke-test-pulsar to use docker-test plugin
See gh-41228
2024-06-26 19:47:19 +01:00
Andy Wilkinson bc57d30a1f Update spring-boot-smoke-test-kafka to use docker-test plugin
See gh-41228
2024-06-26 19:47:15 +01:00
Andy Wilkinson 957e73044b Update spring-boot-smoke-test-data-redis to use docker-test plugin
See gh-41228
2024-06-26 19:47:12 +01:00
Andy Wilkinson 9662bec9c7 Update spring-boot-smoke-test-data-r2dbc-liquibase to use docker-test plugin
See gh-41228
2024-06-26 19:47:08 +01:00
Andy Wilkinson b52023966b Update spring-boot-smoke-test-data-r2dbc-flyway to use docker-test plugin
See gh-41228
2024-06-26 19:47:04 +01:00
Andy Wilkinson 0d2d3e7d71 Update spring-boot-smoke-test-data-mongo to use docker-test plugin
See gh-41228
2024-06-26 19:47:01 +01:00
Andy Wilkinson 28396b1ff3 Update spring-boot-smoke-test-data-couchbase to use docker-test plugin
See gh-41228
2024-06-26 19:46:58 +01:00
Andy Wilkinson a9be2e50e3 Update spring-boot-smoke-test-data-cassandra to use docker-test plugin
See gh-41228
2024-06-26 19:46:54 +01:00
Andy Wilkinson ccb0b2910f Update spring-boot-smoke-test-cache to use docker-test plugin
See gh-41228
2024-06-26 19:46:51 +01:00
Andy Wilkinson 24e797f8c2 Update spring-boot-smoke-test-amqp to use docker-test plugin
See gh-41228
2024-06-26 19:46:47 +01:00
Andy Wilkinson 0579126c5f Update spring-boot-smoke-test-activemq to use docker-test plugin
See gh-41228
2024-06-26 19:46:44 +01:00
Andy Wilkinson 7e4d60e07f Update spring-boot-launch-script-tests to use docker-test plugin
See gh-41228
2024-06-26 19:46:21 +01:00
Andy Wilkinson 6564abb12a Update spring-boot-loader-classic-tests to use docker-test plugin
See gh-41228
2024-06-26 19:46:17 +01:00
Andy Wilkinson edc582800b Update spring-boot-loader-tests to use docker-test plugin
See gh-41228
2024-06-26 19:46:12 +01:00
Stéphane Nicoll 17ca0421e7 Upgrade to HtmlUnit 4.2.0 and Selenium HtmlUnit 4.20
Closes gh-41178
Closes gh-41179
2024-06-20 20:18:23 +01:00
Phillip Webb 9dda006a18 Merge branch '3.2.x' 2024-06-19 22:55:00 -07:00
Phillip Webb 2a4582b084 Update copyright year of changed files 2024-06-19 22:54:40 -07:00
Phillip Webb 905d6b96d0 Merge branch '3.2.x'
Closes gh-41166
2024-06-19 22:30:58 -07:00
Andy Wilkinson 491f34d25c Improve container test code
Replace `DockerImageNames` with a enum and relocate it from the
`testcontainers` to `container` package. The enum now also
becomes a common location that we can use to apply container
configuration such as timeouts.

Closes gh-41164

Co-authored-by: Phillip Webb <phil.webb@broadcom.com>
2024-06-19 20:10:03 -07:00
Andy Wilkinson 3188d084ea Merge branch '3.2.x'
Closes gh-41104
2024-06-14 17:06:07 +01:00
Andy Wilkinson 31f967723d Fix Mongo health indicators when using the strict V1 API
Closes gh-41101
2024-06-14 17:05:09 +01:00