ABRiS icon indicating copy to clipboard operation
ABRiS copied to clipboard

Add full end to end

Open edwardcapriolo opened this issue 3 years ago • 2 comments

So this is a way to move the "examples" to actually working end to end. It is a real PITA to try to get schema registry classpath in this classpath and this embedded tool does it nice. But maybe testcontainers would be easier.

edwardcapriolo avatar May 27 '21 07:05 edwardcapriolo

The tests are failing because the license is missing in FullSpec.scala

cerveada avatar Jun 09 '21 07:06 cerveada

There is a library for embedded Kafka-SchemaRegistry setup that does not require you to fiddle with installation, Java params and jars directly - https://github.com/embeddedkafka/embedded-kafka-schema-registry. Not sure though if you can use it to deploy Schema Registry without Kafka.

My advice would be to use testcontainers. Unlike an embedded service, the containerised counterpart is OS-agnostic. In the vast majority of cases such as proposed in this PR, an embedded service will not cause an issue, but it's that 1% that gives the most headaches.

For example, (embedded) Kafka is not supported on Windows leading to issues under certain circumstances (https://github.com/apache/kafka/pull/6329 and KAFKA-1194).

There is a caveat if your CI runs on Kubernetes. Running testcontainers in a container (pod) necessitates a Docker-in-Docker setup that introduces a significant security risk and is a no go.