Commit Graph

101 Commits

Author SHA1 Message Date
Matt Pavlovich
af18a69d54 Use activemq-client instead of transitional activemq-client-jakarta
See gh-40028
2024-03-20 11:02:01 +00:00
Johnny Lim
412b8dd548 Polish
See gh-39910
2024-03-15 11:25:16 +01:00
Phillip Webb
f8a1dae835 Merge branch '3.2.x' 2024-02-21 15:27:57 -08:00
Phillip Webb
12de6aa46a Merge branch '3.1.x' into 3.2.x 2024-02-21 15:27:27 -08:00
Moritz Halbritter
7f55cae90f Merge branch '3.2.x' 2024-02-12 10:19:46 +01:00
Moritz Halbritter
4387b79831 Merge branch '3.1.x' into 3.2.x 2024-02-12 10:18:46 +01:00
Moritz Halbritter
8ffcfc9b77 Harmonize style of igored exceptions across the codebase 2024-02-12 10:14:20 +01:00
Scott Frederick
533f6c3bb1 Refactor TestcontainersPropertySource to use MapPropertySource
Closes gh-39330
2024-02-09 10:23:55 -06:00
Scott Frederick
8c91b094ee Merge branch '3.2.x'
Closes gh-39450
2024-02-07 16:49:49 -06:00
Scott Frederick
6b453cedf6 Merge branch '3.1.x' into 3.2.x
Closes gh-39449
2024-02-07 16:49:29 -06:00
Amrit
67ba829d9e Fix typo in TestcontainersPropertySource assertion
See gh-39440
2024-02-07 16:45:39 -06:00
Eddú Meléndez
f3e7325064 Add service connection for Docker Compose and Testcontainers ActiveMQ
See gh-39363
2024-02-02 09:05:37 +01:00
Eddú Meléndez
f15cd93a35 Add service connection for Docker Compose and Testcontainers Artemis
See gh-39311
2024-01-31 08:37:03 +01:00
Andy Wilkinson
f4cd903410 Merge branch '3.2.x'
Closes gh-39346
2024-01-30 16:48:43 +00:00
Andy Wilkinson
61ca87f7a4 Polish "Prevent double registration of event publisher registrar"
See gh-39297
2024-01-30 16:02:38 +00:00
tish
50c44e301a Prevent double registration of event publisher registrar
See gh-39297
2024-01-30 15:59:05 +00:00
Scott Frederick
bee6fe899c Polish "Add Docker Compose service connection support for OpenLDAP"
See gh-39258
2024-01-22 16:51:45 -06:00
PhilKes
eb940c3907 Add Docker Compose service connection support for OpenLDAP
See gh-39258
2024-01-22 16:51:45 -06:00
Phillip Webb
cff8cb98c7 Merge branch '3.1.x' into 3.2.x 2024-01-22 12:20:24 -08:00
Phillip Webb
88a8550609 Make OTEL tstcontainers integration test more resilient
Tweak awaitility assertions to fix timing error that often occurs on
local builds.
2024-01-16 10:49:25 -08:00
Phillip Webb
89874d351a Ensure containers are started before binding datasource properties
Update `TestcontainersLifecycleBeanPostProcessor` so that containers
are now initialized either on the first `postProcessAfterInitialization`
call with a frozen configuration or just before a test container
property is supplied.

Prior to this commit, it was assumed that the first post-process call
after the configuration was frozen was suitably early to initialize
the containers. This turns out to not be no always the case.

Specifically, in the `finishBeanFactoryInitialization` method of
`AbstractApplicationContext` we see that `LoadTimeWeaverAware` beans
are obtained before the configuration is frozen. One such bean is
`DefaultPersistenceUnitManager` which is likely to need datasource
properties that will require a started container.

To fix the problem, the `TestcontainersPropertySource` now publishes
a `BeforeTestcontainersPropertySuppliedEvent` to the ApplicationContext
just before any value is supplied. By listening for this event, we can
ensure that containers are initialized and started before any dynamic
property is read.

Fixes gh-38913
2024-01-16 10:36:54 -08:00
Andy Wilkinson
7087897507 Merge branch '3.1.x' into 3.2.x
Closes gh-39091
2024-01-11 10:33:57 +00:00
Phillip Webb
5354ad15b3 Merge branch '3.1.x'
Closes gh-38877
2023-12-19 22:51:48 -08:00
Yanming Zhou
d3a51e56b7 Remove unnecessary static modifiers
See gh-38739
2023-12-19 22:38:08 -08:00
Phillip Webb
561c7f749b Don't start containers imported via @ImportTestcontainers
Remove early start of containers imported via `@ImportTestcontainers`
so that parallel startup can happen.

Fixes gh-38831
2023-12-17 15:22:28 -08:00
Phillip Webb
6ae113c18a Fix parallel startup of testcontainers
Update `TestcontainersLifecycleBeanPostProcessor` so that containers
can actually be started in parallel.

