diff --git a/eze/src/main/kotlin/org/camunda/community/eze/grpc/GrpcToLogStreamGateway.kt b/eze/src/main/kotlin/org/camunda/community/eze/grpc/GrpcToLogStreamGateway.kt index 87db99c..411f1a4 100644 --- a/eze/src/main/kotlin/org/camunda/community/eze/grpc/GrpcToLogStreamGateway.kt +++ b/eze/src/main/kotlin/org/camunda/community/eze/grpc/GrpcToLogStreamGateway.kt @@ -47,6 +47,8 @@ class GrpcToLogStreamGateway( private val requestIdGenerator = AtomicLong() + private val versionInfo = getVersionInfo() + private fun writeCommandWithKey( key: Long, metadata: RecordMetadata, @@ -426,7 +428,7 @@ class GrpcToLogStreamGateway( .addPartitions(partition) .setHost("0.0.0.0") .setPort(26500) - .setVersion(javaClass.`package`.implementationVersion ?: "X.Y.Z") + .setVersion(versionInfo) .build() val topologyResponse = GatewayOuterClass.TopologyResponse @@ -435,7 +437,7 @@ class GrpcToLogStreamGateway( .setClusterSize(1) .setPartitionsCount(1) .setReplicationFactor(1) - .setGatewayVersion(javaClass.`package`.implementationVersion ?: "A.B.C") + .setGatewayVersion(versionInfo) .build() responseObserver.onNext(topologyResponse) @@ -493,4 +495,11 @@ class GrpcToLogStreamGateway( // TODO handle } } + + private fun getVersionInfo(): String { + val ezeVersion = javaClass.`package`.implementationVersion ?: "dev" + val zeebeVersion = RecordMetadata::class.java.`package`.implementationVersion ?: "dev" + + return "$ezeVersion ($zeebeVersion)" + } } diff --git a/eze/src/test/kotlin/org/camunda/community/eze/EngineClientTest.kt b/eze/src/test/kotlin/org/camunda/community/eze/EngineClientTest.kt index b850858..ff36530 100644 --- a/eze/src/test/kotlin/org/camunda/community/eze/EngineClientTest.kt +++ b/eze/src/test/kotlin/org/camunda/community/eze/EngineClientTest.kt @@ -74,13 +74,17 @@ class EngineClientTest { assertThat(topology.clusterSize).isEqualTo(1) assertThat(topology.replicationFactor).isEqualTo(1) assertThat(topology.partitionsCount).isEqualTo(1) - assertThat(topology.gatewayVersion).isEqualTo("A.B.C") + assertThat(topology.gatewayVersion) + .describedAs("Expect a version with the pattern 'dev (8.1.8)'") + .containsPattern("""dev \(8\.\d+\.\d+(-.*)?\)""") assertThat(topology.brokers).hasSize(1) val broker = topology.brokers[0] assertThat(broker.host).isEqualTo("0.0.0.0") assertThat(broker.port).isEqualTo(26500) - assertThat(broker.version).isEqualTo("X.Y.Z") + assertThat(broker.version) + .describedAs("Expect a version with the pattern 'dev (8.1.8)'") + .containsPattern("""dev \(8\.\d+\.\d+(-.*)?\)""") assertThat(broker.partitions).hasSize(1) val partition = broker.partitions[0]