Merge pull request #46729 from thaJeztah/20.10_backport_remove-ibm-jenkins-jobs
[20.10 backport] Remove s390x and ppc64le Jenkins pipelines
diff --git a/Dockerfile b/Dockerfile
index b57e06e..2e65d28 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -13,8 +13,7 @@
FROM ${GOLANG_IMAGE} AS base
RUN echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' > /etc/apt/apt.conf.d/keep-cache
ARG APT_MIRROR
-RUN sed -ri "s/(httpredir|deb).debian.org/${APT_MIRROR:-deb.debian.org}/g" /etc/apt/sources.list \
- && sed -ri "s/(security).debian.org/${APT_MIRROR:-security.debian.org}/g" /etc/apt/sources.list
+RUN test -n "$APT_MIRROR" && sed -ri "s/(httpredir|deb|security).debian.org/${APT_MIRROR}/g" /etc/apt/sources.list || true
ENV GO111MODULE=off
FROM base AS criu
diff --git a/Jenkinsfile b/Jenkinsfile
index 70cc215..8e884d8 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -14,8 +14,6 @@
booleanParam(name: 'rootless', defaultValue: true, description: 'amd64 (x86_64) Build/Test (Rootless mode)')
booleanParam(name: 'cgroup2', defaultValue: true, description: 'amd64 (x86_64) Build/Test (cgroup v2)')
booleanParam(name: 'arm64', defaultValue: true, description: 'ARM (arm64) Build/Test')
- booleanParam(name: 's390x', defaultValue: false, description: 'IBM Z (s390x) Build/Test')
- booleanParam(name: 'ppc64le', defaultValue: false, description: 'PowerPC (ppc64le) Build/Test')
booleanParam(name: 'windowsRS5', defaultValue: true, description: 'Windows 2019 (RS5) Build/Test')
booleanParam(name: 'dco', defaultValue: true, description: 'Run the DCO check')
}
@@ -23,7 +21,6 @@
DOCKER_BUILDKIT = '1'
DOCKER_EXPERIMENTAL = '1'
DOCKER_GRAPHDRIVER = 'overlay2'
- APT_MIRROR = 'cdn-fastly.deb.debian.org'
CHECK_CONFIG_COMMIT = '78405559cfe5987174aa2cb6463b9b2c1b917255'
TESTDEBUG = '0'
TIMEOUT = '120m'
@@ -542,405 +539,6 @@
}
}
-
- stage('s390x') {
- when {
- beforeAgent true
- // Skip this stage on PRs unless the checkbox is selected
- anyOf {
- not { changeRequest() }
- expression { params.s390x }
- }
- }
- agent { label 's390x-ubuntu-2004' }
-
- stages {
- stage("Print info") {
- steps {
- sh 'docker version'
- sh 'docker info'
- sh '''
- echo "check-config.sh version: ${CHECK_CONFIG_COMMIT}"
- curl -fsSL -o ${WORKSPACE}/check-config.sh "https://raw.githubusercontent.com/moby/moby/${CHECK_CONFIG_COMMIT}/contrib/check-config.sh" \
- && bash ${WORKSPACE}/check-config.sh || true
- '''
- }
- }
- stage("Build dev image") {
- steps {
- sh '''
- docker build --force-rm --build-arg APT_MIRROR -t docker:${GIT_COMMIT} .
- '''
- }
- }
- stage("Unit tests") {
- steps {
- sh '''
- docker run --rm -t --privileged \
- -v "$WORKSPACE/bundles:/go/src/github.com/docker/docker/bundles" \
- --name docker-pr$BUILD_NUMBER \
- -e DOCKER_EXPERIMENTAL \
- -e DOCKER_GITCOMMIT=${GIT_COMMIT} \
- -e DOCKER_GRAPHDRIVER \
- -e VALIDATE_REPO=${GIT_URL} \
- -e VALIDATE_BRANCH=${CHANGE_TARGET} \
- docker:${GIT_COMMIT} \
- hack/test/unit
- '''
- }
- post {
- always {
- junit testResults: 'bundles/junit-report.xml', allowEmptyResults: true
- }
- }
- }
- stage("Integration tests") {
- environment { TEST_SKIP_INTEGRATION_CLI = '1' }
- steps {
- sh '''
- docker run --rm -t --privileged \
- -v "$WORKSPACE/bundles:/go/src/github.com/docker/docker/bundles" \
- --name docker-pr$BUILD_NUMBER \
- -e DOCKER_EXPERIMENTAL \
- -e DOCKER_GITCOMMIT=${GIT_COMMIT} \
- -e DOCKER_GRAPHDRIVER \
- -e TESTDEBUG \
- -e TEST_SKIP_INTEGRATION_CLI \
- -e TIMEOUT \
- -e VALIDATE_REPO=${GIT_URL} \
- -e VALIDATE_BRANCH=${CHANGE_TARGET} \
- docker:${GIT_COMMIT} \
- hack/make.sh \
- dynbinary \
- test-integration
- '''
- }
- post {
- always {
- junit testResults: 'bundles/**/*-report.xml', allowEmptyResults: true
- }
- }
- }
- }
-
- post {
- always {
- sh '''
- echo "Ensuring container killed."
- docker rm -vf docker-pr$BUILD_NUMBER || true
- '''
-
- sh '''
- echo "Chowning /workspace to jenkins user"
- docker run --rm -v "$WORKSPACE:/workspace" busybox chown -R "$(id -u):$(id -g)" /workspace
- '''
-
- catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE', message: 'Failed to create bundles.tar.gz') {
- sh '''
- bundleName=s390x-integration
- echo "Creating ${bundleName}-bundles.tar.gz"
- # exclude overlay2 directories
- find bundles -path '*/root/*overlay2' -prune -o -type f \\( -name '*-report.json' -o -name '*.log' -o -name '*.prof' -o -name '*-report.xml' \\) -print | xargs tar -czf ${bundleName}-bundles.tar.gz
- '''
-
- archiveArtifacts artifacts: '*-bundles.tar.gz', allowEmptyArchive: true
- }
- }
- cleanup {
- sh 'make clean'
- deleteDir()
- }
- }
- }
- stage('s390x integration-cli') {
- when {
- beforeAgent true
- not { changeRequest() }
- expression { params.s390x }
- }
- agent { label 's390x-ubuntu-2004' }
-
- stages {
- stage("Print info") {
- steps {
- sh 'docker version'
- sh 'docker info'
- sh '''
- echo "check-config.sh version: ${CHECK_CONFIG_COMMIT}"
- curl -fsSL -o ${WORKSPACE}/check-config.sh "https://raw.githubusercontent.com/moby/moby/${CHECK_CONFIG_COMMIT}/contrib/check-config.sh" \
- && bash ${WORKSPACE}/check-config.sh || true
- '''
- }
- }
- stage("Build dev image") {
- steps {
- sh '''
- docker build --force-rm --build-arg APT_MIRROR -t docker:${GIT_COMMIT} .
- '''
- }
- }
- stage("Integration-cli tests") {
- environment { TEST_SKIP_INTEGRATION = '1' }
- steps {
- sh '''
- docker run --rm -t --privileged \
- -v "$WORKSPACE/bundles:/go/src/github.com/docker/docker/bundles" \
- --name docker-pr$BUILD_NUMBER \
- -e DOCKER_GITCOMMIT=${GIT_COMMIT} \
- -e DOCKER_GRAPHDRIVER \
- -e TEST_SKIP_INTEGRATION \
- -e TIMEOUT \
- -e VALIDATE_REPO=${GIT_URL} \
- -e VALIDATE_BRANCH=${CHANGE_TARGET} \
- docker:${GIT_COMMIT} \
- hack/make.sh \
- dynbinary \
- test-integration
- '''
- }
- post {
- always {
- junit testResults: 'bundles/**/*-report.xml', allowEmptyResults: true
- }
- }
- }
- }
-
- post {
- always {
- sh '''
- echo "Ensuring container killed."
- docker rm -vf docker-pr$BUILD_NUMBER || true
- '''
-
- sh '''
- echo "Chowning /workspace to jenkins user"
- docker run --rm -v "$WORKSPACE:/workspace" busybox chown -R "$(id -u):$(id -g)" /workspace
- '''
-
- catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE', message: 'Failed to create bundles.tar.gz') {
- sh '''
- bundleName=s390x-integration-cli
- echo "Creating ${bundleName}-bundles.tar.gz"
- # exclude overlay2 directories
- find bundles -path '*/root/*overlay2' -prune -o -type f \\( -name '*-report.json' -o -name '*.log' -o -name '*.prof' -o -name '*-report.xml' \\) -print | xargs tar -czf ${bundleName}-bundles.tar.gz
- '''
-
- archiveArtifacts artifacts: '*-bundles.tar.gz', allowEmptyArchive: true
- }
- }
- cleanup {
- sh 'make clean'
- deleteDir()
- }
- }
- }
- stage('ppc64le') {
- when {
- beforeAgent true
- // Skip this stage on PRs unless the checkbox is selected
- anyOf {
- not { changeRequest() }
- expression { params.ppc64le }
- }
- }
- agent { label 'ppc64le-ubuntu-1604' }
- // ppc64le machines run on Docker 18.06, and buildkit has some
- // bugs on that version. Build and use buildx instead.
- environment {
- USE_BUILDX = '1'
- DOCKER_BUILDKIT = '0'
- }
-
- stages {
- stage("Print info") {
- steps {
- sh 'docker version'
- sh 'docker info'
- sh '''
- echo "check-config.sh version: ${CHECK_CONFIG_COMMIT}"
- curl -fsSL -o ${WORKSPACE}/check-config.sh "https://raw.githubusercontent.com/moby/moby/${CHECK_CONFIG_COMMIT}/contrib/check-config.sh" \
- && bash ${WORKSPACE}/check-config.sh || true
- '''
- }
- }
- stage("Build dev image") {
- steps {
- sh '''
- make bundles/buildx
- bundles/buildx build --load --force-rm --build-arg APT_MIRROR -t docker:${GIT_COMMIT} .
- '''
- }
- }
- stage("Unit tests") {
- steps {
- sh '''
- docker run --rm -t --privileged \
- -v "$WORKSPACE/bundles:/go/src/github.com/docker/docker/bundles" \
- --name docker-pr$BUILD_NUMBER \
- -e DOCKER_EXPERIMENTAL \
- -e DOCKER_GITCOMMIT=${GIT_COMMIT} \
- -e DOCKER_GRAPHDRIVER \
- -e VALIDATE_REPO=${GIT_URL} \
- -e VALIDATE_BRANCH=${CHANGE_TARGET} \
- docker:${GIT_COMMIT} \
- hack/test/unit
- '''
- }
- post {
- always {
- junit testResults: 'bundles/junit-report.xml', allowEmptyResults: true
- }
- }
- }
- stage("Integration tests") {
- environment { TEST_SKIP_INTEGRATION_CLI = '1' }
- steps {
- sh '''
- docker run --rm -t --privileged \
- -v "$WORKSPACE/bundles:/go/src/github.com/docker/docker/bundles" \
- --name docker-pr$BUILD_NUMBER \
- -e DOCKER_EXPERIMENTAL \
- -e DOCKER_GITCOMMIT=${GIT_COMMIT} \
- -e DOCKER_GRAPHDRIVER \
- -e TESTDEBUG \
- -e TEST_SKIP_INTEGRATION_CLI \
- -e TIMEOUT \
- -e VALIDATE_REPO=${GIT_URL} \
- -e VALIDATE_BRANCH=${CHANGE_TARGET} \
- docker:${GIT_COMMIT} \
- hack/make.sh \
- dynbinary \
- test-integration
- '''
- }
- post {
- always {
- junit testResults: 'bundles/**/*-report.xml', allowEmptyResults: true
- }
- }
- }
- }
-
- post {
- always {
- sh '''
- echo "Ensuring container killed."
- docker rm -vf docker-pr$BUILD_NUMBER || true
- '''
-
- sh '''
- echo "Chowning /workspace to jenkins user"
- docker run --rm -v "$WORKSPACE:/workspace" busybox chown -R "$(id -u):$(id -g)" /workspace
- '''
-
- catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE', message: 'Failed to create bundles.tar.gz') {
- sh '''
- bundleName=ppc64le-integration
- echo "Creating ${bundleName}-bundles.tar.gz"
- # exclude overlay2 directories
- find bundles -path '*/root/*overlay2' -prune -o -type f \\( -name '*-report.json' -o -name '*.log' -o -name '*.prof' -o -name '*-report.xml' \\) -print | xargs tar -czf ${bundleName}-bundles.tar.gz
- '''
-
- archiveArtifacts artifacts: '*-bundles.tar.gz', allowEmptyArchive: true
- }
- }
- cleanup {
- sh 'make clean'
- deleteDir()
- }
- }
- }
- stage('ppc64le integration-cli') {
- when {
- beforeAgent true
- not { changeRequest() }
- expression { params.ppc64le }
- }
- agent { label 'ppc64le-ubuntu-1604' }
- // ppc64le machines run on Docker 18.06, and buildkit has some
- // bugs on that version. Build and use buildx instead.
- environment {
- USE_BUILDX = '1'
- DOCKER_BUILDKIT = '0'
- }
-
- stages {
- stage("Print info") {
- steps {
- sh 'docker version'
- sh 'docker info'
- sh '''
- echo "check-config.sh version: ${CHECK_CONFIG_COMMIT}"
- curl -fsSL -o ${WORKSPACE}/check-config.sh "https://raw.githubusercontent.com/moby/moby/${CHECK_CONFIG_COMMIT}/contrib/check-config.sh" \
- && bash ${WORKSPACE}/check-config.sh || true
- '''
- }
- }
- stage("Build dev image") {
- steps {
- sh '''
- make bundles/buildx
- bundles/buildx build --load --force-rm --build-arg APT_MIRROR -t docker:${GIT_COMMIT} .
- '''
- }
- }
- stage("Integration-cli tests") {
- environment { TEST_SKIP_INTEGRATION = '1' }
- steps {
- sh '''
- docker run --rm -t --privileged \
- -v "$WORKSPACE/bundles:/go/src/github.com/docker/docker/bundles" \
- --name docker-pr$BUILD_NUMBER \
- -e DOCKER_GITCOMMIT=${GIT_COMMIT} \
- -e DOCKER_GRAPHDRIVER \
- -e TEST_SKIP_INTEGRATION \
- -e TIMEOUT \
- -e VALIDATE_REPO=${GIT_URL} \
- -e VALIDATE_BRANCH=${CHANGE_TARGET} \
- docker:${GIT_COMMIT} \
- hack/make.sh \
- dynbinary \
- test-integration
- '''
- }
- post {
- always {
- junit testResults: 'bundles/**/*-report.xml', allowEmptyResults: true
- }
- }
- }
- }
-
- post {
- always {
- sh '''
- echo "Ensuring container killed."
- docker rm -vf docker-pr$BUILD_NUMBER || true
- '''
-
- sh '''
- echo "Chowning /workspace to jenkins user"
- docker run --rm -v "$WORKSPACE:/workspace" busybox chown -R "$(id -u):$(id -g)" /workspace
- '''
-
- catchError(buildResult: 'SUCCESS', stageResult: 'FAILURE', message: 'Failed to create bundles.tar.gz') {
- sh '''
- bundleName=ppc64le-integration-cli
- echo "Creating ${bundleName}-bundles.tar.gz"
- # exclude overlay2 directories
- find bundles -path '*/root/*overlay2' -prune -o -type f \\( -name '*-report.json' -o -name '*.log' -o -name '*.prof' -o -name '*-report.xml' \\) -print | xargs tar -czf ${bundleName}-bundles.tar.gz
- '''
-
- archiveArtifacts artifacts: '*-bundles.tar.gz', allowEmptyArchive: true
- }
- }
- cleanup {
- sh 'make clean'
- deleteDir()
- }
- }
- }
stage('arm64') {
when {
beforeAgent true
@@ -965,7 +563,7 @@
}
stage("Build dev image") {
steps {
- sh 'docker build --force-rm --build-arg APT_MIRROR -t docker:${GIT_COMMIT} .'
+ sh 'docker build --force-rm -t docker:${GIT_COMMIT} .'
}
}
stage("Unit tests") {
diff --git a/Makefile b/Makefile
index 98d0561..542d524 100644
--- a/Makefile
+++ b/Makefile
@@ -46,7 +46,6 @@
#
DOCKER_ENVS := \
-e DOCKER_CROSSPLATFORMS \
- -e BUILD_APT_MIRROR \
-e BUILDFLAGS \
-e KEEPBUNDLE \
-e DOCKER_BUILD_ARGS \
@@ -124,8 +123,6 @@
DOCKER_PORT_FORWARD := $(if $(DOCKER_PORT),-p "$(DOCKER_PORT)",)
DOCKER_FLAGS := $(DOCKER) run --rm -i --privileged $(DOCKER_CONTAINER_NAME) $(DOCKER_ENVS) $(DOCKER_MOUNT) $(DOCKER_PORT_FORWARD)
-BUILD_APT_MIRROR := $(if $(DOCKER_BUILD_APT_MIRROR),--build-arg APT_MIRROR=$(DOCKER_BUILD_APT_MIRROR))
-export BUILD_APT_MIRROR
SWAGGER_DOCS_PORT ?= 9000
@@ -149,7 +146,7 @@
DOCKER_BUILD_ARGS += --build-arg=SYSTEMD=true
endif
-BUILD_OPTS := ${BUILD_APT_MIRROR} ${DOCKER_BUILD_ARGS} ${DOCKER_BUILD_OPTS} -f "$(DOCKERFILE)"
+BUILD_OPTS := ${DOCKER_BUILD_ARGS} ${DOCKER_BUILD_OPTS} -f "$(DOCKERFILE)"
ifdef USE_BUILDX
BUILD_OPTS += $(BUILDX_BUILD_EXTRA_OPTS)
BUILD_CMD := $(BUILDX) build