From 1e2b2ec594650c25d79402ba3590bcaa9d00bda7 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Tue, 29 Mar 2016 00:51:11 -0400 Subject: [PATCH] Port dependency-management/pom-packaging --- .../pom-packaging/build.sbt | 35 +++++++++++++++++++ .../pom-packaging/project/PomTest.scala | 25 ------------- .../dependency-management/pom-packaging/test | 2 +- 3 files changed, 36 insertions(+), 26 deletions(-) create mode 100644 sbt/src/sbt-test/dependency-management/pom-packaging/build.sbt delete mode 100644 sbt/src/sbt-test/dependency-management/pom-packaging/project/PomTest.scala diff --git a/sbt/src/sbt-test/dependency-management/pom-packaging/build.sbt b/sbt/src/sbt-test/dependency-management/pom-packaging/build.sbt new file mode 100644 index 000000000..547d5bc8a --- /dev/null +++ b/sbt/src/sbt-test/dependency-management/pom-packaging/build.sbt @@ -0,0 +1,35 @@ +import sbt.Def.Initialize + +lazy val checkPom = taskKey[Unit]("") + +lazy val root = (project in file(".")). + settings( + checkPom in ThisBuild := checkPomTask.value + ) + +lazy val subJar = (project in file("subJar")) + +lazy val subWar = (project in file("subWar")). + settings( + warArtifact + ) + +lazy val subParent = (project in file("subParent")). + settings( + publishArtifact in Compile := false + ) + +def art(p: ProjectReference) = makePom in p +def checkPomTask: Initialize[Task[Unit]] = + (art(subJar), art(subWar), art(subParent)) map { (jar, war, pom) => + checkPackaging(jar, "jar") + checkPackaging(war, "war") + checkPackaging(pom, "pom") + } + +def checkPackaging(pom: File, expected: String) = +{ + val packaging = (xml.XML.loadFile(pom) \\ "packaging").text + if(packaging != expected) sys.error("Incorrect packaging for '" + pom + "'. Expected '" + expected + "', but got '" + packaging + "'") +} +def warArtifact = artifact in (Compile, packageBin) ~= { _.copy(`type` = "war", extension = "war") } diff --git a/sbt/src/sbt-test/dependency-management/pom-packaging/project/PomTest.scala b/sbt/src/sbt-test/dependency-management/pom-packaging/project/PomTest.scala deleted file mode 100644 index 5eeb2e202..000000000 --- a/sbt/src/sbt-test/dependency-management/pom-packaging/project/PomTest.scala +++ /dev/null @@ -1,25 +0,0 @@ -import sbt._ -import Keys._ -import Import._ - -object PomTest extends Build -{ - override def settings = super.settings :+ (TaskKey[Unit]("check-pom") <<= checkPom) - - lazy val subJar = Project("sub-jar", file("subJar")) - lazy val subWar = Project("sub-war", file("subWar")) settings( warArtifact) - lazy val subParent = Project("sub-parent", file("subParent")) settings( publishArtifact in Compile := false ) - - def art(p: ProjectReference) = makePom in p - def checkPom = (art(subJar), art(subWar), art(subParent)) map { (jar, war, pom) => - checkPackaging(jar, "jar") - checkPackaging(war, "war") - checkPackaging(pom, "pom") - } - def checkPackaging(pom: File, expected: String) = - { - val packaging = (xml.XML.loadFile(pom) \\ "packaging").text - if(packaging != expected) sys.error("Incorrect packaging for '" + pom + "'. Expected '" + expected + "', but got '" + packaging + "'") - } - def warArtifact = artifact in (Compile, packageBin) ~= { _.copy(`type` = "war", extension = "war") } -} \ No newline at end of file diff --git a/sbt/src/sbt-test/dependency-management/pom-packaging/test b/sbt/src/sbt-test/dependency-management/pom-packaging/test index c8edbfbcd..0e9f0f7b6 100644 --- a/sbt/src/sbt-test/dependency-management/pom-packaging/test +++ b/sbt/src/sbt-test/dependency-management/pom-packaging/test @@ -1 +1 @@ -> check-pom \ No newline at end of file +> checkPom \ No newline at end of file