Commit Graph

1137 Commits

Author SHA1 Message Date
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