aboutsummaryrefslogtreecommitdiff
path: root/stage2/PublishBuild.scala
diff options
context:
space:
mode:
authorChristopher Vogt <oss.nsp@cvogt.org>2016-04-27 09:32:35 -0400
committerChristopher Vogt <oss.nsp@cvogt.org>2016-04-28 13:34:01 -0400
commit63d1076783f3d39876c829108c335661948010b5 (patch)
treee57c64729dffaa752403d57ddf90dc7c2a3ddd26 /stage2/PublishBuild.scala
parenta8b87e23767f6fc7022152eb3b6784d42c93a33b (diff)
downloadcbt-63d1076783f3d39876c829108c335661948010b5.tar.gz
cbt-63d1076783f3d39876c829108c335661948010b5.tar.bz2
cbt-63d1076783f3d39876c829108c335661948010b5.zip
Make sonatype credentials customizable from Build class rather than hard coded
Diffstat (limited to 'stage2/PublishBuild.scala')
-rw-r--r--stage2/PublishBuild.scala17
1 files changed, 15 insertions, 2 deletions
diff --git a/stage2/PublishBuild.scala b/stage2/PublishBuild.scala
index 6b85b22..cc4f5e5 100644
--- a/stage2/PublishBuild.scala
+++ b/stage2/PublishBuild.scala
@@ -1,6 +1,7 @@
package cbt
import java.io.File
import java.net.URL
+import java.nio.file.Files.readAllBytes
import scala.collection.immutable.Seq
abstract class PublishBuild(context: Context) extends PackageBuild(context){
@@ -37,10 +38,22 @@ abstract class PublishBuild(context: Context) extends PackageBuild(context){
def snapshotUrl = new URL("https://oss.sonatype.org/content/repositories/snapshots")
def releaseUrl = new URL("https://oss.sonatype.org/service/local/staging/deploy/maven2")
override def copy(context: Context) = super.copy(context).asInstanceOf[PublishBuild]
+
+ protected def sonatypeCredentials = {
+ // FIXME: this should probably not use cbtHome, but some reference to the system's host cbt
+ new String(readAllBytes((context.cbtHome ++ "/sonatype.login").toPath)).trim
+ }
+
def publishSnapshot: Unit = {
val snapshotBuild = copy( context.copy(version = Some(version+"-SNAPSHOT")) )
val files = snapshotBuild.pom +: snapshotBuild.`package`
- lib.publishSnapshot(sourceFiles, files, snapshotUrl ++ releaseFolder )
+ lib.publishSnapshot(
+ sourceFiles, files, snapshotUrl ++ releaseFolder, sonatypeCredentials
+ )
+ }
+ def publishSigned: Unit = {
+ lib.publishSigned(
+ sourceFiles, pom +: `package`, releaseUrl ++ releaseFolder, sonatypeCredentials
+ )
}
- def publishSigned: Unit = lib.publishSigned(sourceFiles, pom +: `package`, releaseUrl ++ releaseFolder )
}