tchiotludo / akhq

Kafka GUI for Apache Kafka to manage topics, topics data, consumers group, schema registry, connect and more...
https://akhq.io/
Apache License 2.0
3.34k stars 646 forks source link

Support for Spring Cloud Stream Schema Registry #40

Closed tine2k closed 5 years ago

tine2k commented 5 years ago

I very much like the Schema Registry support introduced in 0.3. However, only the confluent registry is currently supported. I use the Spring Cloud Stream implementation (https://docs.spring.io/spring-cloud-stream/docs/current/reference/html/schema-evolution.html#_schema_registry_server), whose endpoints are not compatible with confluent's implementation. Do you any plans to support/implement this registry implementation as well? If not, are you open for PRs for this?

tchiotludo commented 5 years ago

To be honest, I'm even not aware of this implementation from spring, since I don't use spring by myself.

I don't think I will have time to deal with it in a short time.

But PR are always welcome and appreciate and will be merged 😀

tine2k commented 5 years ago

I looked into this a little bit. The methods getAll() and getAllVersions() of SchemaRegistryRepository are required for the UI via SchemaController. Spring Clouds' implementation does not support this. One can only query the latest version or a specific version of a given subject. It would be possible to implement support in the deserialisation only, which would be nice. However, my primary intent of this ticket was the UI integration. Unfortunately this is not possible.

tchiotludo commented 5 years ago

Also look at the spring doc, no way to list schema ... Seems to be weird, like a black box :black_large_square:

This seems to be easy to implement missing method on : https://github.com/spring-cloud/spring-cloud-stream/blob/b5a64eac1406369d21ae2281519caf08404555b5/spring-cloud-stream-schema-server/src/main/java/org/springframework/cloud/stream/schema/server/controllers/ServerController.java

So one option is to PR spring before, to have this working on KafkaHQ ?