From 9a57c4f06f5fb70ef8268ea1f1f4b4041b8ffd98 Mon Sep 17 00:00:00 2001 From: Diego Date: Sat, 22 Feb 2014 16:29:41 -0300 Subject: ready to deploy in sonatype --- project/Publish.scala | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100644 project/Publish.scala (limited to 'project/Publish.scala') diff --git a/project/Publish.scala b/project/Publish.scala new file mode 100644 index 00000000..818324c3 --- /dev/null +++ b/project/Publish.scala @@ -0,0 +1,65 @@ +import sbt._ +import sbt.Keys._ +import sbt.Project.Initialize +import java.lang.Boolean.{valueOf => convertToBoolean } + +object Publish { + + lazy val settings = Seq( + crossPaths := false, + pomExtra := kamonPomExtra, + publishTo <<= kamonPublish, + organization := kamonOrganization, + credentials ++= kamonCredentials, + pomIncludeRepository := { x => false }, + publishMavenStyle := true, + publishArtifact in Test := false + ) + + def kamonPublish:Initialize[Option[Resolver]] = { + if(convertToBoolean(System.getProperty("publish.to.sonatype"))) sonatypePublishRepository + else kamonPublishRepository + } + + def sonatypePublishRepository: Initialize[Option[Resolver]] = { + version { v: String => + val nexus = "https://oss.sonatype.org/" + if (v.trim.endsWith("SNAPSHOT")) + Some("snapshots" at nexus + "content/repositories/snapshots") + else + Some("releases" at nexus + "service/local/staging/deploy/maven2") + } + } + + def kamonPublishRepository :Initialize[Option[Resolver]] = { + version { (v: String) => + if (v.trim.endsWith("SNAPSHOT")) + Some(Resolver.sftp("Kamon Snapshots Repository", "snapshots.kamon.io", "/var/local/snapshots-repo")) + else + Some(Resolver.sftp("Kamon Repository", "repo.kamon.io", "/var/local/releases-repo")) + } + } + + def kamonOrganization: String = Option(System.getProperty("kamon.publish.organization", "kamon")).get + + def kamonCredentials: Seq[Credentials] = + Option(System.getProperty("kamon.publish.credentials", null)) map (f => Credentials(new File(f))) toSeq + + def kamonPomExtra = { + http://kamon.io + + + Apache 2 + http://www.apache.org/licenses/LICENSE-2.0.txt + + + + git://github.com/kamon-io/Kamon.git + scm:git:git@github.com:kamon-io/Kamon.git + + + ivantopoIvan Topolnjakhttps://twitter.com/ivantopo + dpsoftDiego Parrahttps://twitter.com/diegolparra + + } +} \ No newline at end of file -- cgit v1.2.3