Commit Graph

227 Commits

Author SHA1 Message Date
Phillip Webb
f2c778a5a0 Merge branch '3.2.x'
Closes gh-41168
2024-06-19 22:44:12 -07:00
Andy Wilkinson
43cd24102f Rework Docker Compose integration tests
This commit introduces a new annotation, `@DockerComposeTest`,
that allows a test class to have multiple tests, each of which
uses a different Docker Compose YAML file.

Closes gh-41154
2024-06-19 22:34:38 -07:00
Andy Wilkinson
2d979bf06e Merge branch '3.2.x'
Closes gh-40863
2024-05-22 09:16:57 +01:00
Andy Wilkinson
468e246dbb Make sure container's started before connection details use it
Prior to this commit, a Testcontainer that was managed as a bean
would not have been started in time if it was accessed before
the bean factory's configuration had been frozen. A common way
for this to occur is when using JPA. The entity manager factory
bean is LoadTimeWeaverAware which causes it to be created before
configuration is frozen. Creating this bean requires the DataSource
which in turn requires the JdbcConnectionDetails and its JDBC URL.
Getting the JDBC URL From the connection details requires the
container hosting the SQL database to have been started.

This commit updates ContainerConnectionDetails, the super-class for
all Testcontainer-based ConnectionDetails implementations, to publish
an event when the Container is retrieved from the details. When this
event is published, TestcontainersLifecycleBeanPostProcessor
initializes all containers that are defined as beans.

Closes gh-40585
2024-05-22 09:15:21 +01:00
Scott Frederick
48632b212f Merge branch '3.2.x'
Closes gh-40819
2024-05-17 11:42:21 -05:00
Scott Frederick
7f2b917851 Merge branch '3.1.x' into 3.2.x
Closes gh-40818
2024-05-17 11:41:23 -05:00
Scott Frederick
70aceb21eb Relocate test CNB builder and buildpack
The test CNB builder and buildpack used in integration tests have moved
from a projects.registry.vmware.com registry to ghcr.io/spring-io. This
commit modifies tests to use the new location.

Closes gh-40800
2024-05-17 10:59:41 -05:00
Moritz Halbritter
4047c00aa5 Implement SBOM actuator endpoint
Closes gh-39799
2024-03-21 18:06:48 -07:00
Phillip Webb
91d150c3d4 Apply nohttp check per-project rather than at root
Switch nohttp checks to a convention that is applied per-project rather
than at the root. This should help to reduce memory consumption.

Closes gh-40013
2024-03-18 13:59:55 -07:00
Phillip Webb
e44ec27fd6 Add node folders to nohttp check suppressions 2024-02-27 23:16:46 -08:00
Andy Wilkinson
bfc9ef8bc5 Merge branch '3.2.x'
Closes gh-39765
2024-02-27 12:39:28 +00:00
Andy Wilkinson
db0fcc5626 Merge branch '3.1.x' into 3.2.x
Closes gh-39764
2024-02-27 12:39:14 +00:00
Andy Wilkinson
54cdc83337 Only reference Gradle tasks beneath org.gradle.api
Fixes gh-39584
2024-02-27 12:38:07 +00:00
Moritz Halbritter
8ec463c688 Polish "Change Banner declaration with new Java Syntax"
See gh-39585
2024-02-16 09:09:13 +01:00
Brian Clozel
0321a8a05b Configure ObservationRegistry on JmsListener
Prior to this commit, we set in gh-37388 the ObservationRegistry on the
auto-configured JmsTemplate bean. This enables observations and context
propagation when sending JMS messages.

This commit applies the same to the `DefaultJmsListenerContainerFactory`
and the `DefaultJmsListenerContainerFactoryConfigurer`, in order to
enable observations on `@JmsListener` annotated methods.

This commit also refactors the support implemented in gh-37388 to avoid
relying on a bean post processor and instead set the observation
registry directly in the main auto-configuration: while Micrometer core
is an actuator-only dependency, Micrometer Observation API is a compile
dependnecy for spring-jms itself and there is no need to separate
concerns there.

Fixes gh-38613
2023-12-01 09:36:00 +01:00
Phillip Webb
5dc5c2a4bc Rename KeyVerifier to CertificateMatcher
Rename `KeyVerifier` to `CertificateMatcher` and refactor some
of the internals. This commit also adds test helper classes to
help simplify some of the tests.

See gh-38173
2023-11-01 16:10:31 -07:00
Moritz Halbritter
c7bae80585 Merge branch '3.1.x'
Closes gh-38004
2023-10-24 14:09:18 +02:00
Moritz Halbritter
6fb127e635 Merge branch '3.0.x' into 3.1.x
Closes gh-38003
2023-10-24 14:08:29 +02:00
Moritz Halbritter
9f6d44202b Merge branch '2.7.x' into 3.0.x
Closes gh-38002
2023-10-24 14:07:15 +02:00
Moritz Halbritter
bf97e6dad8 Ban use of AssertJ assertThatThrownBy
Use assertThatExceptionOfType instead.

Closes gh-37968
2023-10-24 14:06:52 +02:00
Andy Wilkinson
a630baf32a Start building against Micrometer Tracing 1.2.0 snapshots
See gh-37704
2023-10-04 12:05:34 +01:00
Andy Wilkinson
7d40a45b50 Merge branch '3.1.x'
Closes gh-37662
2023-10-03 11:21:29 +01:00
Andy Wilkinson
a4100e12ff Merge branch '3.0.x' into 3.1.x
Closes gh-37661
2023-10-03 11:05:51 +01:00
Andy Wilkinson
931584f8af Merge branch '2.7.x' into 3.0.x
Closes gh-37659
2023-10-03 10:28:51 +01:00
Johnny Lim
c9932bb73a Use AssertJ's fail, not JUnit's
This commit also updates Checkstyle to prevent use of JUnit's
assertions from being reintroduced.

