Skip to content

Commit 6f2e0ef

Browse files
committed
Use scripted instead of manual sbt-plugin-test
This is a first step for scala-js#3758 and allows us to evaluate scripted as potential solution to scala-js#3661/scala-js#3714.
1 parent 6d4c849 commit 6f2e0ef

File tree

25 files changed

+38
-27
lines changed

25 files changed

+38
-27
lines changed

Jenkinsfile

Lines changed: 3 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -369,28 +369,9 @@ def Tasks = [
369369
''',
370370

371371
"sbtplugin-test": '''
372-
setJavaVersion 1.8
373-
# Publish Scala.js artifacts locally
374-
# Then go into standalone project and test
375-
npm install &&
376-
sbt ++2.11.12 compiler/publishLocal library/publishLocal \
377-
testInterface/publishLocal testBridge/publishLocal \
378-
jUnitPlugin/publishLocal jUnitRuntime/publishLocal &&
379-
sbt ++$toolsscala \
380-
ir/publishLocal logging/publishLocal \
381-
linker/publishLocal jsEnvs/publishLocal \
382-
nodeJSEnv/publishLocal testAdapter/publishLocal \
383-
sbtPlugin/publishLocal &&
384-
cd sbt-plugin-test &&
385372
setJavaVersion $java &&
386-
sbt noDOM/run \
387-
noDOM/testHtml multiTestJS/testHtml \
388-
test \
389-
noDOM/testScalaJSModuleInitializers \
390-
noDOM/clean noDOM/concurrentUseOfLinkerTest \
391-
multiTestJS/test:testScalaJSSourceMapAttribute &&
392-
sbt 'set scalaJSStage in Global := FullOptStage' \
393-
noDOM/testHtml multiTestJS/testHtml
373+
npm install &&
374+
sbt sbtPlugin/scripted
394375
''',
395376

396377
"partest-noopt": '''
@@ -458,7 +439,7 @@ allJavaVersions.each { javaVersion ->
458439
quickMatrix.add([task: "tools", scala: "2.11.12", java: javaVersion])
459440
}
460441
quickMatrix.add([task: "partestc", scala: "2.11.0", java: mainJavaVersion])
461-
quickMatrix.add([task: "sbtplugin-test", toolsscala: "2.12.8", java: mainJavaVersion])
442+
quickMatrix.add([task: "sbtplugin-test", java: mainJavaVersion])
462443

463444
// The 'full' matrix
464445
def fullMatrix = quickMatrix.clone()

project/Build.scala

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import Keys._
99

1010
import com.typesafe.tools.mima.plugin.MimaPlugin.autoImport._
1111
import de.heikoseeberger.sbtheader.HeaderPlugin.autoImport._
12+
import ScriptedPlugin.autoImport._
1213

1314
import java.util.Arrays
1415

@@ -764,7 +765,8 @@ object Build {
764765
baseDirectory.value.getParentFile / "test-common/src/test/scala"
765766
).dependsOn(jsEnvs, jUnitAsyncJVM % "test")
766767

767-
lazy val plugin: Project = Project(id = "sbtPlugin", base = file("sbt-plugin")).settings(
768+
lazy val plugin: Project = Project(id = "sbtPlugin", base = file("sbt-plugin"))
769+
.enablePlugins(ScriptedPlugin).settings(
768770
commonSettings,
769771
publishIvySettings,
770772
fatalWarningsSettings,
@@ -781,6 +783,25 @@ object Build {
781783

782784
addSbtPlugin("org.portable-scala" % "sbt-platform-deps" % "1.0.0"),
783785

786+
scriptedLaunchOpts += "-Dplugin.version=" + version.value,
787+
scriptedDependencies := {
788+
scriptedDependencies.dependsOn(
789+
publishLocal in compiler,
790+
publishLocal in library,
791+
publishLocal in testInterface,
792+
publishLocal in testBridge,
793+
publishLocal in jUnitPlugin,
794+
publishLocal in jUnitRuntime,
795+
publishLocal in irProject,
796+
publishLocal in logging,
797+
publishLocal in linker,
798+
publishLocal in jsEnvs,
799+
publishLocal in nodeJSEnv,
800+
publishLocal in testAdapter,
801+
publishLocal in jsEnvs,
802+
).value
803+
},
804+
784805
// Add API mappings for sbt (seems they don't export their API URL)
785806
apiMappings ++= {
786807
val deps = (externalDependencyClasspath in Compile).value

sbt-plugin-test/project/build.sbt

Lines changed: 0 additions & 2 deletions
This file was deleted.

sbt-plugin-test/project/project/build.sbt

Lines changed: 0 additions & 1 deletion
This file was deleted.

sbt-plugin-test/build.sbt renamed to sbt-plugin/src/sbt-test/legacy/legacy/build.sbt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ version := scalaJSVersion
1414

1515
val versionSettings = Seq(
1616
version := scalaJSVersion,
17-
scalaVersion := "2.11.12"
17+
scalaVersion := "2.12.8",
1818
)
1919

2020
val baseSettings = versionSettings ++ Seq(
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
addSbtPlugin("org.scala-js" % "sbt-scalajs" % sys.props("plugin.version"))
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
> noDOM/run
2+
> noDOM/testHtml
3+
> multiTestJS/testHtml
4+
> test
5+
> noDOM/testScalaJSModuleInitializers
6+
> noDOM/clean
7+
> noDOM/concurrentUseOfLinkerTest
8+
> multiTestJS/test:testScalaJSSourceMapAttribute
9+
> set scalaJSStage in Global := FullOptStage
10+
> noDOM/testHtml
11+
> multiTestJS/testHtml

0 commit comments

Comments
 (0)