Skip to content

Commit 7b7c8d9

Browse files
committed
Separate feature branch for gradle+kotlin enhancment
1 parent 2081fb2 commit 7b7c8d9

21 files changed

+669
-503
lines changed

.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,6 @@
11
*/Kafka*/build/*
22
!*/Kafka*/build/generated*/
3+
*/Kafka*/.gradle
4+
*/Kafka*/.java-version
5+
api-key*.txt
6+
client.properties

client.properties-template

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
security.protocol=SASL_SSL
2+
sasl.mechanism=PLAIN
3+
sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username='<Username or API-KEY>' password='<Password or API-SECRET>';
4+
bootstrap.servers=<hostname>:<port>
5+
group.id=<Name of your consumer group>
6+
# Schema Registry
7+
schema.registry.url=<URL OF SCHEMA REGISTRY>
8+
basic.auth.credentials.source=USER_INFO
9+
basic.auth.user.info=<user>:<password>
10+
use.latest.version=true
11+
auto.register.schemas=false
12+
# Encryption
13+
rule.executors._default_.param.token.id=<root-token>
14+
# Topic configuration
15+
topic.name=csfle-test
16+

hashicorp/KafkaConsumer/build.gradle.kts

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import org.gradle.jvm.tasks.Jar
22
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
33

44
plugins {
5-
kotlin("jvm") version "1.5.31"
5+
kotlin("jvm") version "1.7.20"
66
id("com.github.davidmc24.gradle.plugin.avro") version "1.2.0"
77
application
88
}
@@ -31,21 +31,23 @@ dependencies {
3131
implementation("io.confluent:kafka-schema-registry-client-encryption-hcvault:7.4.2")
3232
}
3333

34-
val fatJar = task("fatJar", type = Jar::class) {
35-
36-
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
37-
baseName = "fatApp"
38-
manifest {
39-
attributes["Main-Class"] = application.mainClass
34+
tasks {
35+
val fatJar = register<Jar>("fatJar") {
36+
dependsOn.addAll(listOf("compileJava", "compileKotlin", "processResources")) // We need this for Gradle optimization to work
37+
archiveClassifier.set("standalone") // Naming the jar
38+
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
39+
manifest { attributes(mapOf("Main-Class" to application.mainClass)) } // Provided we set it up in the application plugin configuration
40+
val sourcesMain = sourceSets.main.get()
41+
val contents = configurations.runtimeClasspath.get()
42+
.map { if (it.isDirectory) it else zipTree(it) } +
43+
sourcesMain.output
44+
from(contents)
45+
}
46+
build {
47+
dependsOn(fatJar) // Trigger fat jar creation during build
4048
}
41-
from(configurations.runtimeClasspath.get().map { if (it.isDirectory) it else zipTree(it) })
42-
with(tasks.jar.get() as CopySpec)
43-
}
44-
45-
tasks.withType<Test> {
46-
useJUnitPlatform()
4749
}
4850

4951
tasks.withType<KotlinCompile> {
50-
kotlinOptions.jvmTarget = "11"
52+
kotlinOptions.jvmTarget = "17"
5153
}
-15.4 KB
Binary file not shown.
Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.5-bin.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
46
zipStoreBase=GRADLE_USER_HOME
57
zipStorePath=wrapper/dists

0 commit comments

Comments
 (0)