Skip to content

Commit 3ce65fa

Browse files
committed
Update CI jobs with Docker Login.
See #509
1 parent 6175297 commit 3ce65fa

File tree

3 files changed

+89
-47
lines changed

3 files changed

+89
-47
lines changed

Jenkinsfile

Lines changed: 73 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -20,17 +20,24 @@ pipeline {
2020
}
2121
}
2222
agent {
23-
docker {
24-
image 'adoptopenjdk/openjdk8:latest'
25-
label 'data'
26-
args '-u root -v /var/run/docker.sock:/var/run/docker.sock -v $HOME:/tmp/jenkins-home'
27-
}
23+
label 'data'
2824
}
2925
options { timeout(time: 30, unit: 'MINUTES') }
26+
27+
environment {
28+
DOCKER_HUB = credentials('hub.docker.com-springbuildmaster')
29+
}
30+
3031
steps {
31-
sh 'mkdir -p /tmp/jenkins-home/.m2/spring-data-r2dbc'
32-
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci clean dependency:list test -Dsort -U -B -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc'
33-
sh "chown -R 1001:1001 target"
32+
script {
33+
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
34+
docker.image('adoptopenjdk/openjdk8:latest').inside('-u root -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v $HOME:/tmp/jenkins-home') {
35+
sh "docker login --username ${DOCKER_HUB_USR} --password ${DOCKER_HUB_PSW}"
36+
sh 'PROFILE=ci ci/test.sh'
37+
sh "ci/clean.sh"
38+
}
39+
}
40+
}
3441
}
3542
}
3643

@@ -44,32 +51,47 @@ pipeline {
4451
parallel {
4552
stage("test: baseline (jdk11)") {
4653
agent {
47-
docker {
48-
image 'adoptopenjdk/openjdk11:latest'
49-
label 'data'
50-
args '-u root -v /var/run/docker.sock:/var/run/docker.sock -v $HOME:/tmp/jenkins-home'
51-
}
54+
label 'data'
5255
}
5356
options { timeout(time: 30, unit: 'MINUTES') }
57+
58+
environment {
59+
DOCKER_HUB = credentials('hub.docker.com-springbuildmaster')
60+
}
61+
5462
steps {
55-
sh 'rm -rf ?'
56-
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,java11 clean dependency:list test -Dsort -U -B -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc'
57-
sh "chown -R 1001:1001 target"
63+
script {
64+
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
65+
docker.image('adoptopenjdk/openjdk11:latest').inside('-u root -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v $HOME:/tmp/jenkins-home') {
66+
sh "docker login --username ${DOCKER_HUB_USR} --password ${DOCKER_HUB_PSW}"
67+
sh 'PROFILE=ci,java11 ci/test.sh'
68+
sh "ci/clean.sh"
69+
}
70+
}
71+
}
5872
}
5973
}
6074

6175
stage("test: baseline (jdk15)") {
6276
agent {
63-
docker {
64-
image 'adoptopenjdk/openjdk15:latest'
65-
label 'data'
66-
args '-u root -v /var/run/docker.sock:/var/run/docker.sock -v $HOME:/tmp/jenkins-home'
67-
}
77+
label 'data'
6878
}
6979
options { timeout(time: 30, unit: 'MINUTES') }
80+
81+
environment {
82+
DOCKER_HUB = credentials('hub.docker.com-springbuildmaster')
83+
}
84+
7085
steps {
71-
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,java11 clean dependency:list test -Dsort -U -B -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc'
72-
sh "chown -R 1001:1001 target"
86+
script {
87+
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
88+
docker.image('adoptopenjdk/openjdk15:latest').inside('-u root -v /var/run/docker.sock:/var/run/docker.sock -v /usr/bin/docker:/usr/bin/docker -v $HOME:/tmp/jenkins-home') {
89+
sh "docker login --username ${DOCKER_HUB_USR} --password ${DOCKER_HUB_PSW}"
90+
sh 'PROFILE=ci,java11 ci/test.sh'
91+
sh "ci/clean.sh"
92+
}
93+
}
94+
}
7395
}
7496
}
7597
}
@@ -83,11 +105,7 @@ pipeline {
83105
}
84106
}
85107
agent {
86-
docker {
87-
image 'adoptopenjdk/openjdk8:latest'
88-
label 'data'
89-
args '-u root -v /var/run/docker.sock:/var/run/docker.sock -v $HOME:/tmp/jenkins-home'
90-
}
108+
label 'data'
91109
}
92110
options { timeout(time: 20, unit: 'MINUTES') }
93111

