diff --git a/sbt/src/sbt-test/dependency-management/publish-local/build.sbt b/sbt/src/sbt-test/dependency-management/publish-local/build.sbt new file mode 100644 index 000000000..4e5fa7e4c --- /dev/null +++ b/sbt/src/sbt-test/dependency-management/publish-local/build.sbt @@ -0,0 +1,24 @@ +lazy val root = (project in file(".")). + dependsOn(sub). + aggregate(sub). + settings(inThisBuild(List( + organization := "A", + version := "1.0", + ivyPaths <<= baseDirectory( dir => new IvyPaths(dir, Some(dir / "ivy" / "cache")) ), + externalResolvers <<= baseDirectory map { base => Resolver.file("local", base / "ivy" / "local" asFile)(Resolver.ivyStylePatterns) :: Nil } + )), + mavenStyle, + interProject, + name := "Publish Test" + ) + +lazy val sub = project. + settings( + mavenStyle, + name := "Sub Project" + ) + +lazy val mavenStyle = publishMavenStyle <<= baseDirectory { base => (base / "mavenStyle") exists } + +def interProject = + projectDependencies <<= (publishMavenStyle, publishMavenStyle in sub, projectDependencies) map { (style, subStyle, pd) => if(style == subStyle) pd else Nil } diff --git a/sbt/src/sbt-test/dependency-management/publish-local/changes/RetrieveTest.sbt b/sbt/src/sbt-test/dependency-management/publish-local/changes/RetrieveTest.sbt new file mode 100644 index 000000000..6ff7b2501 --- /dev/null +++ b/sbt/src/sbt-test/dependency-management/publish-local/changes/RetrieveTest.sbt @@ -0,0 +1,20 @@ +lazy val root = (project in file(".")). + settings(inThisBuild(List( + organization := "A", + version := "1.0", + ivyPaths <<= baseDirectory( dir => new IvyPaths(dir, Some(dir / "ivy" / "cache")) ), + externalResolvers <<= baseDirectory map { base => Resolver.file("local", base / "ivy" / "local" asFile)(Resolver.ivyStylePatterns) :: Nil } + )), + mavenStyle, + name := "Retrieve Test", + libraryDependencies <<= publishMavenStyle { style => if(style) mavenStyleDependencies else ivyStyleDependencies } + ) + + +lazy val mavenStyle = publishMavenStyle <<= baseDirectory { base => (base / "mavenStyle") exists } + +def ivyStyleDependencies = parentDep("A") :: subDep("A") :: subDep("B") ::parentDep("D") :: Nil +def mavenStyleDependencies = parentDep("B") :: parentDep("C") :: subDep("C") :: subDep("D") :: Nil + +def parentDep(org: String) = org %% "publish-test" % "1.0" +def subDep(org: String) = org %% "sub-project" % "1.0" diff --git a/sbt/src/sbt-test/dependency-management/publish-local/changes/RetrieveTest.scala b/sbt/src/sbt-test/dependency-management/publish-local/changes/RetrieveTest.scala deleted file mode 100644 index b166ce7a9..000000000 --- a/sbt/src/sbt-test/dependency-management/publish-local/changes/RetrieveTest.scala +++ /dev/null @@ -1,27 +0,0 @@ - import sbt._ - import Import._ - import Keys._ - -object MultiPublishTest extends Build -{ - override lazy val settings = super.settings ++ Seq( - organization := "A", - version := "1.0", - ivyPaths <<= baseDirectory( dir => new IvyPaths(dir, Some(dir / "ivy" / "cache")) ), - externalResolvers <<= baseDirectory map { base => Resolver.file("local", base / "ivy" / "local" asFile)(Resolver.ivyStylePatterns) :: Nil } - ) - - lazy val root = Project("root", file(".")) settings( - name := "Retrieve Test", - mavenStyle, - libraryDependencies <<= publishMavenStyle { style => if(style) mavenStyleDependencies else ivyStyleDependencies } - ) - - lazy val mavenStyle = publishMavenStyle <<= baseDirectory { base => (base / "mavenStyle") exists } - - def ivyStyleDependencies = parentDep("A") :: subDep("A") :: subDep("B") ::parentDep("D") :: Nil - def mavenStyleDependencies = parentDep("B") :: parentDep("C") :: subDep("C") :: subDep("D") :: Nil - - def parentDep(org: String) = org %% "publish-test" % "1.0" - def subDep(org: String) = org %% "sub-project" % "1.0" -} diff --git a/sbt/src/sbt-test/dependency-management/publish-local/project/MultiPublishTest.scala b/sbt/src/sbt-test/dependency-management/publish-local/project/MultiPublishTest.scala deleted file mode 100644 index 94c4c8ad2..000000000 --- a/sbt/src/sbt-test/dependency-management/publish-local/project/MultiPublishTest.scala +++ /dev/null @@ -1,22 +0,0 @@ - import sbt._ - import Import._ - import Keys._ - -object MultiPublishTest extends Build -{ - override lazy val settings = super.settings ++ Seq( - organization := "A", - version := "1.0", - ivyPaths <<= baseDirectory( dir => new IvyPaths(dir, Some(dir / "ivy" / "cache")) ), - externalResolvers <<= baseDirectory map { base => Resolver.file("local", base / "ivy" / "local" asFile)(Resolver.ivyStylePatterns) :: Nil } - ) - - lazy val root = Project("root", file(".")) dependsOn(sub) aggregate(sub) settings( mavenStyle, interProject, name := "Publish Test" ) - - lazy val sub = Project("sub", file("sub")) settings( mavenStyle, name := "Sub Project" ) - - lazy val mavenStyle = publishMavenStyle <<= baseDirectory { base => (base / "mavenStyle") exists } - - def interProject = - projectDependencies <<= (publishMavenStyle, publishMavenStyle in sub, projectDependencies) map { (style, subStyle, pd) => if(style == subStyle) pd else Nil } -}