DBZ-7986 Fix testcontainers Kafka container

This commit is contained in:
Ondrej Babec 2024-06-27 12:40:45 +02:00 committed by Jiri Pechanec
parent 44057015ec
commit 506db25824
3 changed files with 39 additions and 4 deletions

View File

@ -0,0 +1,37 @@
/*
* Copyright Debezium Authors.
*
* Licensed under the Apache Software License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
*/
package io.debezium.testing.testcontainers;
import org.testcontainers.containers.KafkaContainer;
import org.testcontainers.containers.Network;
import org.testcontainers.utility.DockerImageName;
public class DebeziumKafkaContainer {
private static final String defaultImage = "confluentinc/cp-kafka:7.2.10";
public static KafkaContainer defaultKRaftContainer(Network network) {
try (
KafkaContainer kafka = new KafkaContainer(DockerImageName.parse(defaultImage))
.withNetwork(network)
.withKraft()) {
return kafka;
}
catch (Exception e) {
throw new RuntimeException("Cannot create KRaftContainer with default image.", e);
}
}
public static KafkaContainer defaultKafkaContainer(Network network) {
try (
KafkaContainer kafka = new KafkaContainer(DockerImageName.parse(defaultImage))
.withNetwork(network)) {
return kafka;
}
catch (Exception e) {
throw new RuntimeException("Cannot create KafkaContainer with default image.", e);
}
}
}

View File

@ -63,8 +63,7 @@ public class ApicurioRegistryTest {
private static final ApicurioRegistryContainer apicurioContainer = new ApicurioRegistryContainer().withNetwork(network);
private static final KafkaContainer kafkaContainer = new KafkaContainer()
.withNetwork(network);
private static final KafkaContainer kafkaContainer = DebeziumKafkaContainer.defaultKRaftContainer(network);
public static final PostgreSQLContainer<?> postgresContainer = new PostgreSQLContainer<>(ImageNames.POSTGRES_DOCKER_IMAGE_NAME)
.withNetwork(network)

View File

@ -50,8 +50,7 @@ public class DebeziumContainerTest {
private static final Network network = Network.newNetwork();
private static final KafkaContainer kafkaContainer = new KafkaContainer()
.withNetwork(network);
private static final KafkaContainer kafkaContainer = DebeziumKafkaContainer.defaultKRaftContainer(network);
public static PostgreSQLContainer<?> postgresContainer = new PostgreSQLContainer<>(ImageNames.POSTGRES_DOCKER_IMAGE_NAME)
.withNetwork(network)