Prior to this commit, `initializeStartables` would collect beans
and in the process trigger the `postProcessAfterInitialization` method
on each bean. This would see that  `startablesInitialized` was `true`
and call `startableBean.start` directly. The result of this was that
beans were actually started sequentially and when the `start` method
was finally called it had nothing to do.

The updated code uses an enum rather than a boolean so that the
`postProcessAfterInitialization` method no longer attempts to start
beans unless `initializeStartables` has finished.

Fixes gh-38831
2023-12-16 21:57:16 -08:00
Phillip Webb
6c3dec42e0 Add container support for Oracle Free which replaces Oracle XE
Update Docker Compose and Testcontainers support to work with
`gvenzl/oracle-free` which replaces `gvenzl/oracle-xe`.

Closes gh-38476
2023-11-21 11:51:59 -08:00
Phillip Webb
3a32e4e913 Merge branch '3.1.x'
Closes gh-38405
2023-11-20 16:27:46 -08:00
Phillip Webb
f68df82b30 Support lenient ContainerConnectionDetailsFactory hint registration
Update `ContainerConnectionDetailsFactory` hint registration logic
so that types are optional on the classpath.

See gh-36606
Fixes gh-38392
2023-11-20 16:26:22 -08:00
Phillip Webb
663243e60c Fix open telemetry container lifecycle issues
Mark test as `@DirtiesContext` so that the context is closed before
the container.

Closes gh-38176
2023-11-01 18:16:38 -07:00
Phillip Webb
0c66db7b18 Refine container initialization and parallel startup logic
Update `TestcontainersLifecycleBeanPostProcessor` to restore early
container initialization logic and refine startup logic. Initial bean
access now again triggers the creation all container beans. In addition
the first access of a `Startable` bean now attempts to find and start
all other `Startable` beans.

Fixes gh-37989
2023-10-25 11:58:22 -07:00
Moritz Halbritter
ddf6b3f23b Merge branch '3.1.x'
Closes gh-38014
2023-10-25 10:26:02 +02:00
Moritz Halbritter
73685d1d02 Register required class names for reflection in Testcontainer factory
Closes gh-36606
2023-10-25 10:25:42 +02:00
Phillip Webb
343046d30c Polish 2023-10-19 10:55:26 +01:00
Phillip Webb
fcb75b6a1e Search implemented interfaces on superclass for @ServiceConnection
Refine original fix to also search interfaces on the superclass.

Fixes gh-37671
2023-10-19 10:52:19 +01:00
Moritz Halbritter
55dc2963ef Rename Testcontainers bean startup property
Old name: spring.testcontainers.startup
New name: spring.testcontainers.beans.startup

Closes gh-37073
2023-10-19 09:22:27 +02:00
Phillip Webb
4c3a0f09d7 Support parallel initialization of Testcontainers
Add support for a `spring.testcontainers.startup` property that can
be set to "sequential" or "parallel" to change how containers are
started.

Closes gh-37073
2023-10-14 23:58:25 -07:00
Phillip Webb
efd9aa9b64 Polish 2023-10-14 19:51:42 -07:00
Phillip Webb
e01e4f1912 Search implemented interfaces on superclass for @ServiceConnection
Refine original fix to also search interfaces on the superclass.

Fixes gh-37671
2023-10-14 19:43:41 -07:00
Johnny Lim
446677375e Polish gh-35082
See gh-37831
2023-10-12 14:17:02 +02:00
Scott Frederick
bd6606fa39 Merge branch '3.1.x'
Closes gh-37799
2023-10-09 15:42:32 -05:00
Scott Frederick
86216fb4e9 Search implemented interfaces for @ServiceConnection fields
Fixes gh-37671
2023-10-09 15:37:42 -05:00
Phillip Webb
052757c2d8 Polish 2023-09-27 20:58:09 -07:00
Moritz Halbritter
3dd6372602 Polish "Add service connection from OpenTelemetry Collector"
See gh-35082
2023-09-14 11:10:19 +02:00
Moritz Halbritter
c387c87fda Polish "Add service connection from OpenTelemetry Collector"
See gh-35082
2023-09-14 10:50:36 +02:00
Eddú Meléndez
6997277f75 Add service connection from OpenTelemetry Collector
See gh-35082
2023-09-14 09:44:20 +02:00
Phillip Webb
750c597225 Polish 'Add Pulsar ConnectionDetails support'
See gh-37197
2023-09-06 12:18:09 -07:00
Chris Bono
089fef0392 Add Pulsar ConnectionDetails support
Add `ConnectionDetails` support for Apache Pulsar and provide adapters
for Docker Compose and Testcontainers.

See gh-37197
2023-09-06 12:12:25 -07:00
Moritz Halbritter
313627934e Merge branch '3.1.x'
Closes gh-37194
2023-09-05 13:41:38 +02:00
Moritz Halbritter
d310fb6fce Prevent docker access when running AOT processing on tests
Closes gh-37097
2023-09-05 13:37:36 +02:00