forked from indix/mlflow-gocd
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.sbt
45 lines (40 loc) · 1.46 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
import Dependencies._
val appVersion = sys.env.get("TRAVIS_TAG") orElse sys.env.get("BUILD_LABEL") getOrElse s"1.0.0-${System.currentTimeMillis / 1000}-SNAPSHOT"
lazy val commonSettings = Seq(
organization := "com.indix",
version := appVersion,
scalaVersion := "2.11.11",
unmanagedBase := file(".") / "lib",
libraryDependencies ++= Seq(
goPluginLibrary, gson, apacheCommons, commonsIo, scalaTest
),
resourceGenerators in Compile += Def.task {
val inputFile = baseDirectory.value / "template" / "plugin.xml"
val outputFile = (resourceManaged in Compile).value / "plugin.xml"
val contents = IO.read(inputFile)
IO.write(outputFile, contents.replaceAll("\\$\\{version\\}", appVersion))
Seq(outputFile)
}.taskValue,
mappings in (Compile, packageBin) += {
(resourceManaged in Compile).value / "plugin.xml" -> "plugin.xml"
},
javacOptions ++= Seq("-source", "1.8", "-target", "1.8"),
crossPaths := false,
assemblyOption in assembly := (assemblyOption in assembly).value.copy(includeScala = false)
)
lazy val material = (project in file("material")).
settings(commonSettings: _*).
settings(
name := "mlflow-gocd-material",
libraryDependencies ++= Seq(httpClient),
)
lazy val fetch = (project in file("fetch")).
settings(commonSettings: _*).
settings(
name := "mlflow-gocd-fetch",
libraryDependencies ++= Seq(awsS3),
)
lazy val root = Project(
id = "mlflow-gocd",
base = file(".")
) aggregate(material, fetch)