You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

43 lines
1.1 KiB

  1. import sbt._
  2. import Keys._
  3. object Publish {
  4. import Resolvers._
  5. import Helpers._
  6. val sonaCreds = (
  7. for {
  8. user <- getProp("SONATYPE_USER")
  9. pass <- getProp("SONATYPE_PASS")
  10. } yield {
  11. credentials +=
  12. Credentials("Sonatype Nexus Repository Manager",
  13. "oss.sonatype.org",
  14. user, pass)
  15. }
  16. ).toSeq
  17. val settings = sonaCreds ++ Seq (
  18. publishMavenStyle := true,
  19. pomIncludeRepository := { _ => false },
  20. publishArtifact in Test := false,
  21. publishTo := {
  22. if (version.value.trim endsWith "SNAPSHOT")
  23. Some(sonatypeSnaps)
  24. else
  25. Some(sonatypeStaging)
  26. },
  27. pomExtra := BasicSettings.developerInfo
  28. )
  29. /** Use this if you don't want to publish a certain module.
  30. * (SBT's release plugin doesn't handle this well.)
  31. */
  32. val falseSettings = settings ++ Seq (
  33. publishArtifact in Compile := false,
  34. publishArtifact in Test := false,
  35. publishTo := Some(Resolver.file("phony-repo", file("target/repo")))
  36. )
  37. }