From d73fa53240903f0e7edce01d77bdf5a26ba04800 Mon Sep 17 00:00:00 2001 From: "Greg L. Turnquist" Date: Mon, 14 Dec 2020 14:46:00 -0600 Subject: [PATCH] DATACASS-835 - Use Docker hub credentials for all CI jobs. --- Jenkinsfile | 119 ++++++++++++++++++++++++++++------------------------ pom.xml | 5 +++ 2 files changed, 69 insertions(+), 55 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index e4a68c463..09a367146 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -71,24 +71,25 @@ pipeline { not { triggeredBy 'UpstreamCause' } } } - parallel { - stage("test: baseline") { - agent { - docker { - image 'springci/spring-data-openjdk8-cassandra-3.11:latest' - label 'data' - args '-v $HOME:/tmp/jenkins-home' + stage("test: baseline (jdk8)") { + agent { + label 'data' + } + options { timeout(time: 30, unit: 'MINUTES') } + steps { + script { + docker.withRegistry('', 'hub.docker.com-springbuildmaster') { + docker.image('springci/spring-data-openjdk8-cassandra-3.11:latest').inside('-v $HOME:/tmp/jenkins-home') { + sh 'mkdir -p /tmp/jenkins-home' + sh 'JAVA_HOME=/opt/java/openjdk /opt/cassandra/bin/cassandra -R &' + sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,external-cassandra clean dependency:list verify -Dsort -U -B' + } } } - options { timeout(time: 30, unit: 'MINUTES') } - steps { - sh 'mkdir -p /tmp/jenkins-home' - sh 'JAVA_HOME=/opt/java/openjdk /opt/cassandra/bin/cassandra -R &' - sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,external-cassandra clean dependency:list verify -Dsort -U -B' - } } } } + stage("Test other configurations") { when { allOf { @@ -99,32 +100,36 @@ pipeline { parallel { stage("test: baseline (jdk11)") { agent { - docker { - image 'springci/spring-data-openjdk11-8-cassandra-3.11:latest' - label 'data' - args '-v $HOME:/tmp/jenkins-home' - } + label 'data' } options { timeout(time: 30, unit: 'MINUTES') } steps { - sh 'mkdir -p /tmp/jenkins-home' - sh 'JAVA_HOME=/opt/java/openjdk8 /opt/cassandra/bin/cassandra -R &' - sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,external-cassandra,java11 clean dependency:list verify -Dsort -U -B' + script { + docker.withRegistry('', 'hub.docker.com-springbuildmaster') { + docker.image('springci/spring-data-openjdk11-8-cassandra-3.11:latest').inside('-v $HOME:/tmp/jenkins-home') { + sh 'mkdir -p /tmp/jenkins-home' + sh 'JAVA_HOME=/opt/java/openjdk8 /opt/cassandra/bin/cassandra -R &' + sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,external-cassandra,java11 clean dependency:list verify -Dsort -U -B' + } + } + } } } stage("test: baseline (jdk15)") { agent { - docker { - image 'springci/spring-data-openjdk15-8-cassandra-3.11:latest' - label 'data' - args '-v $HOME:/tmp/jenkins-home' - } + label 'data' } options { timeout(time: 30, unit: 'MINUTES') } steps { - sh 'mkdir -p /tmp/jenkins-home' - sh 'JAVA_HOME=/opt/java/openjdk8 /opt/cassandra/bin/cassandra -R &' - sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,external-cassandra,java11 clean dependency:list verify -Dsort -U -B' + script { + docker.withRegistry('', 'hub.docker.com-springbuildmaster') { + docker.image('springci/spring-data-openjdk15-8-cassandra-3.11:latest').inside('-v $HOME:/tmp/jenkins-home') { + sh 'mkdir -p /tmp/jenkins-home' + sh 'JAVA_HOME=/opt/java/openjdk8 /opt/cassandra/bin/cassandra -R &' + sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,external-cassandra,java11 clean dependency:list verify -Dsort -U -B' + } + } + } } } } @@ -137,11 +142,7 @@ pipeline { } } agent { - docker { - image 'adoptopenjdk/openjdk8:latest' - label 'data' - args '-v $HOME:/tmp/jenkins-home' - } + label 'data' } options { timeout(time: 20, unit: 'MINUTES') } @@ -150,15 +151,21 @@ pipeline { } steps { - sh 'mkdir -p /tmp/jenkins-home' - sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,artifactory ' + - '-Dartifactory.server=https://repo.spring.io ' + - "-Dartifactory.username=${ARTIFACTORY_USR} " + - "-Dartifactory.password=${ARTIFACTORY_PSW} " + - "-Dartifactory.staging-repository=libs-snapshot-local " + - "-Dartifactory.build-name=spring-data-cassandra " + - "-Dartifactory.build-number=${BUILD_NUMBER} " + - '-Dmaven.test.skip=true clean deploy -U -B' + script { + docker.withRegistry('', 'hub.docker.com-springbuildmaster') { + docker.image('adoptopenjdk/openjdk8:latest').inside('-v $HOME:/tmp/jenkins-home') { + sh 'mkdir -p /tmp/jenkins-home' + sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,artifactory ' + + '-Dartifactory.server=https://repo.spring.io ' + + "-Dartifactory.username=${ARTIFACTORY_USR} " + + "-Dartifactory.password=${ARTIFACTORY_PSW} " + + "-Dartifactory.staging-repository=libs-snapshot-local " + + "-Dartifactory.build-name=spring-data-cassandra " + + "-Dartifactory.build-number=${BUILD_NUMBER} " + + '-Dmaven.test.skip=true clean deploy -U -B' + } + } + } } } stage('Publish documentation') { @@ -166,11 +173,7 @@ pipeline { branch 'master' } agent { - docker { - image 'adoptopenjdk/openjdk8:latest' - label 'data' - args '-v $HOME:/tmp/jenkins-home' - } + label 'data' } options { timeout(time: 20, unit: 'MINUTES') } @@ -179,13 +182,19 @@ pipeline { } steps { - sh 'mkdir -p /tmp/jenkins-home' - sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,distribute ' + - '-Dartifactory.server=https://repo.spring.io ' + - "-Dartifactory.username=${ARTIFACTORY_USR} " + - "-Dartifactory.password=${ARTIFACTORY_PSW} " + - "-Dartifactory.distribution-repository=temp-private-local " + - '-Dmaven.test.skip=true clean deploy -U -B' + script { + docker.withRegistry('', 'hub.docker.com-springbuildmaster') { + docker.image('adoptopenjdk/openjdk8:latest').inside('-v $HOME:/tmp/jenkins-home') { + sh 'mkdir -p /tmp/jenkins-home' + sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,distribute ' + + '-Dartifactory.server=https://repo.spring.io ' + + "-Dartifactory.username=${ARTIFACTORY_USR} " + + "-Dartifactory.password=${ARTIFACTORY_PSW} " + + "-Dartifactory.distribution-repository=temp-private-local " + + '-Dmaven.test.skip=true clean deploy -U -B' + } + } + } } } } diff --git a/pom.xml b/pom.xml index 0eec33a1a..902044824 100644 --- a/pom.xml +++ b/pom.xml @@ -113,6 +113,11 @@ spring-plugins-release https://repo.spring.io/plugins-release + + bintray-plugins + bintray-plugins + https://jcenter.bintray.com +