aboutsummaryrefslogtreecommitdiff
path: root/project/SparkBuild.scala
diff options
context:
space:
mode:
Diffstat (limited to 'project/SparkBuild.scala')
-rw-r--r--project/SparkBuild.scala21
1 files changed, 18 insertions, 3 deletions
diff --git a/project/SparkBuild.scala b/project/SparkBuild.scala
index 744f57c517..304288a32c 100644
--- a/project/SparkBuild.scala
+++ b/project/SparkBuild.scala
@@ -360,6 +360,9 @@ object SparkBuild extends PomBuild {
enable(MimaBuild.mimaSettings(sparkHome, x))(x)
}
+ /* Generate and pick the spark build info from extra-resources */
+ enable(Core.settings)(core)
+
/* Unsafe settings */
enable(Unsafe.settings)(unsafe)
@@ -448,7 +451,19 @@ object SparkBuild extends PomBuild {
else x.settings(Seq[Setting[_]](): _*)
} ++ Seq[Project](OldDeps.project)
}
+}
+object Core {
+ lazy val settings = Seq(
+ resourceGenerators in Compile += Def.task {
+ val buildScript = baseDirectory.value + "/../build/spark-build-info"
+ val targetDir = baseDirectory.value + "/target/extra-resources/"
+ val command = buildScript + " " + targetDir + " " + version.value
+ Process(command).!!
+ val propsFile = baseDirectory.value / "target" / "extra-resources" / "spark-version-info.properties"
+ Seq(propsFile)
+ }.taskValue
+ )
}
object Unsafe {
@@ -480,9 +495,9 @@ object DependencyOverrides {
}
/**
- This excludes library dependencies in sbt, which are specified in maven but are
- not needed by sbt build.
- */
+ * This excludes library dependencies in sbt, which are specified in maven but are
+ * not needed by sbt build.
+ */
object ExcludedDependencies {
lazy val settings = Seq(
libraryDependencies ~= { libs => libs.filterNot(_.name == "groovy-all") }