Skip to content

Commit 9585e87

Browse files
authored
[SW-2505] Scala Scoring Package (#2428)
* [SW-2505] Scala Scoring Package * Remove extra lines * Rename package-scoring to scoring-package
1 parent 142f4c1 commit 9585e87

File tree

6 files changed

+55
-2
lines changed

6 files changed

+55
-2
lines changed

README.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,9 @@ Each Sparkling Water release is published into Maven central with following coor
4343
- ``ai.h2o:sparkling-water-examples_{{scala_version}}:{{version}}`` - Includes example applications
4444
- ``ai.h2o:sparkling-water-repl_{{scala_version}}:{{version}}`` - Spark REPL integration into H2O Flow UI
4545
- ``ai.h2o:sparkling-water-ml_{{scala_version}}:{{version}}`` - Extends Spark ML package by H2O-based transformations
46-
- ``ai.h2o:sparkling-water-scoring_{{scala_version}}:{{version}}`` - Lightweight package used for Scoring with H2O MOJOs. This package does not have run-time dependency on H2O cluster.
47-
- ``ai.h2o:sparkling-water-package_{{scala_version}}:{{version}}`` - Uber Sparkling Water package containing all dependencies. This is designed to use as Spark package via ``--packages`` option
46+
- ``ai.h2o:sparkling-water-scoring_{{scala_version}}:{{version}}`` - A library containing scoring logic and definition of Sparkling Water MOJO models.
47+
- ``ai.h2o:sparkling-water-scoring-package_{{scala_version}}:{{version}}`` - Lightweight Sparkling Water package including all dependencies required just for scoring with H2O-3 and DAI MOJO models.
48+
- ``ai.h2o:sparkling-water-package_{{scala_version}}:{{version}}`` - Sparkling Water package containing all dependencies required for model training and scoring. This is designed to use as Spark package via ``--packages`` option.
4849

4950
**Note:** The ``{{version}}`` references to a release version of Sparkling Water, the ``{{scala_version}}``
5051
references to Scala base version.

assembly-scoring/build.gradle

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
apply plugin: 'java'
2+
apply plugin: 'com.github.johnrengelman.shadow'
3+
apply plugin: 'java-library'
4+
5+
description = "Sparkling Water Scoring Assembly"
6+
7+
dependencies {
8+
implementation(project(":sparkling-water-scoring")) {
9+
exclude group: "org.xerial.snappy", module: "snappy-java"
10+
}
11+
}
12+
13+
jar {
14+
enabled = false // we do not need to generate jar file in this case
15+
}
16+
17+
shadowJar {
18+
mergeServiceFiles()
19+
archiveBaseName = "${archiveBaseName.get()}_${scalaBaseVersion}"
20+
}
21+
22+
artifacts {
23+
api shadowJar
24+
}
25+
26+
task cleanBuildDir(type: Delete) {
27+
delete getBuildDir()
28+
}

build.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ ext {
4141
project(':sparkling-water-examples'),
4242
project(':sparkling-water-ml'),
4343
project(':sparkling-water-package'),
44+
project(':sparkling-water-scoring-package'),
4445
project(":sparkling-water-doc"),
4546
project(':sparkling-water-utils'),
4647
project(':sparkling-water-scoring'),
@@ -64,6 +65,7 @@ ext {
6465
project(':sparkling-water-examples'),
6566
project(':sparkling-water-ml'),
6667
project(':sparkling-water-package'),
68+
project(':sparkling-water-scoring-package'),
6769
project(':sparkling-water-benchmarks'),
6870
project(':sparkling-water-macros'),
6971
project(':sparkling-water-utils'),

dist/build.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,7 @@ def distTaskDependencies = [
120120
":sparkling-water-doc:site",
121121
":sparkling-water-r:distR",
122122
":sparkling-water-assembly:shadowJar",
123+
":sparkling-water-assembly-scoring:shadowJar",
123124
":sparkling-water-assembly-extensions:shadowJar",
124125
":sparkling-water-templates:build",
125126
":sparkling-water-py:distPython",
@@ -130,6 +131,7 @@ def distTaskDependencies = [
130131
":sparkling-water-ml:publish",
131132
":sparkling-water-examples:publish",
132133
":sparkling-water-package:publish",
134+
":sparkling-water-scoring-package:publish",
133135
":sparkling-water-scoring:publish",
134136
":sparkling-water-extensions:publish",
135137
":sparkling-water-utils:publish",
@@ -166,6 +168,7 @@ task copyFilesForZipDistribution {
166168

167169
copySingle("r/build/", "rsparkling_${version}.tar.gz", "$zipDir")
168170
copySingle("assembly-extensions/build/libs/", "sparkling-water-assembly-extensions_$scalaBaseVersion-${version}-all.jar", "$zipDir/jars")
171+
copySingle("assembly-scoring/build/libs/", "sparkling-water-assembly-scoring_$scalaBaseVersion-${version}-all.jar", "$zipDir/jars")
169172
copySingle("assembly/build/libs/", "sparkling-water-assembly_$scalaBaseVersion-${version}-all.jar", "$zipDir/jars")
170173

171174
createSupportedHadoopFile("$zipDir")

scoring-package/build.gradle

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
description = 'Sparkling Water Spark Package'
2+
3+
apply plugin: 'com.github.johnrengelman.shadow'
4+
5+
dependencies {
6+
api(project(path: ':sparkling-water-assembly-scoring', configuration: 'shadow'))
7+
}
8+
9+
jar {
10+
enabled = false
11+
}
12+
13+
shadowJar {
14+
archiveClassifier = null
15+
}
16+
17+
defineShadowPublication().call()

settings.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@ include 'core'
55
include 'examples'
66
include 'ml'
77
include 'assembly'
8+
include 'assembly-scoring'
89
include 'assembly-extensions'
910
include 'py'
1011
include 'r'
1112
include 'r-cran'
1213
include 'repl'
1314
include 'package'
15+
include 'scoring-package'
1416
include 'doc'
1517
include 'extensions'
1618
include 'templates'

0 commit comments

Comments
 (0)