diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 84e507e86..26dc4d2c0 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -7,7 +7,7 @@ jobs: fail-fast: false matrix: scala: [2.13.4, 2.12.13] - nodejs: [14.15.4, 12.20.1, 10.23.1] + nodejs: [14.16.0, 12.21.0, 10.24.0] steps: - uses: actions/checkout@v2 - uses: olafurpg/setup-scala@v10 diff --git a/build.sbt b/build.sbt index 1b710cdb3..c54f18b47 100644 --- a/build.sbt +++ b/build.sbt @@ -29,9 +29,20 @@ lazy val core = (project in file("./core")) libraryDependencies ++= Dependencies.core.value ) -lazy val nodejs_v14 = createNodeVersionSpecificProject("14.15.4") -lazy val nodejs_v12 = createNodeVersionSpecificProject("12.20.1") -lazy val nodejs_v10 = createNodeVersionSpecificProject("10.23.1") +lazy val nodeVerMap = { + val ciYaml = scala.io.Source.fromFile(".github/workflows/ci.yaml") + try { + val nodejsVersionLine = ciYaml.getLines().filter(_.contains("nodejs:")).toSeq.head + "\\d+\\.\\d+\\.\\d+".r.findAllIn(nodejsVersionLine).toSeq match { + case Seq(a, b, c) => Map("14" -> a, "12" -> b, "10" -> c) + } + } finally { + ciYaml.close() + } +} +lazy val nodejs_v14 = createNodeVersionSpecificProject(nodeVerMap("14")) +lazy val nodejs_v12 = createNodeVersionSpecificProject(nodeVerMap("12")) +lazy val nodejs_v10 = createNodeVersionSpecificProject(nodeVerMap("10")) def createNodeVersionSpecificProject(nodeFullVersion: String) = { val majorVersion = nodeFullVersion.split("\\.")(0)