Skip to content

Commit

Permalink
Use Apicurio Registry Avro extension in the Kafka Avro quickstart
Browse files Browse the repository at this point in the history
  • Loading branch information
Ladicek committed Jun 16, 2021
1 parent 9936eb4 commit ea25bdf
Show file tree
Hide file tree
Showing 4 changed files with 2 additions and 58 deletions.
7 changes: 1 addition & 6 deletions kafka-avro-schema-quickstart/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -46,17 +46,12 @@
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-avro</artifactId>
<artifactId>quarkus-apicurio-registry-avro</artifactId>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-arc</artifactId>
</dependency>
<dependency>
<groupId>io.apicurio</groupId>
<artifactId>apicurio-registry-serdes-avro-serde</artifactId>
<version>2.0.0.Final</version>
</dependency>
<dependency>
<groupId>io.quarkus</groupId>
<artifactId>quarkus-junit5</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,9 @@
# set the URL of the Apicurio Schema Registry, a global setting shared between all Kafka producers and consumers
mp.messaging.connector.smallrye-kafka.apicurio.registry.url=http://localhost:8081/apis/registry/v2

# set the connector to use for the `movies` channel to smallrye-kafka
mp.messaging.outgoing.movies.connector=smallrye-kafka

# the name of the corresponding Kafka topic to `movies`
mp.messaging.outgoing.movies.topic=movies

# set the serializer for the `movies` channel to the Apicurio Avro Serializer
mp.messaging.outgoing.movies.value.serializer=io.apicurio.registry.serde.avro.AvroKafkaSerializer

# automatically register the schema with the registry, if not present
mp.messaging.outgoing.movies.apicurio.registry.auto-register=true

Expand All @@ -19,15 +13,10 @@ mp.messaging.incoming.movies-from-kafka.connector=smallrye-kafka
# set the topic name for the channel to `movies`
mp.messaging.incoming.movies-from-kafka.topic=movies

# set the deserializer for the `movies-from-kafka` channel to the Apicurio Avro Deserializer
mp.messaging.incoming.movies-from-kafka.value.deserializer=io.apicurio.registry.serde.avro.AvroKafkaDeserializer

# disable auto-commit, Reactive Messaging handles it itself
mp.messaging.incoming.movies-from-kafka.enable.auto.commit=false

mp.messaging.incoming.movies-from-kafka.auto.offset.reset=earliest
mp.messaging.incoming.movies-from-kafka.apicurio.registry.use-specific-avro-reader=true

# TODO: this should not be needed, but Avro does not seem to use the correct CL
# This will also cause dev mode issues
quarkus.test.flat-class-path=true
%prod.mp.messaging.connector.smallrye-kafka.apicurio.registry.url=http://localhost:8081/apis/registry/v2

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package org.acme.kafka;

import io.quarkus.test.common.QuarkusTestResource;
import io.quarkus.test.common.http.TestHTTPResource;
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.http.ContentType;
Expand All @@ -18,14 +17,11 @@
import java.util.concurrent.Executors;

import static io.restassured.RestAssured.given;
import static java.util.concurrent.TimeUnit.MILLISECONDS;
import static java.util.concurrent.TimeUnit.SECONDS;
import static org.awaitility.Awaitility.await;
import static org.hamcrest.MatcherAssert.assertThat;

@QuarkusTest
// register the class that sets up Testcontainers:
@QuarkusTestResource(KafkaAndSchemaRegistryTestResource.class)
public class MovieResourceTest {

@TestHTTPResource("/consumed-movies")
Expand Down

0 comments on commit ea25bdf

Please sign in to comment.