diff --git a/build.gradle b/build.gradle index 33af06f307..1e36362141 100644 --- a/build.gradle +++ b/build.gradle @@ -96,18 +96,23 @@ def loadVersionSpecificProp(propName, versionSpecificProps) { } } -def loadVersion(versionSpecificProps){ - if (project.properties.get("version") != "unspecified") { - return project.properties.get("version") - } else { - return versionSpecificProps.getProperty("version") - } +def loadVersion(versionSpecificProps) { + return "${project.properties.get("version")}-${getSparkMajorVersion(versionSpecificProps)}" } +def getSparkMajorVersion(versionSpecificProps) { + def sparkVersion = loadVersionSpecificProp("sparkVersion", versionSpecificProps) + return sparkVersion.count(".") == 1 ? sparkVersion : sparkVersion.substring(0, sparkVersion.lastIndexOf('.')) +} // // For all projects (this and all subprojects) specify common properties and tasks // -def loadedVersion = loadVersion(versionSpecificProps).toString() +def loadedVersion = loadVersion(versionSpecificProps) + +if (!sparkVersion.startsWith(spark)) { + throw new IllegalArgumentException("Inconsistent Spark configuration. Both params spark and sparkVersion specified, but" + + " with different major Apark versions.") +} configure(allprojects) { project -> apply plugin: 'idea' @@ -126,7 +131,6 @@ configure(allprojects) { project -> sparkVersion = loadVersionSpecificProp("sparkVersion", versionSpecificProps) sparkMajorVersion = sparkVersion.count(".") == 1 ? sparkVersion : sparkVersion.substring(0, sparkVersion.lastIndexOf('.')) junitVersion = '4.11' - minSupportedJavaVersion = loadVersionSpecificProp("minSupportedJavaVersion", versionSpecificProps) supportedEmrVersion = loadVersionSpecificProp("supportedEmrVersion", versionSpecificProps) extraJVMArgs = loadVersionSpecificProp("extraJVMArgs", versionSpecificProps) @@ -139,7 +143,7 @@ configure(allprojects) { project -> version = loadedVersion.replace("-SNAPSHOT", "") } -// +// // Common configuration for all subprojects // configure(subprojects) { project -> diff --git a/docker/build.gradle b/docker/build.gradle index 81aaca4262..0ea8a4f05e 100644 --- a/docker/build.gradle +++ b/docker/build.gradle @@ -7,12 +7,10 @@ defaultTasks 'createDockerFile' description = "Sparkling-Water Docker Support" ext { - sparkling_water_release = sparkVersion.substring(0,sparkVersion.lastIndexOf(".")) - sparkling_water_build = version.substring(version.lastIndexOf(".")+1) - sparkling_water_file_name = "sparkling-water-${sparkling_water_release}.${sparkling_water_build}" + sparkling_water_file_name = "sparkling-water-${version}" spark_file_name = "spark-${sparkVersion}-bin-hadoop2.7" spark_download_url = "http://mirrors.ocf.berkeley.edu/apache/spark/spark-${sparkVersion}/${spark_file_name}.tgz" - sparkling_water_download_url = "http://h2o-release.s3.amazonaws.com/sparkling-water/rel-${sparkling_water_release}/${sparkling_water_build}/${sparkling_water_file_name}.zip" + sparkling_water_download_url = "http://h2o-release.s3.amazonaws.com/sparkling-water/spark-${sparkMajorVersion}/${version}/${sparkling_water_file_name}.zip" docker_file = file('sparkling-water/base/Dockerfile') } diff --git a/gradle-spark2.1.properties b/gradle-spark2.1.properties index 3867b56183..f17594ec92 100644 --- a/gradle-spark2.1.properties +++ b/gradle-spark2.1.properties @@ -1,5 +1,3 @@ -# Sparkling Water Version -version=3.28.1-SNAPSHOT-2.1 sparkVersion=2.1.3 minSupportedJavaVersion=1.7 supportedEmrVersion=emr-5.7.0 diff --git a/gradle-spark2.2.properties b/gradle-spark2.2.properties index bcd4c59aab..0c893a2022 100644 --- a/gradle-spark2.2.properties +++ b/gradle-spark2.2.properties @@ -1,5 +1,3 @@ -# Sparkling Water Version -version=3.28.1-SNAPSHOT-2.2 sparkVersion=2.2.3 minSupportedJavaVersion=1.8 supportedEmrVersion=emr-5.12.0 diff --git a/gradle-spark2.3.properties b/gradle-spark2.3.properties index b0aad190e4..fb69f4aa66 100644 --- a/gradle-spark2.3.properties +++ b/gradle-spark2.3.properties @@ -1,5 +1,3 @@ -# Sparkling Water Version -version=3.28.1-SNAPSHOT-2.3 sparkVersion=2.3.3 minSupportedJavaVersion=1.8 supportedEmrVersion=emr-5.19.0 diff --git a/gradle-spark2.4.properties b/gradle-spark2.4.properties index 3b19fa4f90..5219b9cfe4 100644 --- a/gradle-spark2.4.properties +++ b/gradle-spark2.4.properties @@ -1,5 +1,3 @@ -# Sparkling Water Version -version=3.28.1-SNAPSHOT-2.4 sparkVersion=2.4.3 minSupportedJavaVersion=1.8 supportedEmrVersion=emr-5.21.0 diff --git a/gradle.properties b/gradle.properties index 8edc48d340..1757ff04e5 100644 --- a/gradle.properties +++ b/gradle.properties @@ -23,3 +23,5 @@ dockerImageVersion=16 supportedSparkVersions=2.1 2.2 2.3 2.4 # Select for which Spark version is Sparkling Water built by default spark=2.4 +# Sparkling Water Version +version=3.28.1-SNAPSHOT