This is an automated email from the ASF dual-hosted git repository.
bernardobotella pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra-analytics.git
The following commit(s) were added to refs/heads/trunk by this push:
new 34a0bf14 CASSANALYTICS-76: Add missing artifacts to build (#130)
34a0bf14 is described below
commit 34a0bf145f2e22a0b9e4aa761b1d8462453af0f4
Author: Bernardo Botella <[email protected]>
AuthorDate: Wed Jul 16 14:23:33 2025 -0700
CASSANALYTICS-76: Add missing artifacts to build (#130)
Patch by Bernardo Botella; reviewed by Doug Rohrer for CASSANALYTICS-76
---
CHANGES.txt | 2 +-
analytics-sidecar-client-common/build.gradle | 5 ++
analytics-sidecar-client/build.gradle | 5 ++
analytics-sidecar-vertx-client-shaded/build.gradle | 75 +++++++++++-----------
analytics-sidecar-vertx-client/build.gradle | 5 ++
build.gradle | 5 +-
cassandra-analytics-cdc-codec/build.gradle | 5 +-
cassandra-analytics-cdc-sidecar/build.gradle | 5 +-
cassandra-analytics-cdc/build.gradle | 5 +-
cassandra-analytics-common/build.gradle | 5 +-
cassandra-analytics-core/build.gradle | 5 +-
.../build.gradle | 12 +---
cassandra-analytics-integration-tests/build.gradle | 12 +---
cassandra-analytics-sidecar-client/build.gradle | 12 +---
cassandra-analytics-spark-converter/build.gradle | 5 +-
cassandra-avro-converter/build.gradle | 12 +---
cassandra-bridge/build.gradle | 5 +-
...blishing.gradle => publishing-non-spark.gradle} | 0
gradle/common/publishing-spark.gradle | 25 ++++++++
gradle/common/publishing.gradle | 74 ++-------------------
20 files changed, 125 insertions(+), 154 deletions(-)
diff --git a/CHANGES.txt b/CHANGES.txt
index b673d855..3ee2e8e9 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,4 @@
-1.0.0
+0.1.0
* Simplify SidecarTableSizeProvider (CASSANALYTICS-73)
* Use full ring instead of only IPs from configuration (CASSANALYTICS-20)
* Bulk Reader should dynamically size the Spark job based on estimated table
size (CASSANALYTICS-36)
diff --git a/analytics-sidecar-client-common/build.gradle
b/analytics-sidecar-client-common/build.gradle
index 7a8d4e78..e742f65c 100644
--- a/analytics-sidecar-client-common/build.gradle
+++ b/analytics-sidecar-client-common/build.gradle
@@ -27,6 +27,11 @@ plugins {
id 'maven-publish'
}
+if (propertyWithDefault("artifactType", null) == "common")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
+
sourceCompatibility = 1.8
test {
diff --git a/analytics-sidecar-client/build.gradle
b/analytics-sidecar-client/build.gradle
index d584b2cb..202c592d 100644
--- a/analytics-sidecar-client/build.gradle
+++ b/analytics-sidecar-client/build.gradle
@@ -29,6 +29,11 @@ plugins {
id('maven-publish')
}
+if (propertyWithDefault("artifactType", null) == "common")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
+
sourceCompatibility = 1.8
test {
diff --git a/analytics-sidecar-vertx-client-shaded/build.gradle
b/analytics-sidecar-vertx-client-shaded/build.gradle
index b7d8f4f5..064740f4 100644
--- a/analytics-sidecar-vertx-client-shaded/build.gradle
+++ b/analytics-sidecar-vertx-client-shaded/build.gradle
@@ -104,57 +104,56 @@ ext {
// present on the general gradle.build file to avoid having
// analytics-sidecar-vertx-client-shaded_* as the artifact name
archivesBaseName = "analytics-sidecar-vertx-client-all"
-if ("${project.rootProject.ext.sparkLabel}" == '3') {
- archivesBaseName = "${archivesBaseName}_spark3"
-}
-archivesBaseName = "${archivesBaseName}_${scalaMajorVersion}"
-
-publishing {
- publications {
- shadow(MavenPublication) { publication ->
- project.shadow.component(publication)
- groupId rootProject.group
- artifactId "${archivesBaseName}"
- version System.getenv("CODE_VERSION") ?: "${project.version}"
-
- if (mavenRepositoryUrl != "") {
- pom {
- url = "https://cassandra.apache.org/"
- licenses {
- license {
- name = "The Apache License, Version 2.0"
- url =
"https://www.apache.org/licenses/LICENSE-2.0.txt"
- distribution = "repo"
+
+if (propertyWithDefault("artifactType", null) == "common")
+{
+ publishing {
+ publications {
+ shadow(MavenPublication) { publication ->
+ project.shadow.component(publication)
+ groupId rootProject.group
+ artifactId "${archivesBaseName}"
+ version System.getenv("CODE_VERSION") ?: "${project.version}"
+
+ if (mavenRepositoryUrl != "") {
+ pom {
+ url = "https://cassandra.apache.org/"
+ licenses {
+ license {
+ name = "The Apache License, Version 2.0"
+ url =
"https://www.apache.org/licenses/LICENSE-2.0.txt"
+ distribution = "repo"
+ }
}
}
}
}
}
- }
- if (mavenRepositoryUrl != "") {
- repositories {
- maven {
- url = mavenRepositoryUrl
- if (mavenUsername != "" && mavenPassword != "") {
- credentials {
- username = mavenUsername
- password = mavenPassword
+ if (mavenRepositoryUrl != "") {
+ repositories {
+ maven {
+ url = mavenRepositoryUrl
+ if (mavenUsername != "" && mavenPassword != "") {
+ credentials {
+ username = mavenUsername
+ password = mavenPassword
+ }
}
}
}
}
}
-}
-signing {
- required { shouldSign }
- if (shouldSign) {
- // Use gpg-agent to sign
- useGpgCmd()
- }
+ signing {
+ required { shouldSign }
+ if (shouldSign) {
+ // Use gpg-agent to sign
+ useGpgCmd()
+ }
- sign publishing.publications
+ sign publishing.publications
+ }
}
/**
diff --git a/analytics-sidecar-vertx-client/build.gradle
b/analytics-sidecar-vertx-client/build.gradle
index 701c18fa..f04aa732 100644
--- a/analytics-sidecar-vertx-client/build.gradle
+++ b/analytics-sidecar-vertx-client/build.gradle
@@ -27,6 +27,11 @@ plugins {
sourceCompatibility = 1.8
+if (propertyWithDefault("artifactType", null) == "common")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
+
test {
useJUnitPlatform()
maxParallelForks = Runtime.runtime.availableProcessors().intdiv(2) ?: 1
diff --git a/build.gradle b/build.gradle
index 730b4d0d..3f15dc3a 100644
--- a/build.gradle
+++ b/build.gradle
@@ -61,6 +61,7 @@ def ratExcludeFilePath = buildDir.resolve(".rat-excludes.txt")
System.out.println("Rat exclude file:" + ratExcludeFilePath)
def profile =
"profiles/scala-${ext.scalaLabel}-spark-${ext.sparkLabel}-jdk-${ext.jdkLabel}.gradle"
+
if (!file(profile).exists()) {
throw new InvalidUserDataException("Profile ${profile} does not exist, which
indicates this combination of Scala, Spark, and Java is unsupported.\n" +
"Please either add an appropriate profile if this combination should
work, or use a different one.")
@@ -181,10 +182,6 @@ subprojects {
}
archivesBaseName = "${project.name}"
- if ("${project.rootProject.ext.sparkLabel}" == '3') {
- archivesBaseName = "${archivesBaseName}_spark3"
- }
- archivesBaseName = "${archivesBaseName}_${scalaMajorVersion}"
repositories {
mavenCentral()
diff --git a/cassandra-analytics-cdc-codec/build.gradle
b/cassandra-analytics-cdc-codec/build.gradle
index 7fc395df..4b74834d 100644
--- a/cassandra-analytics-cdc-codec/build.gradle
+++ b/cassandra-analytics-cdc-codec/build.gradle
@@ -24,7 +24,10 @@ plugins {
id('maven-publish')
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
dependencies {
api(project(':cassandra-bridge'))
diff --git a/cassandra-analytics-cdc-sidecar/build.gradle
b/cassandra-analytics-cdc-sidecar/build.gradle
index dfe51c29..1165b8a6 100644
--- a/cassandra-analytics-cdc-sidecar/build.gradle
+++ b/cassandra-analytics-cdc-sidecar/build.gradle
@@ -24,7 +24,10 @@ plugins {
id('maven-publish')
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
configurations {
all*.exclude(group: 'org.slf4j', module: 'slf4j-log4j12')
diff --git a/cassandra-analytics-cdc/build.gradle
b/cassandra-analytics-cdc/build.gradle
index 2ca875dc..91c1ecd9 100644
--- a/cassandra-analytics-cdc/build.gradle
+++ b/cassandra-analytics-cdc/build.gradle
@@ -24,7 +24,10 @@ plugins {
id('maven-publish')
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
configurations {
all*.exclude(group: 'org.slf4j', module: 'slf4j-log4j12')
diff --git a/cassandra-analytics-common/build.gradle
b/cassandra-analytics-common/build.gradle
index 13320396..61ddc120 100644
--- a/cassandra-analytics-common/build.gradle
+++ b/cassandra-analytics-common/build.gradle
@@ -24,7 +24,10 @@ plugins {
id('maven-publish')
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
dependencies {
implementation("org.slf4j:slf4j-api:${slf4jApiVersion}")
diff --git a/cassandra-analytics-core/build.gradle
b/cassandra-analytics-core/build.gradle
index 7bbb09be..537f1cb9 100644
--- a/cassandra-analytics-core/build.gradle
+++ b/cassandra-analytics-core/build.gradle
@@ -25,7 +25,10 @@ plugins {
id('maven-publish')
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
java {
withJavadocJar()
diff --git a/cassandra-analytics-integration-framework/build.gradle
b/cassandra-analytics-integration-framework/build.gradle
index bd29baba..fea8be25 100644
--- a/cassandra-analytics-integration-framework/build.gradle
+++ b/cassandra-analytics-integration-framework/build.gradle
@@ -27,15 +27,9 @@ java {
withSourcesJar()
}
-publishing {
- publications {
- maven(MavenPublication) {
- from components.java
- groupId project.group
- artifactId "${archivesBaseName}"
- version System.getenv("CODE_VERSION") ?: "${version}"
- }
- }
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
}
ext.dtestJar = System.getenv("DTEST_JAR") ?: "dtest-4.1.4.jar" // latest
supported Cassandra build is 4.1
diff --git a/cassandra-analytics-integration-tests/build.gradle
b/cassandra-analytics-integration-tests/build.gradle
index 7d5c529a..73157fe9 100644
--- a/cassandra-analytics-integration-tests/build.gradle
+++ b/cassandra-analytics-integration-tests/build.gradle
@@ -27,15 +27,9 @@ plugins {
id('maven-publish')
}
-publishing {
- publications {
- maven(MavenPublication) {
- from components.java
- groupId project.group
- artifactId "${archivesBaseName}"
- version System.getenv("CODE_VERSION") ?: "${version}"
- }
- }
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
}
def integrationMaxHeapSize = System.getenv("INTEGRATION_MAX_HEAP_SIZE") ?:
"3000M"
diff --git a/cassandra-analytics-sidecar-client/build.gradle
b/cassandra-analytics-sidecar-client/build.gradle
index c037ad9a..a0b28d43 100644
--- a/cassandra-analytics-sidecar-client/build.gradle
+++ b/cassandra-analytics-sidecar-client/build.gradle
@@ -29,15 +29,9 @@ configurations {
all*.exclude(group: 'log4j', module: 'log4j')
}
-publishing {
- publications {
- maven(MavenPublication) {
- from components.java
- groupId project.group
- artifactId "${archivesBaseName}"
- version System.getenv("CODE_VERSION") ?: "${version}"
- }
- }
+if (propertyWithDefault("artifactType", null) == "common")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
}
configurations {
diff --git a/cassandra-analytics-spark-converter/build.gradle
b/cassandra-analytics-spark-converter/build.gradle
index 73c2290f..1dd98a22 100644
--- a/cassandra-analytics-spark-converter/build.gradle
+++ b/cassandra-analytics-spark-converter/build.gradle
@@ -22,7 +22,10 @@ plugins {
id('maven-publish')
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
configurations {
all*.exclude(group: 'org.slf4j', module: 'slf4j-log4j12')
diff --git a/cassandra-avro-converter/build.gradle
b/cassandra-avro-converter/build.gradle
index 3943c228..da6113ac 100644
--- a/cassandra-avro-converter/build.gradle
+++ b/cassandra-avro-converter/build.gradle
@@ -27,15 +27,9 @@ configurations {
all*.exclude(group: 'log4j', module: 'log4j')
}
-publishing {
- publications {
- maven(MavenPublication) {
- from components.java
- groupId project.group
- artifactId "${archivesBaseName}"
- version System.getenv("CODE_VERSION") ?: "${version}"
- }
- }
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
}
dependencies {
diff --git a/cassandra-bridge/build.gradle b/cassandra-bridge/build.gradle
index 7b3895f9..a61064cc 100644
--- a/cassandra-bridge/build.gradle
+++ b/cassandra-bridge/build.gradle
@@ -26,7 +26,10 @@ plugins {
id 'maven-publish'
}
-apply from: "$rootDir/gradle/common/publishing.gradle"
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing.gradle"
+}
java {
withJavadocJar()
diff --git a/gradle/common/publishing.gradle
b/gradle/common/publishing-non-spark.gradle
similarity index 100%
copy from gradle/common/publishing.gradle
copy to gradle/common/publishing-non-spark.gradle
diff --git a/gradle/common/publishing-spark.gradle
b/gradle/common/publishing-spark.gradle
new file mode 100644
index 00000000..03f717f3
--- /dev/null
+++ b/gradle/common/publishing-spark.gradle
@@ -0,0 +1,25 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+
+if ("${project.rootProject.ext.sparkLabel}" == '3') {
+ archivesBaseName = "${archivesBaseName}_spark3"
+}
+archivesBaseName = "${archivesBaseName}_${scalaMajorVersion}"
+
+apply from: "$rootDir/gradle/common/publishing-non-spark.gradle"
diff --git a/gradle/common/publishing.gradle b/gradle/common/publishing.gradle
index b37ddcbd..b9a07963 100644
--- a/gradle/common/publishing.gradle
+++ b/gradle/common/publishing.gradle
@@ -16,73 +16,11 @@
* limitations under the License.
*/
-apply plugin: 'maven-publish'
-apply plugin: 'signing'
-
-ext {
- mavenRepositoryUrl = propertyWithDefault("maven.repository.url", "")
- // These properties can be set in ~/.gradle/gradle.properties file,
- // though it would be open text. They can also be set on the cli via
- // -Pmaven.username and -Pmaven.password
- mavenUsername = propertyWithDefault("maven.username", "")
- mavenPassword = propertyWithDefault("maven.password", "")
-}
-
-java {
- withJavadocJar()
- withSourcesJar()
+if (propertyWithDefault("artifactType", null) == "spark")
+{
+ apply from: "$rootDir/gradle/common/publishing-spark.gradle"
}
-
-publishing {
- publications {
- maven(MavenPublication) {
- from components.java
- groupId rootProject.group
- artifactId "${archivesBaseName}"
- version System.getenv("CODE_VERSION") ?: "${project.version}"
-
- if (mavenRepositoryUrl != "") {
- pom {
- url = "https://cassandra.apache.org/"
- licenses {
- license {
- name = "The Apache License, Version 2.0"
- url =
"https://www.apache.org/licenses/LICENSE-2.0.txt"
- distribution = "repo"
- }
- }
- }
- }
- }
- }
-
- if (mavenRepositoryUrl != "") {
- repositories {
- maven {
- url = mavenRepositoryUrl
- if (mavenUsername != "" && mavenPassword != "") {
- credentials {
- username = mavenUsername
- password = mavenPassword
- }
- }
- }
- }
- }
-}
-
-signing {
- required { shouldSign }
- if (shouldSign) {
- // Use gpg-agent to sign
- useGpgCmd()
- }
-
- sign publishing.publications
-}
-
-javadoc {
- if (JavaVersion.current().isJava9Compatible()) {
- options.addBooleanOption('html5', true)
- }
+else
+{
+ apply from: "$rootDir/gradle/common/publishing-non-spark.gradle"
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]