aboutsummaryrefslogtreecommitdiff
path: root/project
diff options
context:
space:
mode:
authorDiego <diegolparra@gmail.com>2014-02-22 16:29:41 -0300
committerDiego <diegolparra@gmail.com>2014-02-22 16:29:41 -0300
commit9a57c4f06f5fb70ef8268ea1f1f4b4041b8ffd98 (patch)
tree1b03616d8d85c1d86ce7bb8523cebe021de9be4d /project
parentde3d98d41ddd1141473e6ef0d87b852fcfc86a2c (diff)
downloadKamon-9a57c4f06f5fb70ef8268ea1f1f4b4041b8ffd98.tar.gz
Kamon-9a57c4f06f5fb70ef8268ea1f1f4b4041b8ffd98.tar.bz2
Kamon-9a57c4f06f5fb70ef8268ea1f1f4b4041b8ffd98.zip
ready to deploy in sonatype
Diffstat (limited to 'project')
-rw-r--r--project/Publish.scala65
-rw-r--r--project/Settings.scala33
2 files changed, 68 insertions, 30 deletions
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 = {
+ <url>http://kamon.io</url>
+ <licenses>
+ <license>
+ <name>Apache 2</name>
+ <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
+ </license>
+ </licenses>
+ <scm>
+ <url>git://github.com/kamon-io/Kamon.git</url>
+ <connection>scm:git:git@github.com:kamon-io/Kamon.git</connection>
+ </scm>
+ <developers>
+ <developer><id>ivantopo</id><name>Ivan Topolnjak</name><url>https://twitter.com/ivantopo</url></developer>
+ <developer><id>dpsoft</id><name>Diego Parra</name><url>https://twitter.com/diegolparra</url></developer>
+ </developers>
+ }
+} \ No newline at end of file
diff --git a/project/Settings.scala b/project/Settings.scala
index 76c6730d..80af7e28 100644
--- a/project/Settings.scala
+++ b/project/Settings.scala
@@ -4,11 +4,11 @@ import spray.revolver.RevolverPlugin.Revolver
import sbtrelease.ReleasePlugin._
import com.typesafe.sbt.SbtScalariform
import com.typesafe.sbt.SbtScalariform.ScalariformKeys
+import Publish.{settings => publishSettings}
object Settings {
lazy val basicSettings = seq(
- organization := "kamon",
scalaVersion := "2.10.3",
resolvers ++= Dependencies.resolutionRepos,
fork in run := true,
@@ -23,33 +23,7 @@ object Settings {
"-language:postfixOps",
"-language:implicitConversions",
"-Xlog-reflective-calls"
- ),
- publishTo <<= 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"))
- }
- ) ++ releaseSettings
-
- pomExtra := {
- <url>http://kamon.io</url>
- <licenses>
- <license>
- <name>Apache 2</name>
- <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
- </license>
- </licenses>
- <scm>
- <url>git://github.com/kamon-io/Kamon.git</url>
- <connection>scm:git:git@github.com:kamon-io/Kamon.git</connection>
- </scm>
- <developers>
- <developer><id>ivantopo</id><name>Ivan Topolnjak</name><url>https://twitter.com/ivantopo</url></developer>
- <developer><id>dpsoft</id><name>Diego Parra</name><url>https://twitter.com/diegolparra</url></developer>
- </developers>
- }
+ )) ++ publishSettings ++ releaseSettings
import spray.revolver.RevolverPlugin.Revolver._
lazy val revolverSettings = Revolver.settings ++ seq(reJRebelJar := "~/.jrebel/jrebel.jar")
@@ -66,5 +40,4 @@ object Settings {
.setPreference(AlignParameters, true)
.setPreference(AlignSingleLineCaseStatements, true)
.setPreference(DoubleIndentClassDeclaration, true)
-}
-
+} \ No newline at end of file