Browse Source

Switch to Broadcom docker proxy.

Closes #3519
3.1.x
Mark Paluch 2 years ago
parent
commit
596f2e5a15
No known key found for this signature in database
GPG Key ID: 55BC6374BAA9D973
  1. 57
      Jenkinsfile
  2. 7
      ci/pipeline.properties
  3. 4
      spring-data-jpa/src/test/java/org/springframework/data/jpa/support/ProxyImageNameSubstitutor.java

57
Jenkinsfile vendored

@ -36,9 +36,11 @@ pipeline { @@ -36,9 +36,11 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.main.image']).inside(p['docker.java.inside.docker']) {
sh 'PROFILE=all-dbs ci/test.sh'
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.main.image']).inside(p['docker.java.inside.docker']) {
sh 'PROFILE=all-dbs ci/test.sh'
sh "ci/clean.sh"
}
}
}
}
@ -67,10 +69,12 @@ pipeline { @@ -67,10 +69,12 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh "PROFILE=all-dbs,hibernate-64 " +
"JENKINS_USER_NAME=${p['jenkins.user.name']} " +
"ci/test.sh"
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh "PROFILE=all-dbs,hibernate-64 " +
"JENKINS_USER_NAME=${p['jenkins.user.name']} " +
"ci/test.sh"
}
}
}
}
@ -88,10 +92,12 @@ pipeline { @@ -88,10 +92,12 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh "PROFILE=all-dbs,hibernate-64-snapshots " +
"JENKINS_USER_NAME=${p['jenkins.user.name']} " +
"ci/test.sh"
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh "PROFILE=all-dbs,hibernate-64-snapshots " +
"JENKINS_USER_NAME=${p['jenkins.user.name']} " +
"ci/test.sh"
}
}
}
}
@ -109,10 +115,12 @@ pipeline { @@ -109,10 +115,12 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh "PROFILE=all-dbs,hibernate-65 " +
"JENKINS_USER_NAME=${p['jenkins.user.name']} " +
"ci/test.sh"
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh "PROFILE=all-dbs,hibernate-65 " +
"JENKINS_USER_NAME=${p['jenkins.user.name']} " +
"ci/test.sh"
}
}
}
}
@ -128,9 +136,11 @@ pipeline { @@ -128,9 +136,11 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh 'PROFILE=all-dbs ci/test.sh'
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.next.image']).inside(p['docker.java.inside.docker']) {
sh 'PROFILE=all-dbs ci/test.sh'
sh "ci/clean.sh"
}
}
}
}
@ -146,9 +156,11 @@ pipeline { @@ -146,9 +156,11 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.main.image']).inside(p['docker.java.inside.docker']) {
sh 'PROFILE=all-dbs,eclipselink-next ci/test.sh'
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.main.image']).inside(p['docker.java.inside.docker']) {
sh 'PROFILE=all-dbs,eclipselink-next ci/test.sh'
sh "ci/clean.sh"
}
}
}
}
@ -173,16 +185,17 @@ pipeline { @@ -173,16 +185,17 @@ pipeline {
}
steps {
script {
docker.image(p['docker.java.main.image']).inside(p['docker.java.inside.basic']) {
sh 'MAVEN_OPTS="-Duser.name=' + "${p['jenkins.user.name']}" + ' -Duser.home=/tmp/jenkins-home" ' +
"./mvnw -s settings.xml -Pci,artifactory " +
docker.withRegistry(p['docker.proxy.registry'], p['docker.proxy.credentials']) {
docker.image(p['docker.java.main.image']).inside(p['docker.java.inside.basic']) {
sh 'MAVEN_OPTS="-Duser.name=' + "${p['jenkins.user.name']}" + ' -Duser.home=/tmp/jenkins-home" ' +
"./mvnw -s settings.xml -Pci,artifactory " +
"-Dartifactory.server=${p['artifactory.url']} " +
"-Dartifactory.username=${ARTIFACTORY_USR} " +
"-Dartifactory.password=${ARTIFACTORY_PSW} " +
"-Dartifactory.staging-repository=${p['artifactory.repository.snapshot']} " +
"-Dartifactory.build-name=spring-data-jpa " +
"-Dartifactory.build-number=spring-data-jpa-${BRANCH_NAME}-build-${BUILD_NUMBER} " +
'-Dmaven.test.skip=true clean deploy -U -B'
'-Dmaven.test.skip=true clean deploy -U -B'}
}
}
}

7
ci/pipeline.properties

@ -3,8 +3,8 @@ java.main.tag=17.0.9_9-jdk-focal @@ -3,8 +3,8 @@ java.main.tag=17.0.9_9-jdk-focal
java.next.tag=20-jdk-jammy
# Docker container images - standard
docker.java.main.image=harbor-repo.vmware.com/dockerhub-proxy-cache/library/eclipse-temurin:${java.main.tag}
docker.java.next.image=harbor-repo.vmware.com/dockerhub-proxy-cache/library/eclipse-temurin:${java.next.tag}
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.4.4.version=4.4.25
@ -13,6 +13,7 @@ docker.mongodb.6.0.version=6.0.10 @@ -13,6 +13,7 @@ docker.mongodb.6.0.version=6.0.10
# Supported versions of Redis
docker.redis.6.version=6.2.13
docker.redis.7.version=7.2.4
# Supported versions of Cassandra
docker.cassandra.3.version=3.11.16
@ -24,6 +25,8 @@ docker.java.inside.docker=-u root -v /var/run/docker.sock:/var/run/docker.sock - @@ -24,6 +25,8 @@ docker.java.inside.docker=-u root -v /var/run/docker.sock:/var/run/docker.sock -
# Credentials
docker.registry=
docker.credentials=hub.docker.com-springbuildmaster
docker.proxy.registry=https://docker-hub.usw1.packages.broadcom.com
docker.proxy.credentials=usw1_packages_broadcom_com-jenkins-token
artifactory.credentials=02bd1690-b54f-4c9f-819d-a77cb7a9822c
artifactory.url=https://repo.spring.io
artifactory.repository.snapshot=libs-snapshot-local

4
spring-data-jpa/src/test/java/org/springframework/data/jpa/support/ProxyImageNameSubstitutor.java

@ -23,7 +23,7 @@ import org.testcontainers.utility.ImageNameSubstitutor; @@ -23,7 +23,7 @@ import org.testcontainers.utility.ImageNameSubstitutor;
/**
* An {@link ImageNameSubstitutor} only used on CI servers to leverage internal proxy solution, that needs to vary the
* prefix based on which container image is needed.
*
*
* @author Greg Turnquist
*/
public class ProxyImageNameSubstitutor extends ImageNameSubstitutor {
@ -32,7 +32,7 @@ public class ProxyImageNameSubstitutor extends ImageNameSubstitutor { @@ -32,7 +32,7 @@ public class ProxyImageNameSubstitutor extends ImageNameSubstitutor {
private static final List<String> NAMES_TO_LIBRARY_PROXY_PREFIX = List.of("mysql", "postgres");
private static final String PROXY_PREFIX = "harbor-repo.vmware.com/dockerhub-proxy-cache/";
private static final String PROXY_PREFIX = "docker-hub.usw1.packages.broadcom.com/";
private static final String LIBRARY_PROXY_PREFIX = PROXY_PREFIX + "library/";

Loading…
Cancel
Save