See gh-37655
2023-10-03 10:11:12 +01:00
Andy Wilkinson
b87e47e90c Merge branch '3.1.x'
Closes gh-37485
2023-09-20 10:56:35 +01:00
Andy Wilkinson
e10ca23b41 Merge branch '3.0.x' into 3.1.x
Closes gh-37484
2023-09-20 10:56:20 +01:00
Andy Wilkinson
2a3d5c4e0e Tolerate parallel init of SLF4J
Closes gh-37477
2023-09-20 10:49:01 +01:00
Chris Bono
eacf92b1b2 Combine Pulsar smoke tests
* Simplify produce/consume verify via OutputCapture

* Remove spring-boot-smoke-test-pulsar-reactive as
  no other smoke tests split them out

See gh-37196
2023-09-05 20:41:43 -07:00
Phillip Webb
b1547d0139 Merge branch '3.1.x'
Closes gh-37171
2023-08-31 22:38:29 -07:00
Phillip Webb
37e67058b7 Merge branch '3.0.x' into 3.1.x
Closes gh-37169
2023-08-31 22:24:14 -07:00
Phillip Webb
71ed31343c Merge branch '2.7.x' into 3.0.x
Closes gh-37168
2023-08-31 22:01:06 -07:00
Phillip Webb
fd8cb74b46 Load algorithm parameters from PEM encoded 'EC PRIVATE KEY' files
Update `PrivateKeyParser` implementations so that algorithm parameters
for PEM encoded 'EC PRIVATE KEY' files are loaded from the incoming
data.

Prior to this commit, the algorithm parameter was hard-coded to
'secp384r1' which could result in a mismatch to the actual file
content.

Fixes gh-34232
2023-08-31 21:40:11 -07:00
Stephane Nicoll
740ed18fa7 Merge branch '3.1.x'
Closes gh-36530
2023-07-24 16:10:20 +02:00
Stephane Nicoll
89066b4d1e Merge branch '3.0.x' into 3.1.x
Closes gh-36529
2023-07-24 16:09:32 +02:00
Stephane Nicoll
73cc54ad34 Prevent PostConstruct to be used in production code
Closes gh-36528
2023-07-24 16:08:50 +02:00
Andy Wilkinson
32b7b312f0 Add config metadata changelog generator to main build
Closes gh-21486
2023-06-30 10:26:33 +01:00
Andy Wilkinson
e12ae5add5 Merge branch '3.0.x' into 3.1.x
Closes gh-35865
2023-06-13 13:52:10 +01:00
Andy Wilkinson
bdbbbc6470 Merge branch '2.7.x' into 3.0.x
Closes gh-35864
2023-06-13 13:51:51 +01:00
Andy Wilkinson
984dc1d58f Allow package-private main classes to be used with Devtools
Fixes gh-35858
2023-06-13 13:50:27 +01:00
Phillip Webb
8427e813af Support import of idomatic testcontainer declaration classes
Add an `@ImportTestcontainers` annotation which can be used to import
idomatic testcontainer declaration classes.

Closes gh-35245
2023-05-03 00:28:36 -07:00
Mortitz Halbritter
842e17eced Add Docker Compose support
Add `spring-boot-docker-compose` module with service connection
support.

Closes gh-34747

Co-authored-by: Phillip Webb <pwebb@vmware.com>
Co-authored-by: "Andy Wilkinson <wilkinsona@vmware.com>
2023-04-17 01:00:08 -07:00
Scott Frederick
5817c8441d Allow image Created date to be configurable
A `createdDate` option on the Maven `spring-boot:build-image` goal
and the Gradle `bootBuildImage` task can be used to set the `Created`
metadata field on a generated OCI image to a specified date or to
the current date.

Closes gh-28798
2023-04-06 15:08:34 -05:00
Phillip Webb
01e8c42c16 Merge branch '2.7.x' into 3.0.x 2023-02-21 23:55:34 -08:00
Phillip Webb
66016921c6 Merge branch '2.7.x' into 3.0.x 2023-02-21 23:51:52 -08:00
Phillip Webb
3651ba348d Fix checkstyle test violations 2023-02-21 23:49:56 -08:00
Moritz Halbritter
94f4a4396c Merge branch '2.7.x'
Closes gh-33880
2023-01-18 17:35:52 +01:00
Moritz Halbritter
e8d809fe65 Replace 'via' with 'over' or 'through' in the documentation
Closes gh-33878
2023-01-18 16:56:42 +01:00
Phillip Webb
e5a0b164ac Configure MeterBinders after beans have been created
Update `MeterRegistryPostProcessor` to configure `MeterRegistry` beans
in two distinct sweeps. The first sweep applies customizers and filters
as the `MeterRegistry` bean is initialized, the second sweep applies
`MeterBinder` beans once all singletons have been instantiated.

Prior to this commit, it was not possible for a `MeterBinder` bean to
directly or indirectly use a `MeterRegistry`. It was also possible for
bound meters to cause a deadlock during refresh processing if those
meters could be updated on a thread other than main, such as GC
notifications.

Fixes gh-30636
Fixes gh-33070
2022-11-10 11:39:12 +00:00
Moritz Halbritter
85fd475821 Add noop tracer bean if tracing is disabled
The new functionality doesn't expose any public API
and works the same as WebTestClientContextCustomizer
does.

Closes gh-32907
2022-11-02 15:45:39 +01:00