@@ -96,14 +114,20 @@ pipeline {
96114
}
97115

98116
steps {
99-
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,artifactory -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc ' +
100-
'-Dartifactory.server=https://repo.spring.io ' +
101-
"-Dartifactory.username=${ARTIFACTORY_USR} " +
102-
"-Dartifactory.password=${ARTIFACTORY_PSW} " +
103-
"-Dartifactory.staging-repository=libs-snapshot-local " +
104-
"-Dartifactory.build-name=spring-data-r2dbc " +
105-
"-Dartifactory.build-number=${BUILD_NUMBER} " +
106-
'-Dmaven.test.skip=true clean deploy -U -B'
117+
script {
118+
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
119+
docker.image('adoptopenjdk/openjdk8:latest').inside('-v $HOME:/tmp/jenkins-home') {
120+
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,artifactory -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc-non-root ' +
121+
'-Dartifactory.server=https://repo.spring.io ' +
122+
"-Dartifactory.username=${ARTIFACTORY_USR} " +
123+
"-Dartifactory.password=${ARTIFACTORY_PSW} " +
124+
"-Dartifactory.staging-repository=libs-snapshot-local " +
125+
"-Dartifactory.build-name=spring-data-r2dbc " +
126+
"-Dartifactory.build-number=${BUILD_NUMBER} " +
127+
'-Dmaven.test.skip=true clean deploy -U -B'
128+
}
129+
}
130+
}
107131
}
108132
}
109133

@@ -112,11 +136,7 @@ pipeline {
112136
branch '1.2.x'
113137
}
114138
agent {
115-
docker {
116-
image 'adoptopenjdk/openjdk8:latest'
117-
label 'data'
118-
args '-u root -v /var/run/docker.sock:/var/run/docker.sock -v $HOME:/tmp/jenkins-home'
119-
}
139+
label 'data'
120140
}
121141
options { timeout(time: 20, unit: 'MINUTES') }
122142

@@ -125,12 +145,18 @@ pipeline {
125145
}
126146

127147
steps {
128-
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,distribute -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc ' +
129-
'-Dartifactory.server=https://repo.spring.io ' +
130-
"-Dartifactory.username=${ARTIFACTORY_USR} " +
131-
"-Dartifactory.password=${ARTIFACTORY_PSW} " +
132-
"-Dartifactory.distribution-repository=temp-private-local " +
133-
'-Dmaven.test.skip=true clean deploy -U -B'
148+
script {
149+
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
150+
docker.image('adoptopenjdk/openjdk8:latest').inside('-v $HOME:/tmp/jenkins-home') {
151+
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -Pci,distribute -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc-non-root ' +
152+
'-Dartifactory.server=https://repo.spring.io ' +
153+
"-Dartifactory.username=${ARTIFACTORY_USR} " +
154+
"-Dartifactory.password=${ARTIFACTORY_PSW} " +
155+
"-Dartifactory.distribution-repository=temp-private-local " +
156+
'-Dmaven.test.skip=true clean deploy -U -B'
157+
}
158+
}
159+
}
134160
}
135161
}
136162
}

ci/clean.sh

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/bash -x
2+
3+
set -euo pipefail
4+
5+
MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" \
6+
./mvnw clean -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc

ci/test.sh

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
#!/bin/bash -x
2+
3+
set -euo pipefail
4+
5+
mkdir -p /tmp/jenkins-home/.m2/spring-data-r2dbc
6+
chown -R 1001:1001 .
7+
8+
MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" \
9+
./mvnw \
10+
-P${PROFILE} clean dependency:list test -Dsort -U -B -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-r2dbc

0 commit comments

Comments
 (0)