Commit Graph

68 Commits

Author SHA1 Message Date
Moritz Halbritter
3f29c7f84f Add log message if Docker Compose services are already running
Closes gh-38398
2023-12-05 14:02:16 +01:00
Moritz Halbritter
7829e760da Switch JsonMapper in Docker JSON parsing to english locale
Closes gh-37648
2023-11-06 08:41:10 +01:00
Moritz Halbritter
de1ca5e60f Polish DockerComposeLifecycleManager 2023-10-31 11:18:39 +01:00
Moritz Halbritter
09821feb75 Fix container inspection for Docker Compose >= 2.23.0
Docker Compose starting with 2.23.0 returns truncated ids in the
docker compose ps call. We now do a prefix search if an exact match
isn't found in the docker inspect response.

Closes gh-37982
2023-10-23 10:40:20 +02:00
Andy Wilkinson
a4100e12ff Merge branch '3.0.x' into 3.1.x
Closes gh-37661
2023-10-03 11:05:51 +01:00
JinseongHwang
0b703f9007 Use consistent capitalization in MySQL and MariaDB test names
See gh-37497
2023-09-28 16:28:32 -05:00
Moritz Halbritter
fdd9bc732f Enable RabbitEnvironmentTests 2023-09-14 11:25:20 +02:00
Moritz Halbritter
136a5b4c07 Enable PostgresEnvironmentTests 2023-09-14 11:25:06 +02:00
Moritz Halbritter
496b373fce Remove unused test 2023-09-14 11:22:54 +02:00
Moritz Halbritter
0f019b0049 Reign in Cassandra memory consumption when running tests
The environment variables are the same as the Cassandra Testcontainers
uses.
2023-09-14 11:20:22 +02:00
Stephane Nicoll
44847d6600 Fix assertion (sorry)
See gh-37044
2023-08-22 12:51:33 +02:00
Stephane Nicoll
621db533dc Fix assertion
See gh-37044
2023-08-22 11:58:38 +02:00
Stephane Nicoll
5a25c31832 Polish "Fix password property for Oracle container"
See gh-37044
2023-08-22 10:48:39 +02:00
Joe Steel
ab1e521388 Fix password property for Oracle container
See gh-37044
2023-08-22 10:40:52 +02:00
Phillip Webb
155300525e Polish 2023-08-13 19:15:38 -07:00
Phillip Webb
2fdc29b885 Revert "Polish"
This reverts commit 6a65ca13ea since
FileCopyUtils will close the reader/writer.
2023-08-13 19:00:04 -07:00
Moritz Halbritter
6a65ca13ea Polish 2023-08-10 14:54:45 +02:00
Moritz Halbritter
f54d370fcd Remove unused class 2023-08-10 14:54:45 +02:00
Moritz Halbritter
3bb93b37ca Remove --detach and --wait flags from docker compose start command
Closes gh-36908
2023-08-10 14:54:45 +02:00
Moritz Halbritter
d48aa806c2 Remove --no-color flag from docker compose start command
Closes gh-36908
2023-08-10 12:12:47 +02:00
Scott Frederick
bf08cc25df Use DockerImageNames in Docker compose integration tests
Closes gh-36485
2023-07-24 11:00:20 -05:00
Johnny Lim
e97c5a7118 Use kebab-case for property default values in metadata
See gh-36170
2023-07-04 15:20:42 +01:00
Andy Wilkinson
3ef1738a5e Remove containers after use in Docker Compose integration tests
Closes gh-36104
2023-06-28 14:12:39 +01:00
Andy Wilkinson
660dbb9afd Fix Maven-built native images with Docker Compose dependency
Previously, we tried to prevent spring-boot-docker-compose from
causing problems with AOT and native images by excluding it from
the AOT processing classpath. This allowed AOT processing to
succeed. We cannot apply the same exclusion to the native image
classpath so spring-boot-docker-compose was still included in the
native image. This results in a failure at runtime due to missing
reflection hints.

This commit reverts that changes that excluded
spring-boot-docker-compose from the AOT processing classpath. This
allows AOT processing to generate reflection hints but reintroduces
the failure caused by the connection details bean definitions using
an instance supplier callback. To overcome this problem we disable
DockerComposeLifecycleManager during AOT processing and in a native
image. This ensures that no attempt is made to call docker compose up
and no connection details beans are defined.

Fixes gh-35676
2023-06-21 11:44:30 +01:00
Scott Frederick
8f31a5772e Set authSource in MongoDB Docker Compose connection details
When authentication credentials are provided in environment variables
for the official MongoDB Docker image, the authentication source must
also be set to the `admin` database.

