-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathworkflows.sbt
59 lines (56 loc) · 1.74 KB
/
workflows.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
// This is a huge build matrix! so it's better to find problems rather than failing prematurely.
val PrimaryJava = JavaSpec.temurin("11")
val LTSJava = JavaSpec.temurin("17")
ThisBuild / githubWorkflowJavaVersions := Seq(PrimaryJava, LTSJava)
ThisBuild / githubWorkflowBuildMatrixFailFast := Some(false)
ThisBuild / tlSiteJavaVersion := LTSJava
ThisBuild / githubWorkflowOSes := Seq(
"ubuntu-latest",
// "windows-2022", // disable for now, there is some linking problem
"macos-13",
"macos-latest"
)
ThisBuild / githubWorkflowBuildMatrixExclusions ++= githubWorkflowOSes.value
.filter(_ != "ubuntu-latest")
.flatMap(os =>
Seq(
MatrixExclude(Map("project" -> "rootJS", "os" -> os)),
MatrixExclude(Map("project" -> "rootJVM", "os" -> os))
)
)
ThisBuild / githubWorkflowJobSetup ++= Seq(
WorkflowStep.Run(
List("sudo apt-get update", "sudo apt-get install libyaml-dev"),
name = Some("Install libyaml (ubuntu)"),
cond =
Some("startsWith(matrix.os, 'ubuntu') && matrix.project == 'rootNative'")
),
WorkflowStep.Run(
List("brew install libyaml"),
name = Some("Install libyaml (macos)"),
cond =
Some("startsWith(matrix.os, 'macos') && matrix.project == 'rootNative'")
),
WorkflowStep.Run(
List(
"vcpkg integrate install",
"vcpkg install --triplet x64-windows libyaml"
),
name = Some("Install libyaml (windows)"),
cond =
Some("startsWith(matrix.os, 'windows') && matrix.project == 'rootNative'")
)
)
ThisBuild / githubWorkflowAddedJobs += WorkflowJob(
id = "post-build",
name = "post build",
needs = List("build"),
steps = List(
WorkflowStep.Run(
commands = List("echo success!"),
name = Some("post build")
)
),
scalas = Nil,
javas = Nil
)