common/kafka: pace Kafka broker setup tentatives

This commit is contained in:
Vincent Bernat
2023-09-17 08:19:30 +02:00
parent 6339fff407
commit 4fa05560b8

View File

@@ -29,12 +29,12 @@ func SetupKafkaBroker(t *testing.T) (sarama.Client, []string) {
client sarama.Client client sarama.Client
err error err error
) )
for i := 0; i < 90; i++ { for i := 0; i < 90 && !ready; i++ {
if client != nil { if client != nil {
client.Close() client.Close()
time.Sleep(10 * time.Millisecond)
} }
client, err = sarama.NewClient([]string{broker}, saramaConfig) if client, err = sarama.NewClient([]string{broker}, saramaConfig); err != nil {
if err != nil {
continue continue
} }
if err := client.RefreshMetadata(); err != nil { if err := client.RefreshMetadata(); err != nil {
@@ -47,12 +47,10 @@ func SetupKafkaBroker(t *testing.T) (sarama.Client, []string) {
if err := brokers[0].Open(client.Config()); err != nil { if err := brokers[0].Open(client.Config()); err != nil {
continue continue
} }
if connected, err := brokers[0].Connected(); err != nil || !connected { if connected, err := brokers[0].Connected(); err == nil && connected {
brokers[0].Close() ready = true
continue
} }
brokers[0].Close() brokers[0].Close()
ready = true
} }
if !ready { if !ready {
t.Fatalf("broker is not ready") t.Fatalf("broker is not ready")