Enable deploy artifacts

Closes gh-2
This commit is contained in:
Vedran Pavic
2018-01-29 22:04:14 +01:00
parent d8ff7b9788
commit dedceb1b11
2 changed files with 65 additions and 43 deletions

19
Jenkinsfile vendored
View File

@@ -1,6 +1,5 @@
def projectProperties = [
[$class: 'BuildDiscarderProperty',
strategy: [$class: 'LogRotator', numToKeepStr: '5']],
[$class: 'BuildDiscarderProperty', strategy: [$class: 'LogRotator', numToKeepStr: '5']],
pipelineTriggers([cron('@daily')])
]
properties(projectProperties)
@@ -15,7 +14,7 @@ try {
try {
sh "./gradlew clean check --refresh-dependencies --no-daemon --stacktrace"
}
catch(Exception e) {
catch (Exception e) {
currentBuild.result = 'FAILED: check'
throw e
}
@@ -23,11 +22,17 @@ try {
}
if (currentBuild.result == 'SUCCESS') {
stage('Artifactory Deploy') {
stage('Deploy Artifacts') {
node {
checkout scm
withCredentials([usernamePassword(credentialsId: '02bd1690-b54f-4c9f-819d-a77cb7a9822c', usernameVariable: 'ARTIFACTORY_USERNAME', passwordVariable: 'ARTIFACTORY_PASSWORD')]) {
sh "./gradlew artifactoryPublish -PartifactoryUsername=$ARTIFACTORY_USERNAME -PartifactoryPassword=$ARTIFACTORY_PASSWORD --no-daemon --stacktrace"
withCredentials([file(credentialsId: 'spring-signing-secring.gpg', variable: 'SIGNING_KEYRING_FILE')]) {
withCredentials([string(credentialsId: 'spring-gpg-passphrase', variable: 'SIGNING_PASSWORD')]) {
withCredentials([usernamePassword(credentialsId: 'oss-token', passwordVariable: 'OSSRH_PASSWORD', usernameVariable: 'OSSRH_USERNAME')]) {
withCredentials([usernamePassword(credentialsId: '02bd1690-b54f-4c9f-819d-a77cb7a9822c', usernameVariable: 'ARTIFACTORY_USERNAME', passwordVariable: 'ARTIFACTORY_PASSWORD')]) {
sh "./gradlew deployArtifacts finalizeDeployArtifacts -Psigning.secretKeyRingFile=$SIGNING_KEYRING_FILE -Psigning.keyId=$SPRING_SIGNING_KEYID -Psigning.password='$SIGNING_PASSWORD' -PossrhUsername=$OSSRH_USERNAME -PossrhPassword=$OSSRH_PASSWORD -PartifactoryUsername=$ARTIFACTORY_USERNAME -PartifactoryPassword=$ARTIFACTORY_PASSWORD --refresh-dependencies --no-daemon --stacktrace"
}
}
}
}
}
}
@@ -39,7 +44,7 @@ finally {
def lastBuildNotSuccess = !SUCCESS.equals(currentBuild.previousBuild?.result)
if (buildNotSuccess || lastBuildNotSuccess) {
stage('Notifiy') {
stage('Notify') {
node {
final def RECIPIENTS = [[$class: 'DevelopersRecipientProvider'], [$class: 'RequesterRecipientProvider']]

View File

@@ -9,9 +9,7 @@ buildscript {
}
}
apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'io.spring.convention.artifactory'
apply plugin: 'io.spring.convention.bom'
apply plugin: 'io.spring.convention.root'
apply plugin: 'io.spring.convention.springdependencymangement'
@@ -24,49 +22,68 @@ artifacts {
archives file('spring-session-bom.txt')
}
dependencyManagement {
generatedPomCustomization {
enabled = true
}
}
install {
repositories.mavenInstaller {
pom.whenConfigured { pom ->
pom.project {
packaging = 'pom'
name = project.description
description = project.description
url = 'https://projects.spring.io/spring-session/'
customizePom(pom, project)
}
}
}
organization {
name = 'Pivotal Software, Inc.'
url = 'https://spring.io/'
}
uploadArchives {
repositories.mavenInstaller {
pom.whenConfigured { pom ->
customizePom(pom, project)
}
}
}
licenses {
license {
name = 'Apache License, Version 2.0'
url = 'https://www.apache.org/licenses/LICENSE-2.0'
distribution = 'repo'
}
}
def customizePom(pom, project) {
pom.project {
packaging = 'pom'
name = project.description
description = project.description
url = 'https://projects.spring.io/spring-session/'
developers {
developer {
id = 'rwinch'
name = 'Rob Winch'
email = 'rwinch@pivotal.io'
}
}
organization {
name = 'Pivotal Software, Inc.'
url = 'https://spring.io/'
}
scm {
url = 'https://github.com/spring-projects/spring-session-bom'
connection = 'scm:git:git@github.com/spring-projects/spring-session-bom.git'
developerConnection = 'scm:git:git@github.com/spring-projects/spring-session-bom.git'
}
issueManagement {
system = 'GitHub'
url = 'https://github.com/spring-projects/spring-session/issues'
}
licenses {
license {
name = 'Apache License, Version 2.0'
url = 'https://www.apache.org/licenses/LICENSE-2.0'
distribution = 'repo'
}
}
developers {
developer {
id = 'rwinch'
name = 'Rob Winch'
email = 'rwinch@pivotal.io'
}
}
scm {
url = 'https://github.com/spring-projects/spring-session-bom'
connection = 'scm:git:git@github.com/spring-projects/spring-session-bom.git'
developerConnection = 'scm:git:git@github.com/spring-projects/spring-session-bom.git'
}
issueManagement {
system = 'GitHub'
url = 'https://github.com/spring-projects/spring-session/issues'
}
}
}
sonarqube.skipProject = true
mavenBom.enabled = false