Fixes gh-35777
2023-06-08 16:20:57 -05:00
Moritz Halbritter
157b71b333 Add missing defaults for docker compose properties
Closes gh-35598
2023-05-23 10:53:15 +02:00
Scott Frederick
0ca3ab7249 Polish Javadoc
See gh-35545
2023-05-19 14:20:14 -05:00
Andy Wilkinson
6ad71c9b0c Reduce number of CLI calls to improve startup time with devtools
Update `DockerComposeLifecycleManager` so that `docker ps` is
not called multiple times.

See gh-35435
2023-05-17 16:27:00 -07:00
Phillip Webb
b0c76c1f79 Cache docker commands to improve startup time with devtools
Update `DockerCli` so that the docker commands are cached. This helps
improve startup time when using devtools with docker compose.

See gh-35435
2023-05-17 16:27:00 -07:00
Phillip Webb
a8602a1814 Allow docker compose service readiness checks to be bypassed
Add `spring.docker.compose.readiness.wait` property that can be used to
determine how Spring Boot should wait for docker compose services to
become ready.

Fixes gh-35545
2023-05-17 16:27:00 -07:00
Phillip Webb
6b0b6ccf49 Move docker compose readiness code and make it package-private
The `ReadinessCheck` interface has been removed making the dedicated
package less necessary. By relocating the code we can make more of it
pacakge-private.

See gh-35544
2023-05-17 16:26:59 -07:00
Phillip Webb
060581d078 Remove pluggable docker compose ReadinessCheck
Remove pluggable `ReadinessCheck` interface and only use the
`TcpConnectServiceReadinessCheck` implementation for now. We
may re-introduce pluggable checks in a future version.

See gh-35544
2023-05-17 16:26:59 -07:00
Andy Wilkinson
3d41e41b94 Polish
Make logger a static field.
2023-05-17 16:26:59 -07:00
Johnny Lim
54f85b1181 Fix since version for ImageReference
See gh-35459
2023-05-17 16:02:32 -05:00
Phillip Webb
ae90add7c7 Polish 2023-05-16 14:04:48 -07:00
Scott Frederick
8377306668 Improve error when Docker Compose file not found
Fixes gh-35383
2023-05-10 13:26:59 -05:00
Moritz Halbritter
441ed30ee4 Polish "Replace Mockito argument captors with assertArg"
Co-authored-by: Andy Wilkinson <wilkinsona@vmware.com>

See gh-35015
2023-05-05 15:41:31 +02:00
Andy Wilkinson
4f9616c2f9 Change DockerComposeProperties shut down default to stop
Closes gh-35239
2023-05-04 21:09:16 +01:00
Andy Wilkinson
6a39b497ad Make Oracle Docker Compose integration tests more robust
Closes gh-35285
2023-05-04 19:40:29 +01:00
Phillip Webb
a890323758 Merge branch '3.0.x' 2023-05-02 14:52:42 -07:00
Moritz Halbritter
9a545727b9 Disable SQL server and Oracle database compose tests on ARM
See gh-35229
2023-05-02 14:16:56 +02:00
Andy Wilkinson
8fe20c5d63 Derive LiquibaseConnectionDetails from JdbcConnectionDetails
Closes gh-35141
2023-05-01 13:32:44 +01:00
Andy Wilkinson
d293df6617 Derive FlywayConnectionDetails from JdbcConnectionDetails
Rather than implementing factories for FlywayConnectionDetails for
each supported SQL database, we instead use a factory to takes
JdbcConnectionDetails as a source and produces
FlywayConnectionDetails.

Closes gh-35138
2023-05-01 13:29:42 +01:00
Phillip Webb
403481ff96 Add 'required' parameter to ConnectionDetailsFactories
Update `ConnectionDetailsFactories` so that callers can now declare if
a result is required or not and improve exception hierarchy.

See gh-35168
2023-04-29 21:10:07 -07:00
Andy Wilkinson
a75f55aaa5 Try to stabilize SQL Server tests on CI 2023-04-28 14:07:50 +01:00
Moritz Halbritter
4131e7338d Fix LogMessage format 2023-04-28 13:46:57 +02:00
Moritz Halbritter
75207db6be Polish docker compose code 2023-04-28 13:46:57 +02:00
Moritz Halbritter
8abebd75fb Use shutdownHandlers parameter in constructor 2023-04-28 13:46:56 +02:00
Andy Wilkinson
cec159110d Do not block indefinitely when querying SQL database 2023-04-28 09:52:27 +01:00
Andy Wilkinson
8bbe894665 Add Docker Compose service connection support for Oracle using JDBC
Closes gh-35145
2023-04-27 11:07:53 +01:00