Omnia Ibrahim created KAFKA-14344: ------------------------------------- Summary: Build EmbeddedKafkaCluster with common configs used for all clients Key: KAFKA-14344 URL: https://issues.apache.org/jira/browse/KAFKA-14344 Project: Kafka Issue Type: Improvement Components: KafkaConnect, unit tests Reporter: Omnia Ibrahim Assignee: Omnia Ibrahim
Connect and MirrorMaker's integration test use `EmbeddedKafkaCluster` and `EmbeddedConnectCluster` to setup connect cluster during testing. Both classes are easy to setup if the test needs vanilla clusters, however, it's a lot of work to make it set it up with more advanced config (for example authentication and authorization) where admin, consumer and producer clients need more configuration. 1. I am proposing adding extra parameter `additionalClientConfigs` to `EmbeddedKafkaCluster` constructor. The new parameter will be used - Setup Producer Client in `EmbeddedKafkaCluster.doStart` which is initializing `producer` client that is used in `EmbeddedKafkaCluster.produce` - Setup Producer Client in `EmbeddedKafkaCluster.createProducer` used in `EmbeddedKafkaCluster.transactionalProducer` - Setup Admin Client in `EmbeddedKafkaCluster.createAdminClient` used in `EmbeddedKafkaCluster.createTopic`, `EmbeddedKafkaCluster.consumeAll`, `EmbeddedKafkaCluster.describeTopics` and `EmbeddedKafkaCluster.deleteTopic` - Setup Consumer Client in `EmbeddedKafkaCluster.createConsumer` used in `EmbeddedKafkaCluster.createConsumerAndSubscribeTo` and `EmbeddedKafkaCluster.consumeAll` 2. And add `EmbeddedConnectCluster.Builder.additionalKafkaClusterClientConfigs`. Tests impacted by this - MirrorMaker integration tests - `org.apache.kafka.connect.integration.ExactlyOnceSourceIntegrationTest` -- This message was sent by Atlassian Jira (v8.20.10#820010)