Update Jenkinsfile to build with a Java 17 baseline.

Closes #2173.
This commit is contained in:
John Blum
2021-09-23 14:46:03 -07:00
committed by Mark Paluch
parent 43de8bb309
commit 4ea00e05fa
2 changed files with 38 additions and 60 deletions

96
Jenkinsfile vendored
View File

@@ -14,10 +14,10 @@ pipeline {
stages {
stage("Docker images") {
parallel {
stage('Publish OpenJDK 8 + Redis 6.2 docker image') {
stage('Publish JDK 17 + Redis 6.2 Docker image') {
when {
anyOf {
changeset "ci/openjdk8-redis-6.2/**"
changeset "ci/openjdk17-redis6.2/**"
changeset "Makefile"
}
}
@@ -26,26 +26,7 @@ pipeline {
steps {
script {
def image = docker.build("springci/spring-data-openjdk8-with-redis-6.2", "-f ci/openjdk8-redis-6.2/Dockerfile .")
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
image.push()
}
}
}
}
stage('Publish OpenJDK 17 + Redis 6.2 docker image') {
when {
anyOf {
changeset "ci/openjdk16-redis-6.2/**"
changeset "Makefile"
}
}
agent { label 'data' }
options { timeout(time: 20, unit: 'MINUTES') }
steps {
script {
def image = docker.build("springci/spring-data-openjdk17-with-redis-6.2", "-f ci/openjdk17-redis-6.2/Dockerfile .")
def image = docker.build("springci/spring-data-openjdk17-with-redis-6.2", "-f ci/openjdk17-redis6.2/Dockerfile .")
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
image.push()
}
@@ -55,11 +36,10 @@ pipeline {
}
}
stage("test: baseline (jdk8)") {
stage("test: baseline (Java 17)") {
when {
beforeAgent(true)
anyOf {
branch(pattern: "main|(\\d\\.\\d\\.x)", comparator: "REGEXP")
branch 'main'
not { triggeredBy 'UpstreamCause' }
}
}
@@ -73,7 +53,7 @@ pipeline {
steps {
script {
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
docker.image('springci/spring-data-openjdk8-with-redis-6.2:latest').inside('-v $HOME:/tmp/jenkins-home') {
docker.image('springci/spring-data-openjdk17-with-redis-6.2:latest').inside('-v $HOME:/tmp/jenkins-home') {
sh 'PROFILE=none LONG_TESTS=true ci/test.sh'
}
}
@@ -81,41 +61,10 @@ pipeline {
}
}
stage("Test other configurations") {
when {
beforeAgent(true)
allOf {
branch(pattern: "main|(\\d\\.\\d\\.x)", comparator: "REGEXP")
not { triggeredBy 'UpstreamCause' }
}
}
parallel {
stage("test: baseline (jdk17)") {
agent {
label 'data'
}
options { timeout(time: 30, unit: 'MINUTES') }
environment {
ARTIFACTORY = credentials('02bd1690-b54f-4c9f-819d-a77cb7a9822c')
}
steps {
script {
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
docker.image('springci/spring-data-openjdk17-with-redis-6.2:latest').inside('-v $HOME:/tmp/jenkins-home') {
sh 'PROFILE=java11 ci/test.sh'
}
}
}
}
}
}
}
stage('Release to artifactory') {
when {
beforeAgent(true)
anyOf {
branch(pattern: "main|(\\d\\.\\d\\.x)", comparator: "REGEXP")
branch 'main'
not { triggeredBy 'UpstreamCause' }
}
}
@@ -131,7 +80,7 @@ pipeline {
steps {
script {
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
docker.image('adoptopenjdk/openjdk8:latest').inside('-v $HOME:/tmp/jenkins-home') {
docker.image('openjdk:17-bullseye').inside('-v $HOME:/tmp/jenkins-home') {
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -s settings.xml -Pci,artifactory ' +
'-Dartifactory.server=https://repo.spring.io ' +
"-Dartifactory.username=${ARTIFACTORY_USR} " +
@@ -145,6 +94,35 @@ pipeline {
}
}
}
stage('Publish documentation') {
when {
branch 'main'
}
agent {
label 'data'
}
options { timeout(time: 20, unit: 'MINUTES') }
environment {
ARTIFACTORY = credentials('02bd1690-b54f-4c9f-819d-a77cb7a9822c')
}
steps {
script {
docker.withRegistry('', 'hub.docker.com-springbuildmaster') {
docker.image('openjdk:17-bullseye').inside('-v $HOME:/tmp/jenkins-home') {
sh 'MAVEN_OPTS="-Duser.name=jenkins -Duser.home=/tmp/jenkins-home" ./mvnw -s settings.xml -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'
}
}
}
}
}
}
post {

View File

@@ -1,4 +1,4 @@
FROM adoptopenjdk/openjdk8:latest
FROM openjdk:17-bullseye
# Copy Spring Data Redis's Makefile into the container
COPY ./Makefile /