This is an automated email from the ASF dual-hosted git repository.
david-streamlio pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar-connectors.git
The following commit(s) were added to refs/heads/master by this push:
new 52e3415a [improve][test] Bound container startup in all Testcontainers
tests (#103)
52e3415a is described below
commit 52e3415a77dc7c46b19298fd4ed16abddf46b2f2
Author: David Kjerrumgaard <[email protected]>
AuthorDate: Fri Jul 10 14:50:53 2026 -0700
[improve][test] Bound container startup in all Testcontainers tests (#103)
Add an explicit withStartupTimeout to every Testcontainers container
started in @BeforeClass/@BeforeMethod so a stalled image pull or container
start fails fast instead of hanging the CI job until its 45-minute limit.
A @Test(timeOut=...) only bounds the test method, not the container start
in @BeforeClass/@BeforeMethod, so without withStartupTimeout a stuck start
could cancel unrelated PRs' CI at the job limit (see #89; fixed for MQTT in
#91). This applies the same bound to the remaining Testcontainers tests.
N=3 for a single normal container; N=5 for the Debezium source tests
(DB + Pulsar container) and for large/slow images (ClickHouse, LocalStack,
Pulsar). Only the startup timeout is added; no test logic is changed.
---
.../org/apache/pulsar/io/cassandra/CassandraStringSinkTest.java | 4 +++-
.../org/apache/pulsar/io/debezium/PulsarSchemaHistoryTest.java | 4 +++-
.../pulsar/io/debezium/mariadb/DebeziumMariaDbSourceTest.java | 7 +++++--
.../pulsar/io/debezium/mongodb/DebeziumMongoDbSourceTest.java | 7 +++++--
.../apache/pulsar/io/debezium/mysql/DebeziumMysqlSourceTest.java | 7 +++++--
.../pulsar/io/debezium/postgres/DebeziumPostgresSourceTest.java | 7 +++++--
.../apache/pulsar/io/dynamodb/DynamoDBSourceIntegrationTest.java | 4 +++-
.../io/influxdb/v1/InfluxDBGenericRecordSinkIntegrationTest.java | 4 +++-
.../apache/pulsar/io/influxdb/v2/InfluxDBSinkIntegrationTest.java | 4 +++-
.../apache/pulsar/io/jdbc/ClickHouseJdbcSinkIntegrationTest.java | 4 +++-
.../org/apache/pulsar/io/jdbc/MariadbJdbcSinkIntegrationTest.java | 4 +++-
.../test/java/org/apache/pulsar/io/kinesis/KinesisSinkTest.java | 4 +++-
.../java/org/apache/pulsar/io/mongodb/MongoSinkContainerTest.java | 4 +++-
.../java/org/apache/pulsar/io/nsq/NSQSourceIntegrationTest.java | 7 +++++--
.../java/org/apache/pulsar/io/rabbitmq/RabbitMQBrokerManager.java | 2 ++
15 files changed, 54 insertions(+), 19 deletions(-)
diff --git
a/cassandra/src/test/java/org/apache/pulsar/io/cassandra/CassandraStringSinkTest.java
b/cassandra/src/test/java/org/apache/pulsar/io/cassandra/CassandraStringSinkTest.java
index 4839ad4c..7735f5ce 100644
---
a/cassandra/src/test/java/org/apache/pulsar/io/cassandra/CassandraStringSinkTest.java
+++
b/cassandra/src/test/java/org/apache/pulsar/io/cassandra/CassandraStringSinkTest.java
@@ -23,6 +23,7 @@ import static org.testng.Assert.assertEquals;
import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Row;
import com.datastax.driver.core.Session;
+import java.time.Duration;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -49,7 +50,8 @@ public class CassandraStringSinkTest {
@BeforeMethod
public void setUp() {
- cassandraContainer = new CassandraContainer<>("cassandra:4.1");
+ cassandraContainer = new CassandraContainer<>("cassandra:4.1")
+ .withStartupTimeout(Duration.ofMinutes(3));
cassandraContainer.start();
// Create keyspace and table
diff --git
a/debezium/core/src/test/java/org/apache/pulsar/io/debezium/PulsarSchemaHistoryTest.java
b/debezium/core/src/test/java/org/apache/pulsar/io/debezium/PulsarSchemaHistoryTest.java
index 0856cc1e..ba98cdf7 100644
---
a/debezium/core/src/test/java/org/apache/pulsar/io/debezium/PulsarSchemaHistoryTest.java
+++
b/debezium/core/src/test/java/org/apache/pulsar/io/debezium/PulsarSchemaHistoryTest.java
@@ -30,6 +30,7 @@ import io.debezium.relational.history.SchemaHistory;
import io.debezium.relational.history.SchemaHistoryListener;
import io.debezium.text.ParsingException;
import io.debezium.util.Collect;
+import java.time.Duration;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@@ -64,7 +65,8 @@ public class PulsarSchemaHistoryTest {
@BeforeMethod
protected void setup() throws Exception {
- pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE));
+ pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE))
+ .withStartupTimeout(Duration.ofMinutes(5));
pulsarContainer.start();
pulsarClient = PulsarClient.builder()
diff --git
a/debezium/mariadb/src/test/java/org/apache/pulsar/io/debezium/mariadb/DebeziumMariaDbSourceTest.java
b/debezium/mariadb/src/test/java/org/apache/pulsar/io/debezium/mariadb/DebeziumMariaDbSourceTest.java
index cc60d488..c1cdc364 100644
---
a/debezium/mariadb/src/test/java/org/apache/pulsar/io/debezium/mariadb/DebeziumMariaDbSourceTest.java
+++
b/debezium/mariadb/src/test/java/org/apache/pulsar/io/debezium/mariadb/DebeziumMariaDbSourceTest.java
@@ -26,6 +26,7 @@ import static org.testng.Assert.assertTrue;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.TimeUnit;
@@ -71,10 +72,12 @@ public class DebeziumMariaDbSourceTest {
"--binlog-format=ROW",
"--server-id=1"
)
- .waitingFor(Wait.forLogMessage(".*ready for connections.*\\s",
2));
+ .waitingFor(Wait.forLogMessage(".*ready for connections.*\\s",
2))
+ .withStartupTimeout(Duration.ofMinutes(5));
mariadbContainer.start();
- pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE));
+ pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE))
+ .withStartupTimeout(Duration.ofMinutes(5));
pulsarContainer.start();
pulsarClient = PulsarClient.builder()
diff --git
a/debezium/mongodb/src/test/java/org/apache/pulsar/io/debezium/mongodb/DebeziumMongoDbSourceTest.java
b/debezium/mongodb/src/test/java/org/apache/pulsar/io/debezium/mongodb/DebeziumMongoDbSourceTest.java
index fb6e0b6e..876d3bd4 100644
---
a/debezium/mongodb/src/test/java/org/apache/pulsar/io/debezium/mongodb/DebeziumMongoDbSourceTest.java
+++
b/debezium/mongodb/src/test/java/org/apache/pulsar/io/debezium/mongodb/DebeziumMongoDbSourceTest.java
@@ -26,6 +26,7 @@ import static org.testng.Assert.assertNotNull;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
@@ -68,10 +69,12 @@ public class DebeziumMongoDbSourceTest {
readerExecutor = Executors.newSingleThreadExecutor();
// MongoDBContainer starts a single-node replica set, which Debezium
requires
// for change streams.
- mongoContainer = new
MongoDBContainer(DockerImageName.parse("mongo:7.0"));
+ mongoContainer = new
MongoDBContainer(DockerImageName.parse("mongo:7.0"))
+ .withStartupTimeout(Duration.ofMinutes(5));
mongoContainer.start();
- pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE));
+ pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE))
+ .withStartupTimeout(Duration.ofMinutes(5));
pulsarContainer.start();
pulsarClient = PulsarClient.builder()
diff --git
a/debezium/mysql/src/test/java/org/apache/pulsar/io/debezium/mysql/DebeziumMysqlSourceTest.java
b/debezium/mysql/src/test/java/org/apache/pulsar/io/debezium/mysql/DebeziumMysqlSourceTest.java
index fa8f4f9a..dd932042 100644
---
a/debezium/mysql/src/test/java/org/apache/pulsar/io/debezium/mysql/DebeziumMysqlSourceTest.java
+++
b/debezium/mysql/src/test/java/org/apache/pulsar/io/debezium/mysql/DebeziumMysqlSourceTest.java
@@ -26,6 +26,7 @@ import static org.testng.Assert.assertNotNull;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
@@ -86,10 +87,12 @@ readerExecutor = Executors.newSingleThreadExecutor(r -> {
"--gtid-mode=ON",
"--enforce-gtid-consistency=ON"
)
- .waitingFor(Wait.forLogMessage(".*ready for connections.*\\s",
2));
+ .waitingFor(Wait.forLogMessage(".*ready for connections.*\\s",
2))
+ .withStartupTimeout(Duration.ofMinutes(5));
mysqlContainer.start();
- pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE));
+ pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE))
+ .withStartupTimeout(Duration.ofMinutes(5));
pulsarContainer.start();
pulsarClient = PulsarClient.builder()
diff --git
a/debezium/postgres/src/test/java/org/apache/pulsar/io/debezium/postgres/DebeziumPostgresSourceTest.java
b/debezium/postgres/src/test/java/org/apache/pulsar/io/debezium/postgres/DebeziumPostgresSourceTest.java
index f550d8e9..f753e9d7 100644
---
a/debezium/postgres/src/test/java/org/apache/pulsar/io/debezium/postgres/DebeziumPostgresSourceTest.java
+++
b/debezium/postgres/src/test/java/org/apache/pulsar/io/debezium/postgres/DebeziumPostgresSourceTest.java
@@ -26,6 +26,7 @@ import static org.testng.Assert.assertNotNull;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
@@ -72,10 +73,12 @@ public class DebeziumPostgresSourceTest {
.withCommand("postgres",
"-c", "wal_level=logical",
"-c", "max_wal_senders=4",
- "-c", "max_replication_slots=4");
+ "-c", "max_replication_slots=4")
+ .withStartupTimeout(Duration.ofMinutes(5));
postgresContainer.start();
- pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE));
+ pulsarContainer = new
PulsarContainer(DockerImageName.parse(PULSAR_IMAGE))
+ .withStartupTimeout(Duration.ofMinutes(5));
pulsarContainer.start();
pulsarClient = PulsarClient.builder()
diff --git
a/dynamodb/src/test/java/org/apache/pulsar/io/dynamodb/DynamoDBSourceIntegrationTest.java
b/dynamodb/src/test/java/org/apache/pulsar/io/dynamodb/DynamoDBSourceIntegrationTest.java
index d6600b28..0f8fff8c 100644
---
a/dynamodb/src/test/java/org/apache/pulsar/io/dynamodb/DynamoDBSourceIntegrationTest.java
+++
b/dynamodb/src/test/java/org/apache/pulsar/io/dynamodb/DynamoDBSourceIntegrationTest.java
@@ -37,6 +37,7 @@ import
com.amazonaws.services.dynamodbv2.model.ScalarAttributeType;
import com.amazonaws.services.dynamodbv2.model.StreamSpecification;
import com.amazonaws.services.dynamodbv2.model.StreamViewType;
import java.net.URI;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutorService;
@@ -82,7 +83,8 @@ public class DynamoDBSourceIntegrationTest {
new
LocalStackContainer(DockerImageName.parse("localstack/localstack:4.0.3"))
.withServices(
LocalStackContainer.Service.DYNAMODB,
- LocalStackContainer.Service.CLOUDWATCH);
+ LocalStackContainer.Service.CLOUDWATCH)
+ .withStartupTimeout(Duration.ofMinutes(5));
private AmazonDynamoDB dynamoDB;
private String streamArn;
diff --git
a/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v1/InfluxDBGenericRecordSinkIntegrationTest.java
b/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v1/InfluxDBGenericRecordSinkIntegrationTest.java
index a6c7bf9b..3508f578 100644
---
a/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v1/InfluxDBGenericRecordSinkIntegrationTest.java
+++
b/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v1/InfluxDBGenericRecordSinkIntegrationTest.java
@@ -20,6 +20,7 @@ package org.apache.pulsar.io.influxdb.v1;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
+import java.time.Duration;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -95,7 +96,8 @@ public class InfluxDBGenericRecordSinkIntegrationTest {
.withEnv("INFLUXDB_ADMIN_USER", USERNAME)
.withEnv("INFLUXDB_ADMIN_PASSWORD", PASSWORD)
.withEnv("INFLUXDB_HTTP_AUTH_ENABLED", "true")
-
.waitingFor(Wait.forHttp("/ping").forPort(INFLUXDB_PORT).forStatusCode(204));
+
.waitingFor(Wait.forHttp("/ping").forPort(INFLUXDB_PORT).forStatusCode(204))
+ .withStartupTimeout(Duration.ofMinutes(3));
influxdbContainer.start();
influxdbUrl = "http://" + influxdbContainer.getHost() + ":"
diff --git
a/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v2/InfluxDBSinkIntegrationTest.java
b/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v2/InfluxDBSinkIntegrationTest.java
index db6b8a52..f2d00657 100644
---
a/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v2/InfluxDBSinkIntegrationTest.java
+++
b/influxdb/src/test/java/org/apache/pulsar/io/influxdb/v2/InfluxDBSinkIntegrationTest.java
@@ -24,6 +24,7 @@ import com.influxdb.client.InfluxDBClient;
import com.influxdb.client.InfluxDBClientFactory;
import com.influxdb.query.FluxRecord;
import com.influxdb.query.FluxTable;
+import java.time.Duration;
import java.time.Instant;
import java.util.HashMap;
import java.util.List;
@@ -98,7 +99,8 @@ public class InfluxDBSinkIntegrationTest {
.withEnv("DOCKER_INFLUXDB_INIT_ORG", ORG)
.withEnv("DOCKER_INFLUXDB_INIT_BUCKET", BUCKET)
.withEnv("DOCKER_INFLUXDB_INIT_ADMIN_TOKEN", TOKEN)
-
.waitingFor(Wait.forHttp("/health").forPort(INFLUXDB_PORT).forStatusCode(200));
+
.waitingFor(Wait.forHttp("/health").forPort(INFLUXDB_PORT).forStatusCode(200))
+ .withStartupTimeout(Duration.ofMinutes(3));
influxdbContainer.start();
influxdbUrl = "http://" + influxdbContainer.getHost() + ":"
diff --git
a/jdbc/clickhouse/src/test/java/org/apache/pulsar/io/jdbc/ClickHouseJdbcSinkIntegrationTest.java
b/jdbc/clickhouse/src/test/java/org/apache/pulsar/io/jdbc/ClickHouseJdbcSinkIntegrationTest.java
index 8269b4b5..8203518b 100644
---
a/jdbc/clickhouse/src/test/java/org/apache/pulsar/io/jdbc/ClickHouseJdbcSinkIntegrationTest.java
+++
b/jdbc/clickhouse/src/test/java/org/apache/pulsar/io/jdbc/ClickHouseJdbcSinkIntegrationTest.java
@@ -25,6 +25,7 @@ import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
@@ -91,7 +92,8 @@ public class ClickHouseJdbcSinkIntegrationTest {
@BeforeClass(alwaysRun = true)
public void setUp() throws Exception {
- clickhouse = new ClickHouseContainer(CLICKHOUSE_IMAGE);
+ clickhouse = new ClickHouseContainer(CLICKHOUSE_IMAGE)
+ .withStartupTimeout(Duration.ofMinutes(5));
clickhouse.start();
// Create the destination table over the HTTP interface (ClickHouse
requires an explicit
diff --git
a/jdbc/mariadb/src/test/java/org/apache/pulsar/io/jdbc/MariadbJdbcSinkIntegrationTest.java
b/jdbc/mariadb/src/test/java/org/apache/pulsar/io/jdbc/MariadbJdbcSinkIntegrationTest.java
index 1039dc1c..45ccb811 100644
---
a/jdbc/mariadb/src/test/java/org/apache/pulsar/io/jdbc/MariadbJdbcSinkIntegrationTest.java
+++
b/jdbc/mariadb/src/test/java/org/apache/pulsar/io/jdbc/MariadbJdbcSinkIntegrationTest.java
@@ -25,6 +25,7 @@ import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
@@ -82,7 +83,8 @@ public class MariadbJdbcSinkIntegrationTest {
@BeforeClass(alwaysRun = true)
public void setUp() throws Exception {
- mariadb = new MariaDBContainer<>(MARIADB_IMAGE);
+ mariadb = new MariaDBContainer<>(MARIADB_IMAGE)
+ .withStartupTimeout(Duration.ofMinutes(3));
mariadb.start();
// Create the destination table over plain JDBC.
diff --git
a/kinesis/src/test/java/org/apache/pulsar/io/kinesis/KinesisSinkTest.java
b/kinesis/src/test/java/org/apache/pulsar/io/kinesis/KinesisSinkTest.java
index 332cd4a8..66c31c33 100644
--- a/kinesis/src/test/java/org/apache/pulsar/io/kinesis/KinesisSinkTest.java
+++ b/kinesis/src/test/java/org/apache/pulsar/io/kinesis/KinesisSinkTest.java
@@ -24,6 +24,7 @@ import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertTrue;
import java.net.URI;
import java.nio.charset.StandardCharsets;
+import java.time.Duration;
import java.util.HashMap;
import java.util.Map;
import java.util.Optional;
@@ -59,7 +60,8 @@ public class KinesisSinkTest {
public static final LocalStackContainer LOCAL_STACK_CONTAINER =
new
LocalStackContainer(DockerImageName.parse("localstack/localstack:4.0.3"))
.withServices(LocalStackContainer.Service.KINESIS,
LocalStackContainer.Service.STS)
- .withEnv("KINESIS_PROVIDER", "kinesalite");
+ .withEnv("KINESIS_PROVIDER", "kinesalite")
+ .withStartupTimeout(Duration.ofMinutes(5));
@BeforeClass(alwaysRun = true)
public void beforeClass() throws Exception {
diff --git
a/mongo/src/test/java/org/apache/pulsar/io/mongodb/MongoSinkContainerTest.java
b/mongo/src/test/java/org/apache/pulsar/io/mongodb/MongoSinkContainerTest.java
index 93f79a9e..2184c251 100644
---
a/mongo/src/test/java/org/apache/pulsar/io/mongodb/MongoSinkContainerTest.java
+++
b/mongo/src/test/java/org/apache/pulsar/io/mongodb/MongoSinkContainerTest.java
@@ -22,6 +22,7 @@ import static org.mockito.Mockito.mock;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertNotNull;
import java.nio.charset.StandardCharsets;
+import java.time.Duration;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -50,7 +51,8 @@ public class MongoSinkContainerTest {
@BeforeMethod
public void setUp() {
- mongoContainer = new MongoDBContainer("mongo:6.0");
+ mongoContainer = new MongoDBContainer("mongo:6.0")
+ .withStartupTimeout(Duration.ofMinutes(3));
mongoContainer.start();
sink = new MongoSink();
}
diff --git
a/nsq/src/test/java/org/apache/pulsar/io/nsq/NSQSourceIntegrationTest.java
b/nsq/src/test/java/org/apache/pulsar/io/nsq/NSQSourceIntegrationTest.java
index 874f2442..57773285 100644
--- a/nsq/src/test/java/org/apache/pulsar/io/nsq/NSQSourceIntegrationTest.java
+++ b/nsq/src/test/java/org/apache/pulsar/io/nsq/NSQSourceIntegrationTest.java
@@ -32,6 +32,7 @@ import java.net.ServerSocket;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.StandardCharsets;
+import java.time.Duration;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
@@ -106,7 +107,8 @@ public class NSQSourceIntegrationTest {
.withNetworkAliases("nsqlookupd")
.withCommand("/nsqlookupd")
.withExposedPorts(LOOKUPD_TCP_PORT, LOOKUPD_HTTP_PORT)
- .waitingFor(Wait.forHttp("/ping").forPort(LOOKUPD_HTTP_PORT));
+ .waitingFor(Wait.forHttp("/ping").forPort(LOOKUPD_HTTP_PORT))
+ .withStartupTimeout(Duration.ofMinutes(3));
nsqlookupd.start();
nsqd = new GenericContainer<>(NSQ_IMAGE)
@@ -134,7 +136,8 @@ public class NSQSourceIntegrationTest {
Ports.Binding.bindPort(nsqdTcpPort));
hostConfig.withPortBindings(portBindings);
})
- .waitingFor(Wait.forHttp("/ping").forPort(NSQD_HTTP_PORT));
+ .waitingFor(Wait.forHttp("/ping").forPort(NSQD_HTTP_PORT))
+ .withStartupTimeout(Duration.ofMinutes(3));
nsqd.start();
log.info("nsqlookupd http {}:{}, nsqd http {}:{}, nsqd tcp {}:{}",
diff --git
a/rabbitmq/src/test/java/org/apache/pulsar/io/rabbitmq/RabbitMQBrokerManager.java
b/rabbitmq/src/test/java/org/apache/pulsar/io/rabbitmq/RabbitMQBrokerManager.java
index ef69608e..24e5fa01 100644
---
a/rabbitmq/src/test/java/org/apache/pulsar/io/rabbitmq/RabbitMQBrokerManager.java
+++
b/rabbitmq/src/test/java/org/apache/pulsar/io/rabbitmq/RabbitMQBrokerManager.java
@@ -18,6 +18,7 @@
*/
package org.apache.pulsar.io.rabbitmq;
+import java.time.Duration;
import org.testcontainers.containers.RabbitMQContainer;
import org.testcontainers.utility.DockerImageName;
@@ -27,6 +28,7 @@ public class RabbitMQBrokerManager {
public void startBroker() throws Exception {
rabbitMQContainer = new
RabbitMQContainer(DockerImageName.parse("rabbitmq:3.7.25-management-alpine"));
rabbitMQContainer.withVhost("default");
+ rabbitMQContainer.withStartupTimeout(Duration.ofMinutes(3));
rabbitMQContainer.start();
}