diff --git a/build.sc b/build.sc index 94d958d..9071767 100644 --- a/build.sc +++ b/build.sc @@ -9,6 +9,7 @@ import mill.scalalib.publish._ import de.tobiasroeser.mill.integrationtest._ import de.tobiasroeser.mill.vcs.version._ +import mill.define.{Target, Task} trait Setup { val millPlatform: String @@ -91,5 +92,14 @@ class ItestCross(itestVersion: String) extends MillIntegrationTestModule { def millTestVersion = T(itestVersion) def pluginsUnderTest = Seq(jbake(setup.millPlatform)) + + override def testInvocations: Target[Seq[(PathRef, Seq[TestInvocation.Targets])]] = T { + Seq( + PathRef(millSourcePath / "src" / "01-simple-site") -> Seq( + TestInvocation.Targets(Seq("verify")), + TestInvocation.Targets(Seq("site.jbake")) + ) + ) + } } diff --git a/itest/src/01-simple-site/build.sc b/itest/src/01-simple-site/build.sc index 13da358..4dda161 100644 --- a/itest/src/01-simple-site/build.sc +++ b/itest/src/01-simple-site/build.sc @@ -8,7 +8,9 @@ import org.scalatest.Assertions object site extends JBakeModule { - def jbakeVersion = "2.6.4" + override def jbakeVersion = "2.6.4" + + override def jbakeProcessMode = JBakeModule.SubProcess } diff --git a/jbake/src/de/tobiasroeser/mill/jbake/JBakeModule.scala b/jbake/src/de/tobiasroeser/mill/jbake/JBakeModule.scala index 66b01fc..2284e15 100644 --- a/jbake/src/de/tobiasroeser/mill/jbake/JBakeModule.scala +++ b/jbake/src/de/tobiasroeser/mill/jbake/JBakeModule.scala @@ -89,8 +89,9 @@ trait JBakeModule extends Module with TaskModule { * Bake the site with JBake. */ def jbake: T[PathRef] = T { - val targetDir = T.ctx().dest - jbakeWorker().runJbakeMain(targetDir, sources().head.path, targetDir) + val targetDir = T.dest + val srcDir = sources().head.path + jbakeWorker().runJbakeMain(targetDir, srcDir, targetDir) PathRef(targetDir) } @@ -100,7 +101,9 @@ trait JBakeModule extends Module with TaskModule { * FIXME: This doesn't work for JBake versions since 2.6.2. */ def jbakeServe(): Command[Unit] = T.command { - jbakeWorker().runJbakeMain(T.ctx().dest, "-s", jbake().path) + val srcDir = sources().head.path + val outPath = jbake().path + jbakeWorker().runJbakeMain(T.ctx().dest, "-s", srcDir, outPath) } /**