From 10414045196766757602354ec1bc319be136589e Mon Sep 17 00:00:00 2001 From: Bastiaan Date: Mon, 10 Jun 2024 14:20:33 +0200 Subject: [PATCH 1/9] Remove snapshot versions --- java-sdk/buildSrc/src/main/kotlin/Versions.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-sdk/buildSrc/src/main/kotlin/Versions.kt b/java-sdk/buildSrc/src/main/kotlin/Versions.kt index a46e36c5..3ec38247 100644 --- a/java-sdk/buildSrc/src/main/kotlin/Versions.kt +++ b/java-sdk/buildSrc/src/main/kotlin/Versions.kt @@ -1,5 +1,5 @@ object Versions { - const val project = "0.8.10-SNAPSHOT" + const val project = "0.8.10" const val kotlin = "1.9.10" const val java = 17 From 81f7282c7c70fa09e1de470cbf322b335af8b29d Mon Sep 17 00:00:00 2001 From: Bastiaan Date: Wed, 24 Jul 2024 12:45:30 +0200 Subject: [PATCH 2/9] Configure using github secret for snapshot publishing --- .github/workflows/publish_snapshots.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish_snapshots.yml b/.github/workflows/publish_snapshots.yml index ceebb9a0..4bfb6714 100644 --- a/.github/workflows/publish_snapshots.yml +++ b/.github/workflows/publish_snapshots.yml @@ -43,4 +43,4 @@ jobs: env: OSSRH_USER: ${{ secrets.OSSRH_USER }} OSSRH_PASSWORD: ${{ secrets.OSSRH_PASSWORD }} - run: ./gradlew -Psigning.gnupg.keyName=CBEF2CF0 -Psigning.gnupg.executable=gpg -Psigning.gnupg.passphrase=${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }} publish + run: ./gradlew -Psigning.gnupg.keyName=${{ secrets.OSSRH_GPG_SECRET_KEY_NAME }} -Psigning.gnupg.executable=gpg -Psigning.gnupg.passphrase=${{ secrets.OSSRH_GPG_SECRET_KEY_PASSWORD }} publish From 4ded363611356a6dd8d9359ffdb3a254931da6bc Mon Sep 17 00:00:00 2001 From: Yatharth Ranjan Date: Mon, 9 Sep 2024 13:32:44 +0100 Subject: [PATCH 3/9] bump version for release --- java-sdk/buildSrc/src/main/kotlin/Versions.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-sdk/buildSrc/src/main/kotlin/Versions.kt b/java-sdk/buildSrc/src/main/kotlin/Versions.kt index a46e36c5..f012c5c5 100644 --- a/java-sdk/buildSrc/src/main/kotlin/Versions.kt +++ b/java-sdk/buildSrc/src/main/kotlin/Versions.kt @@ -1,5 +1,5 @@ object Versions { - const val project = "0.8.10-SNAPSHOT" + const val project = "0.8.11" const val kotlin = "1.9.10" const val java = 17 From 08e1807a3ffbc724dadfd179bc98cb19543a042f Mon Sep 17 00:00:00 2001 From: pvannierop Date: Tue, 8 Oct 2024 09:12:19 +0200 Subject: [PATCH 4/9] Run Snyk on release branches --- .github/workflows/snyk.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/snyk.yaml b/.github/workflows/snyk.yaml index 97a9baa6..f705c8a5 100644 --- a/.github/workflows/snyk.yaml +++ b/.github/workflows/snyk.yaml @@ -3,6 +3,7 @@ on: pull_request: branches: - master + - release-* jobs: security: From d3e9af72712fc0bb6d0d1450a29ccc5e0dfef202 Mon Sep 17 00:00:00 2001 From: pvannierop Date: Tue, 8 Oct 2024 09:14:54 +0200 Subject: [PATCH 5/9] Up avro to 1.11.4 To fix software vulnerability. --- java-sdk/buildSrc/src/main/kotlin/Versions.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-sdk/buildSrc/src/main/kotlin/Versions.kt b/java-sdk/buildSrc/src/main/kotlin/Versions.kt index f012c5c5..34ac30c5 100644 --- a/java-sdk/buildSrc/src/main/kotlin/Versions.kt +++ b/java-sdk/buildSrc/src/main/kotlin/Versions.kt @@ -6,7 +6,7 @@ object Versions { const val avroGenerator = "1.9.1" const val radarCommons = "1.1.2" - const val avro = "1.11.3" + const val avro = "1.11.4" const val jackson = "2.16.1" const val argparse = "0.9.0" const val radarJersey = "0.11.1" From b4c96283d599312b365af7573bd3700e88e26fd7 Mon Sep 17 00:00:00 2001 From: Pim van Nierop Date: Tue, 8 Oct 2024 11:28:11 +0200 Subject: [PATCH 6/9] Update scheduled_snyk.yaml Try to fix CI error. --- .github/workflows/scheduled_snyk.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/scheduled_snyk.yaml b/.github/workflows/scheduled_snyk.yaml index 2aeb232a..bff414df 100644 --- a/.github/workflows/scheduled_snyk.yaml +++ b/.github/workflows/scheduled_snyk.yaml @@ -15,7 +15,7 @@ jobs: working-directory: java-sdk env: - REPORT_FILE: test.json + REPORT_FILE: /tmp/test.json steps: - uses: actions/checkout@v3 From 233ea1e054841adb81cbb45a41886a66a589e5cb Mon Sep 17 00:00:00 2001 From: pvannierop Date: Mon, 9 Dec 2024 08:24:34 +0100 Subject: [PATCH 7/9] Up gradle version to 8.9 --- java-sdk/gradle/wrapper/gradle-wrapper.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/java-sdk/gradle/wrapper/gradle-wrapper.properties b/java-sdk/gradle/wrapper/gradle-wrapper.properties index ac72c34e..09523c0e 100644 --- a/java-sdk/gradle/wrapper/gradle-wrapper.properties +++ b/java-sdk/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.9-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME From 2e4891b93544efa4ef7981161a9d42524e89fc5d Mon Sep 17 00:00:00 2001 From: pvannierop Date: Tue, 10 Dec 2024 07:39:06 +0100 Subject: [PATCH 8/9] Refactor gradle configuration Improve version management and use of convention plugins for shared build logic. --- Dockerfile | 1 + java-sdk/build.gradle.kts | 86 ++----------------- java-sdk/buildSrc/build.gradle.kts | 10 ++- java-sdk/buildSrc/settings.gradle.kts | 8 ++ java-sdk/buildSrc/src/main/kotlin/Versions.kt | 23 ----- .../main/kotlin/kotlin-convention.gradle.kts | 10 +++ .../kotlin/publishing-convention.gradle.kts | 18 ++++ java-sdk/gradle.properties | 2 + java-sdk/gradle/libs.versions.toml | 48 +++++++++++ java-sdk/radar-catalog-server/README.md | 9 ++ .../radar-catalog-server/build.gradle.kts | 13 ++- .../src/main/resources/log4j2.xml | 39 +++++++++ .../radar-schemas-commons/build.gradle.kts | 10 ++- java-sdk/radar-schemas-core/build.gradle.kts | 20 +++-- .../build.gradle.kts | 21 +++-- java-sdk/radar-schemas-tools/build.gradle.kts | 16 ++-- 16 files changed, 199 insertions(+), 135 deletions(-) create mode 100644 java-sdk/buildSrc/settings.gradle.kts delete mode 100644 java-sdk/buildSrc/src/main/kotlin/Versions.kt create mode 100644 java-sdk/buildSrc/src/main/kotlin/kotlin-convention.gradle.kts create mode 100644 java-sdk/buildSrc/src/main/kotlin/publishing-convention.gradle.kts create mode 100644 java-sdk/gradle/libs.versions.toml create mode 100644 java-sdk/radar-catalog-server/README.md create mode 100644 java-sdk/radar-catalog-server/src/main/resources/log4j2.xml diff --git a/Dockerfile b/Dockerfile index 09e4299f..38f81d40 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,6 +12,7 @@ COPY java-sdk/radar-schemas-core/build.gradle.kts /code/java-sdk/radar-schemas-c COPY java-sdk/radar-schemas-registration/build.gradle.kts /code/java-sdk/radar-schemas-registration/ COPY java-sdk/radar-schemas-tools/build.gradle.kts /code/java-sdk/radar-schemas-tools/ COPY java-sdk/radar-catalog-server/build.gradle.kts /code/java-sdk/radar-catalog-server/ +COPY java-sdk/gradle/libs.versions.toml /code/java-sdk/gradle/libs.versions.toml RUN gradle downloadDependencies copyDependencies startScripts COPY commons /code/commons diff --git a/java-sdk/build.gradle.kts b/java-sdk/build.gradle.kts index ac68d0ff..d397afcc 100644 --- a/java-sdk/build.gradle.kts +++ b/java-sdk/build.gradle.kts @@ -1,86 +1,10 @@ -import org.radarbase.gradle.plugin.radarKotlin -import org.radarbase.gradle.plugin.radarPublishing - plugins { - id("org.radarbase.radar-root-project") version Versions.radarCommons - id("org.radarbase.radar-dependency-management") version Versions.radarCommons - id("org.radarbase.radar-kotlin") version Versions.radarCommons apply false - id("org.radarbase.radar-publishing") version Versions.radarCommons apply false - id("com.github.davidmc24.gradle.plugin.avro-base") version Versions.avroGenerator apply false - kotlin("plugin.allopen") version Versions.kotlin apply false + id("org.radarbase.radar-root-project") + id("org.radarbase.radar-dependency-management") + id("org.radarbase.radar-kotlin") } radarRootProject { - projectVersion.set(Versions.project) - gradleVersion.set(Versions.gradle) -} - -// Configuration -val githubRepoName = "RADAR-base/RADAR-Schemas" -val githubUrl = "https://github.com/${githubRepoName}.git" -val githubIssueUrl = "https://github.com/$githubRepoName/issues" - -subprojects { - apply(plugin = "org.radarbase.radar-kotlin") - - repositories{ - mavenCentral() - gradlePluginPortal() - maven(url = "https://jitpack.io") - } - - radarKotlin { - javaVersion.set(Versions.java) - kotlinVersion.set(Versions.kotlin) - slf4jVersion.set(Versions.slf4j) - log4j2Version.set(Versions.log4j2) - junitVersion.set(Versions.junit) - } - - afterEvaluate { - configurations.all { - exclude(group = "org.slf4j", module = "slf4j-log4j12") - } - } -} - -// Configure applications -configure(listOf( - project(":radar-schemas-tools"), - project(":radar-catalog-server"), -)) { - apply(plugin = "application") -} - -// Configure libraries -configure(listOf( - project(":radar-schemas-commons"), - project(":radar-schemas-core"), - project(":radar-schemas-registration") -)) { - apply(plugin = "java-library") - apply(plugin = "org.radarbase.radar-kotlin") - apply(plugin = "org.radarbase.radar-publishing") - - radarKotlin { - javaVersion.set(Versions.java) - } - - radarPublishing { - githubUrl.set("https://github.com/$githubRepoName") - developers { - developer { - id.set("bdegraaf1234") - name.set("Bastiaan de Graaf") - email.set("bastiaan@thehyve.nl") - organization.set("The Hyve") - } - developer { - id.set("nivemaham") - name.set("Nivethika Mahasivam") - email.set("nivethika@thehyve.nl") - organization.set("The Hyve") - } - } - } + projectVersion.set(properties["projectVersion"] as String) + gradleVersion.set(libs.versions.gradle) } diff --git a/java-sdk/buildSrc/build.gradle.kts b/java-sdk/buildSrc/build.gradle.kts index 76639766..51d96551 100644 --- a/java-sdk/buildSrc/build.gradle.kts +++ b/java-sdk/buildSrc/build.gradle.kts @@ -2,13 +2,20 @@ import org.jetbrains.kotlin.gradle.dsl.JvmTarget import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { - kotlin("jvm") version "1.9.22" + `kotlin-dsl` // Need for 'convention plugins' } repositories { + gradlePluginPortal() mavenCentral() } +dependencies { + // Gradle plugins used in the convention plugin, are declared as dependencies here. + implementation(libs.gradle.radar.kotlin) + implementation(libs.gradle.radar.publishing) +} + tasks.withType { sourceCompatibility = "17" targetCompatibility = "17" @@ -19,3 +26,4 @@ tasks.withType { jvmTarget.set(JvmTarget.JVM_17) } } + diff --git a/java-sdk/buildSrc/settings.gradle.kts b/java-sdk/buildSrc/settings.gradle.kts new file mode 100644 index 00000000..62fa173f --- /dev/null +++ b/java-sdk/buildSrc/settings.gradle.kts @@ -0,0 +1,8 @@ +dependencyResolutionManagement { + // Allows to use the version catalog in the buildSrc module + versionCatalogs { + create("libs") { + from(files("../gradle/libs.versions.toml")) + } + } +} diff --git a/java-sdk/buildSrc/src/main/kotlin/Versions.kt b/java-sdk/buildSrc/src/main/kotlin/Versions.kt deleted file mode 100644 index 34ac30c5..00000000 --- a/java-sdk/buildSrc/src/main/kotlin/Versions.kt +++ /dev/null @@ -1,23 +0,0 @@ -object Versions { - const val project = "0.8.11" - - const val kotlin = "1.9.10" - const val java = 17 - const val avroGenerator = "1.9.1" - - const val radarCommons = "1.1.2" - const val avro = "1.11.4" - const val jackson = "2.16.1" - const val argparse = "0.9.0" - const val radarJersey = "0.11.1" - const val junit = "5.10.1" - const val confluent = "7.6.0" - const val kafka = "$confluent-ce" - const val okHttp = "4.12.0" - const val ktor = "2.3.4" - const val slf4j = "2.0.9" - const val jakartaValidation = "3.0.2" - const val log4j2 = "2.20.0" - - const val gradle = "8.3" -} diff --git a/java-sdk/buildSrc/src/main/kotlin/kotlin-convention.gradle.kts b/java-sdk/buildSrc/src/main/kotlin/kotlin-convention.gradle.kts new file mode 100644 index 00000000..a830da30 --- /dev/null +++ b/java-sdk/buildSrc/src/main/kotlin/kotlin-convention.gradle.kts @@ -0,0 +1,10 @@ +import org.radarbase.gradle.plugin.radarKotlin + +plugins { + id("org.radarbase.radar-kotlin") +} + +radarKotlin { + // TODO remove after using new release of radar-kotlin plugin + javaVersion.set(17) +} diff --git a/java-sdk/buildSrc/src/main/kotlin/publishing-convention.gradle.kts b/java-sdk/buildSrc/src/main/kotlin/publishing-convention.gradle.kts new file mode 100644 index 00000000..732eda08 --- /dev/null +++ b/java-sdk/buildSrc/src/main/kotlin/publishing-convention.gradle.kts @@ -0,0 +1,18 @@ +plugins { + id("kotlin-convention") + id("org.radarbase.radar-publishing") +} + +radarPublishing { + val githubRepoName = "RADAR-base/RADAR-Schemas" + githubUrl.set("https://github.com/$githubRepoName.git") + + developers { + developer { + id.set("pvannierop") + name.set("Pim van Nierop") + email.set("pim@thehyve.nl") + organization.set("The Hyve") + } + } +} diff --git a/java-sdk/gradle.properties b/java-sdk/gradle.properties index 66929e69..7a24ca6b 100644 --- a/java-sdk/gradle.properties +++ b/java-sdk/gradle.properties @@ -1 +1,3 @@ +projectVersion=0.8.11 + org.gradle.jvmargs=-XX:MaxMetaspaceSize=512m diff --git a/java-sdk/gradle/libs.versions.toml b/java-sdk/gradle/libs.versions.toml new file mode 100644 index 00000000..536ffcf4 --- /dev/null +++ b/java-sdk/gradle/libs.versions.toml @@ -0,0 +1,48 @@ +[versions] +# Platform +gradle = "8.9" +kotlin = "1.9.23" + +argparse4j = "0.9.0" +avro = "1.11.4" +avroGenerator = "1.9.1" +confluent = "7.6.0" # Keep in sync with 'kafka' version. +jackson = "2.16.1" +jakartaValidation = "3.0.2" +junit = "5.9.3" +kafka = "7.6.0-ce" # Keep in sync with 'confluent' version. +ktor = "2.3.4" +log4j2="2.20.0" +okHttp = "4.12.0" +radarCommons = "1.1.3" +radarJersey = "0.11.1" + +[libraries] +# For buildSrc project +gradle-radar-kotlin = { group = "org.radarbase.radar-kotlin", name = "org.radarbase.radar-kotlin.gradle.plugin", version.ref = "radarCommons" } +gradle-radar-publishing = { group = "org.radarbase.radar-publishing", name = "org.radarbase.radar-publishing.gradle.plugin", version.ref = "radarCommons" } + +argparse4j = { group = "net.sourceforge.argparse4j", name = "argparse4j", version.ref = "argparse4j" } +avro = { group = "org.apache.avro", name = "avro", version.ref = "avro" } +connect-json = { group = "org.apache.kafka", name = "connect-json", version.ref = "kafka" } +jackson-bom = { group = "com.fasterxml.jackson", name = "jackson-bom", version.ref = "jackson" } +jackson-core = { group = "com.fasterxml.jackson.core", name = "jackson-core", version.ref = "jackson" } +jackson-databind = { group = "com.fasterxml.jackson.core", name = "jackson-databind", version.ref = "jackson" } +jakarta-validation-api = { group = "jakarta.validation", name = "jakarta.validation-api", version.ref = "jakartaValidation" } +kafka-connect-api = { group = "org.apache.kafka", name = "connect-api", version.ref = "kafka" } +kafka-connect-avro-converter = { group = "io.confluent", name = "kafka-connect-avro-converter", version.ref = "confluent" } +kafka-connect-avro-data = { group = "io.confluent", name = "kafka-connect-avro-data", version.ref = "confluent" } +kafka-schema-registry-client = { group = "io.confluent", name = "kafka-schema-registry-client", version.ref = "confluent" } +ktor-client-auth = { group = "io.ktor", name = "ktor-client-auth", version.ref = "ktor" } +log4j2-core = { group = "org.apache.logging.log4j", name = "log4j-core", version.ref = "log4j2" } +mockwebserver = { group = "com.squareup.okhttp3", name = "mockwebserver", version.ref = "okHttp" } +okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okHttp" } +radar-commons = { group = "org.radarbase", name = "radar-commons", version.ref = "radarCommons" } +radar-commons-kotlin = { group = "org.radarbase", name = "radar-commons-kotlin", version.ref = "radarCommons" } +radar-commons-server = { group = "org.radarbase", name = "radar-commons-server", version.ref = "radarCommons" } +radar-jersey = { group = "org.radarbase", name = "radar-jersey", version.ref = "radarJersey" } + +[plugins] +kotlin-serialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } +davidmc24-avro-base = { id = "com.github.davidmc24.gradle.plugin.avro-base", version.ref = "avroGenerator" } +kotlin-allopen = { id = "org.jetbrains.kotlin.plugin.allopen", version.ref = "kotlin" } diff --git a/java-sdk/radar-catalog-server/README.md b/java-sdk/radar-catalog-server/README.md new file mode 100644 index 00000000..f7bc819c --- /dev/null +++ b/java-sdk/radar-catalog-server/README.md @@ -0,0 +1,9 @@ +# RADAR Catalog Server + +## Sentry monitoring + +To enable Sentry monitoring: + +1. Set a `SENTRY_DSN` environment variable that points to the desired Sentry DSN. +2. (Optional) Set the `SENTRY_LOG_LEVEL` environment variable to control the minimum log level of events sent to Sentry. + The default log level for Sentry is `WARN`. Possible values are `TRACE`, `DEBUG`, `INFO`, `WARN`, and `ERROR`. diff --git a/java-sdk/radar-catalog-server/build.gradle.kts b/java-sdk/radar-catalog-server/build.gradle.kts index 58d827a1..43610673 100644 --- a/java-sdk/radar-catalog-server/build.gradle.kts +++ b/java-sdk/radar-catalog-server/build.gradle.kts @@ -1,11 +1,18 @@ +import org.radarbase.gradle.plugin.radarKotlin + +plugins { + application + id("kotlin-convention") +} + description = "RADAR Schemas specification and validation tools." dependencies { - implementation("org.radarbase:radar-jersey:${Versions.radarJersey}") + implementation(libs.radar.jersey) implementation(project(":radar-schemas-core")) - implementation("org.radarbase:radar-commons-kotlin:${Versions.radarCommons}") + implementation(libs.radar.commons.kotlin) - implementation("net.sourceforge.argparse4j:argparse4j:${Versions.argparse}") + implementation(libs.argparse4j) testImplementation("io.ktor:ktor-client-content-negotiation") testImplementation("io.ktor:ktor-serialization-kotlinx-json") diff --git a/java-sdk/radar-catalog-server/src/main/resources/log4j2.xml b/java-sdk/radar-catalog-server/src/main/resources/log4j2.xml new file mode 100644 index 00000000..66bc4fcd --- /dev/null +++ b/java-sdk/radar-catalog-server/src/main/resources/log4j2.xml @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/java-sdk/radar-schemas-commons/build.gradle.kts b/java-sdk/radar-schemas-commons/build.gradle.kts index e6525342..076a385f 100644 --- a/java-sdk/radar-schemas-commons/build.gradle.kts +++ b/java-sdk/radar-schemas-commons/build.gradle.kts @@ -1,7 +1,9 @@ import com.github.davidmc24.gradle.plugin.avro.GenerateAvroJavaTask plugins { - id("com.github.davidmc24.gradle.plugin.avro-base") + id("java-library") + id("publishing-convention") + alias(libs.plugins.davidmc24.avro.base) } description = "RADAR Schemas Commons SDK" @@ -25,14 +27,14 @@ sourceSets { } dependencies { - api("org.apache.avro:avro:${Versions.avro}") { - api("com.fasterxml.jackson.core:jackson-core:${Versions.jackson}") - api("com.fasterxml.jackson.core:jackson-databind:${Versions.jackson}") + api(libs.avro) { exclude(group = "org.xerial.snappy", module = "snappy-java") exclude(group = "com.thoughtworks.paranamer", module = "paranamer") exclude(group = "org.apache.commons", module = "commons-compress") exclude(group = "org.tukaani", module = "xz") } + api(libs.jackson.core) + api(libs.jackson.databind) } // ---------------------------------------------------------------------------// diff --git a/java-sdk/radar-schemas-core/build.gradle.kts b/java-sdk/radar-schemas-core/build.gradle.kts index 36d6c450..e789fe95 100644 --- a/java-sdk/radar-schemas-core/build.gradle.kts +++ b/java-sdk/radar-schemas-core/build.gradle.kts @@ -1,26 +1,28 @@ plugins { - kotlin("plugin.allopen") + id("java-library") + id("publishing-convention") + alias(libs.plugins.kotlin.allopen) } description = "RADAR Schemas core specification and validation tools." dependencies { - api("org.apache.avro:avro:${Versions.avro}") { + api(libs.avro) { exclude(group = "org.xerial.snappy", module = "snappy-java") exclude(group = "com.thoughtworks.paranamer", module = "paranamer") exclude(group = "org.apache.commons", module = "commons-compress") exclude(group = "org.tukaani", module = "xz") } - api("jakarta.validation:jakarta.validation-api:${Versions.jakartaValidation}") + api(libs.jakarta.validation.api) api(project(":radar-schemas-commons")) - implementation("org.radarbase:radar-commons-kotlin:${Versions.radarCommons}") + implementation(libs.radar.commons.kotlin) - api(platform("com.fasterxml.jackson:jackson-bom:${Versions.jackson}")) + api(platform(libs.jackson.bom)) api("com.fasterxml.jackson.core:jackson-databind") implementation("com.fasterxml.jackson.module:jackson-module-kotlin") implementation("com.fasterxml.jackson.dataformat:jackson-dataformat-yaml") - implementation("io.confluent:kafka-connect-avro-data:${Versions.confluent}") { + implementation(libs.kafka.connect.avro.data) { exclude(group = "org.glassfish.jersey.core", module = "jersey-common") exclude(group = "jakarta.ws.rs", module = "jakarta.ws.rs-api") exclude(group = "io.swagger", module = "swagger-annotations") @@ -28,13 +30,13 @@ dependencies { exclude(group = "io.confluent", module = "kafka-schema-serializer") } - implementation("org.apache.kafka:connect-api:${Versions.kafka}") { + implementation(libs.kafka.connect.api) { exclude(group = "org.apache.kafka", module = "kafka-clients") exclude(group = "javax.ws.rs", module = "javax.ws.rs-api") } - api("com.squareup.okhttp3:okhttp:${Versions.okHttp}") - api("org.radarbase:radar-commons-server:${Versions.radarCommons}") + api(libs.okhttp) + api(libs.radar.commons.server) } allOpen { diff --git a/java-sdk/radar-schemas-registration/build.gradle.kts b/java-sdk/radar-schemas-registration/build.gradle.kts index 146785eb..adc9e4b8 100644 --- a/java-sdk/radar-schemas-registration/build.gradle.kts +++ b/java-sdk/radar-schemas-registration/build.gradle.kts @@ -1,17 +1,22 @@ +plugins { + id("java-library") + id("publishing-convention") +} + description = "RADAR Schemas specification and validation tools" dependencies { api(project(":radar-schemas-commons")) api(project(":radar-schemas-core")) - implementation("org.radarbase:radar-commons:${Versions.radarCommons}") - api("org.radarbase:radar-commons-server:${Versions.radarCommons}") - implementation("org.radarbase:radar-commons-kotlin:${Versions.radarCommons}") + implementation(libs.radar.commons) + api(libs.radar.commons.server) + implementation(libs.radar.commons.kotlin) - implementation("io.confluent:kafka-connect-avro-converter:${Versions.confluent}") - implementation("io.confluent:kafka-schema-registry-client:${Versions.confluent}") + implementation(libs.kafka.connect.avro.converter) + implementation(libs.kafka.schema.registry.client) - implementation("org.apache.kafka:connect-json:${Versions.kafka}") - implementation("io.ktor:ktor-client-auth:${Versions.ktor}") - testImplementation("com.squareup.okhttp3:mockwebserver:${Versions.okHttp}") + implementation(libs.connect.json) + implementation(libs.ktor.client.auth) + testImplementation(libs.mockwebserver) } diff --git a/java-sdk/radar-schemas-tools/build.gradle.kts b/java-sdk/radar-schemas-tools/build.gradle.kts index 03904060..458a2191 100644 --- a/java-sdk/radar-schemas-tools/build.gradle.kts +++ b/java-sdk/radar-schemas-tools/build.gradle.kts @@ -1,15 +1,19 @@ +plugins { + application + id("kotlin-convention") + id("org.radarbase.radar-kotlin") +} + description = "RADAR Schemas specification and validation tools." dependencies { implementation(project(":radar-schemas-registration")) - implementation(platform("com.fasterxml.jackson:jackson-bom:${Versions.jackson}")) + implementation(platform(libs.jackson.bom)) implementation("com.fasterxml.jackson.dataformat:jackson-dataformat-yaml") - implementation("org.radarbase:radar-commons-kotlin:${Versions.radarCommons}") - - implementation("org.apache.logging.log4j:log4j-core:${Versions.log4j2}") - - implementation("net.sourceforge.argparse4j:argparse4j:${Versions.argparse}") + implementation(libs.radar.commons.kotlin) + implementation(libs.log4j2.core) + implementation(libs.argparse4j) } application { From 2c4947d3b143f994ad436a52184619a9775a8655 Mon Sep 17 00:00:00 2001 From: pvannierop Date: Tue, 10 Dec 2024 07:40:08 +0100 Subject: [PATCH 9/9] Add support for Sentry monitoring Includes addition to documentation. --- java-sdk/radar-catalog-server/build.gradle.kts | 4 ++++ java-sdk/radar-schemas-tools/build.gradle.kts | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/java-sdk/radar-catalog-server/build.gradle.kts b/java-sdk/radar-catalog-server/build.gradle.kts index 43610673..70ce97cd 100644 --- a/java-sdk/radar-catalog-server/build.gradle.kts +++ b/java-sdk/radar-catalog-server/build.gradle.kts @@ -21,3 +21,7 @@ dependencies { application { mainClass.set("org.radarbase.schema.service.SourceCatalogueServer") } + +radarKotlin { + sentryEnabled.set(true) +} diff --git a/java-sdk/radar-schemas-tools/build.gradle.kts b/java-sdk/radar-schemas-tools/build.gradle.kts index 458a2191..30f414fd 100644 --- a/java-sdk/radar-schemas-tools/build.gradle.kts +++ b/java-sdk/radar-schemas-tools/build.gradle.kts @@ -19,3 +19,7 @@ dependencies { application { mainClass.set("org.radarbase.schema.tools.CommandLineApp") } + +radarKotlin { + sentryEnabled.set(true) +}