-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.sbt
70 lines (61 loc) · 1.98 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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
import ReleaseTransformations.*
import sbtversionpolicy.withsbtrelease.ReleaseVersion
ThisBuild / scalaVersion := "2.13.14"
ThisBuild / crossScalaVersions := Seq(
scalaVersion.value,
"3.3.1",
"2.12.18" // Motivated by facia/FAPI clients still on Scala 2.12
)
ThisBuild / scalacOptions := Seq("-deprecation", "-release:11")
lazy val baseSettings = Seq(
organization := "com.gu.etag-caching",
licenses := Seq(License.Apache2),
libraryDependencies ++= Seq(
"org.scalatest" %% "scalatest" % "3.2.19" % Test
),
Test / testOptions +=
Tests.Argument(TestFrameworks.ScalaTest, "-u", s"test-results/scala-${scalaVersion.value}", "-o")
)
lazy val core =
project.settings(baseSettings,
libraryDependencies ++= Seq(
"com.github.blemale" %% "scaffeine" % "5.2.1"
)
)
def awsS3WithSdkVersion(version: Int)=
Project(s"aws-s3-sdk-v$version", file(s"aws-s3/aws-sdk-v$version"))
.dependsOn(`aws-s3-base`)
.settings(baseSettings,
libraryDependencies ++= Seq(
awsSdkForVersion(version),
"com.adobe.testing" % "s3mock-testcontainers" % "3.9.1" % Test
)
)
val awsSdkForVersion = Map(
// 1 -> "com.amazonaws" % "aws-java-sdk-s3" % "1.12.487",
2 -> "software.amazon.awssdk" % "s3" % "2.26.21"
)
lazy val `aws-s3-base` =
project.in(file("aws-s3/base")).settings(baseSettings).dependsOn(core)
lazy val `aws-s3-sdk-v2` = awsS3WithSdkVersion(2)
lazy val `etag-caching-root` = (project in file("."))
.aggregate(
core,
`aws-s3-base`,
`aws-s3-sdk-v2`
).settings(
publish / skip := true,
releaseVersion := ReleaseVersion.fromAggregatedAssessedCompatibilityWithLatestRelease().value,
releaseCrossBuild := true, // true if you cross-build the project for multiple Scala versions
releaseProcess := Seq[ReleaseStep](
checkSnapshotDependencies,
inquireVersions,
runClean,
runTest,
setReleaseVersion,
commitReleaseVersion,
tagRelease,
setNextVersion,
commitNextVersion
)
)