diff --git a/Jenkinsfile b/Jenkinsfile index 0e83b47e2..ce2f27233 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -20,29 +20,10 @@ pipeline { stages { stage("Docker images") { parallel { - stage('Publish JDK (Java 17) + MongoDB 6.0') { - when { - anyOf { - changeset "ci/openjdk17-mongodb-6.0/**" - changeset "ci/pipeline.properties" - } - } - agent { label 'data' } - options { timeout(time: 30, unit: 'MINUTES') } - - steps { - script { - def image = docker.build("springci/spring-data-with-mongodb-6.0:${p['java.main.tag']}", "--build-arg BASE=${p['docker.java.main.image']} --build-arg MONGODB=${p['docker.mongodb.6.0.version']} ci/openjdk17-mongodb-6.0/") - docker.withRegistry(p['docker.registry'], p['docker.credentials']) { - image.push() - } - } - } - } - stage('Publish JDK (Java 17) + MongoDB 7.0') { + stage('Publish JDK (Java 24) + MongoDB 8.0') { when { anyOf { - changeset "ci/openjdk17-mongodb-7.0/**" + changeset "ci/openjdk24-mongodb-8.0/**" changeset "ci/pipeline.properties" } } @@ -51,7 +32,7 @@ pipeline { steps { script { - def image = docker.build("springci/spring-data-with-mongodb-7.0:${p['java.main.tag']}", "--build-arg BASE=${p['docker.java.main.image']} --build-arg MONGODB=${p['docker.mongodb.7.0.version']} ci/openjdk17-mongodb-7.0/") + def image = docker.build("springci/spring-data-with-mongodb-8.0:${p['java.main.tag']}", "--build-arg BASE=${p['docker.java.main.image']} --build-arg MONGODB=${p['docker.mongodb.7.0.version']} ci/openjdk24-mongodb-8.0/") docker.withRegistry(p['docker.registry'], p['docker.credentials']) { image.push() } @@ -61,7 +42,7 @@ pipeline { stage('Publish JDK (Java.next) + MongoDB 8.0') { when { anyOf { - changeset "ci/openjdk17-mongodb-8.0/**" + changeset "ci/openjdk24-mongodb-8.0/**" changeset "ci/pipeline.properties" } } @@ -70,7 +51,7 @@ pipeline { steps { script { - def image = docker.build("springci/spring-data-with-mongodb-8.0:${p['java.next.tag']}", "--build-arg BASE=${p['docker.java.next.image']} --build-arg MONGODB=${p['docker.mongodb.8.0.version']} ci/openjdk23-mongodb-8.0/") + def image = docker.build("springci/spring-data-with-mongodb-8.0:${p['java.next.tag']}", "--build-arg BASE=${p['docker.java.next.image']} --build-arg MONGODB=${p['docker.mongodb.8.0.version']} ci/openjdk24-mongodb-8.0/") docker.withRegistry(p['docker.registry'], p['docker.credentials']) { image.push() } @@ -99,7 +80,7 @@ pipeline { steps { script { docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) { - docker.image("springci/spring-data-with-mongodb-6.0:${p['java.main.tag']}").inside(p['docker.java.inside.docker']) { + docker.image("springci/spring-data-with-mongodb-8.0:${p['java.main.tag']}").inside(p['docker.java.inside.docker']) { sh 'ci/start-replica.sh' sh 'MAVEN_OPTS="-Duser.name=' + "${p['jenkins.user.name']}" + ' -Duser.home=/tmp/jenkins-home" ' + "./mvnw -s settings.xml -Ddevelocity.storage.directory=/tmp/jenkins-home/.develocity-root -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-mongodb clean dependency:list test -Dsort -U -B" @@ -118,27 +99,6 @@ pipeline { } } parallel { - stage("test: MongoDB 7.0 (main)") { - agent { - label 'data' - } - options { timeout(time: 30, unit: 'MINUTES') } - environment { - ARTIFACTORY = credentials("${p['artifactory.credentials']}") - DEVELOCITY_ACCESS_KEY = credentials("${p['develocity.access-key']}") - } - steps { - script { - docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) { - docker.image("springci/spring-data-with-mongodb-7.0:${p['java.main.tag']}").inside(p['docker.java.inside.docker']) { - sh 'ci/start-replica.sh' - sh 'MAVEN_OPTS="-Duser.name=' + "${p['jenkins.user.name']}" + ' -Duser.home=/tmp/jenkins-home" ' + - "./mvnw -s settings.xml -Ddevelocity.storage.directory=/tmp/jenkins-home/.develocity-root -Dmaven.repo.local=/tmp/jenkins-home/.m2/spring-data-mongodb clean dependency:list test -Dsort -U -B" - } - } - } - } - } stage("test: MongoDB 8.0") { agent { diff --git a/ci/openjdk17-mongodb-6.0/Dockerfile b/ci/openjdk17-mongodb-6.0/Dockerfile deleted file mode 100644 index fd2580e23..000000000 --- a/ci/openjdk17-mongodb-6.0/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -ARG BASE -FROM ${BASE} -# Any ARG statements before FROM are cleared. -ARG MONGODB - -ENV TZ=Etc/UTC -ENV DEBIAN_FRONTEND=noninteractive -ENV MONGO_VERSION=${MONGODB} - -RUN set -eux; \ - sed -i -e 's/archive.ubuntu.com/mirror.one.com/g' /etc/apt/sources.list && \ - sed -i -e 's/security.ubuntu.com/mirror.one.com/g' /etc/apt/sources.list && \ - sed -i -e 's/ports.ubuntu.com/mirrors.ocf.berkeley.edu/g' /etc/apt/sources.list && \ - sed -i -e 's/http/https/g' /etc/apt/sources.list && \ - apt-get update && apt-get install -y apt-transport-https apt-utils gnupg2 wget && \ - # MongoDB 6.0 release signing key - wget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | apt-key add - && \ - # Needed when MongoDB creates a 6.0 folder. - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-6.0.list && \ - echo ${TZ} > /etc/timezone - -RUN apt-get update && \ - apt-get install -y mongodb-org=${MONGODB} mongodb-org-server=${MONGODB} mongodb-org-shell=${MONGODB} mongodb-org-mongos=${MONGODB} mongodb-org-tools=${MONGODB} && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* diff --git a/ci/openjdk17-mongodb-7.0/Dockerfile b/ci/openjdk17-mongodb-7.0/Dockerfile deleted file mode 100644 index 5701ab9fb..000000000 --- a/ci/openjdk17-mongodb-7.0/Dockerfile +++ /dev/null @@ -1,25 +0,0 @@ -ARG BASE -FROM ${BASE} -# Any ARG statements before FROM are cleared. -ARG MONGODB - -ENV TZ=Etc/UTC -ENV DEBIAN_FRONTEND=noninteractive -ENV MONGO_VERSION=${MONGODB} - -RUN set -eux; \ - sed -i -e 's/archive.ubuntu.com/mirror.one.com/g' /etc/apt/sources.list && \ - sed -i -e 's/security.ubuntu.com/mirror.one.com/g' /etc/apt/sources.list && \ - sed -i -e 's/ports.ubuntu.com/mirrors.ocf.berkeley.edu/g' /etc/apt/sources.list && \ - sed -i -e 's/http/https/g' /etc/apt/sources.list && \ - apt-get update && apt-get install -y apt-transport-https apt-utils gnupg2 wget && \ - # MongoDB 6.0 release signing key - wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | apt-key add - && \ - # Needed when MongoDB creates a 7.0 folder. - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/7.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-7.0.list && \ - echo ${TZ} > /etc/timezone - -RUN apt-get update && \ - apt-get install -y mongodb-org=${MONGODB} mongodb-org-server=${MONGODB} mongodb-org-shell=${MONGODB} mongodb-org-mongos=${MONGODB} mongodb-org-tools=${MONGODB} && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* diff --git a/ci/openjdk23-mongodb-8.0/Dockerfile b/ci/openjdk24-mongodb-8.0/Dockerfile similarity index 100% rename from ci/openjdk23-mongodb-8.0/Dockerfile rename to ci/openjdk24-mongodb-8.0/Dockerfile diff --git a/ci/pipeline.properties b/ci/pipeline.properties index a79feac95..4beebb0df 100644 --- a/ci/pipeline.properties +++ b/ci/pipeline.properties @@ -7,8 +7,6 @@ docker.java.main.image=library/eclipse-temurin:${java.main.tag} docker.java.next.image=library/eclipse-temurin:${java.next.tag} # Supported versions of MongoDB -docker.mongodb.6.0.version=6.0.23 -docker.mongodb.7.0.version=7.0.20 docker.mongodb.8.0.version=8.0.9 # Supported versions of Redis