diff --git a/JenkinsJobs/Builds/DockerImagesBuild.jenkinsfile b/JenkinsJobs/Builds/DockerImagesBuild.jenkinsfile index 5fd225943cf..ebdd1e903b0 100644 --- a/JenkinsJobs/Builds/DockerImagesBuild.jenkinsfile +++ b/JenkinsJobs/Builds/DockerImagesBuild.jenkinsfile @@ -21,44 +21,28 @@ pipeline { ''' } } - stage('Build Docker Images') { + stage('Build and push Docker Images') { steps { - sh '''#!/bin/bash -x - cd ${WORKSPACE}/eclipse.platform.releng.aggregator/cje-production/dockerfiles/ - chmod +x *.sh - (./build-centos_9.sh|tee centos9.log)& - (./build-centos_9_swt_build.sh|tee swt_9_build.log)& - (./build-ubuntu-22.04.sh|tee ubuntu22.log)& - (./build-openSuse-15.sh|tee opensuse_leap.log)& - cd ${WORKSPACE}/eclipse.jdt.core/org.eclipse.jdt.core/docker/ - chmod +x *.sh - (./build-ubuntu-jikespg.sh|tee ubuntuJikespg.log)& - wait - docker images - ''' - } - } - stage('Push docker image') { - steps { - withDockerRegistry([credentialsId: 'docker.com-bot', url: '']) { - sh '''#!/bin/bash -x - cd ${WORKSPACE}/eclipse.platform.releng.aggregator/cje-production/dockerfiles/ - chmod +x *.sh - (./push-centos_9.sh|tee push-centos9.log)& - (./push-centos9_swt_build.sh|tee push-swt_9_build.log)& - (./push-ubuntu-22.04.sh|tee push-ubuntu22.log)& - (./push-opensuse-15.sh|tee push-opensuse_leap.log)& - cd ${WORKSPACE}/eclipse.jdt.core/org.eclipse.jdt.core/docker/ - chmod +x *.sh - (./push-ubuntu-jikespg.sh|tee push-ubuntuJikespg.log)& - wait - ''' + script { + dir('eclipse.platform.releng.aggregator/cje-production/dockerfiles') { + parallel( + 'centos9-gtk4': { buildAndPushImage('centos-gtk4-mutter/9-gtk4', 'eclipse/platformreleng-centos-gtk4-mutter:9') }, + 'centos9-gtk4-swt': { buildAndPushImage('centos-gtk4-mutter/9-swtBuild', 'eclipse/platformreleng-centos-swt-build:9') }, + 'ubuntu-gtk3': { buildAndPushImage('ubuntu-gtk3-metacity/22.04-gtk3', 'eclipse/platformreleng-ubuntu-gtk3-metacity:22.04') }, + 'opensuse-gtk3': { buildAndPushImage('opensuse-gtk3-metacity/15-gtk3', 'eclipse/platformreleng-opensuse-gtk3-metacity:15') }, + failFast: false) + } + dir('eclipse.jdt.core/org.eclipse.jdt.core/docker') { + parallel( + 'jikespg': { buildAndPushImage('jikespg', 'eclipse/platformreleng-ubuntu-gtk3-metacity:jikespg') }, + failFast: false) + } } } } stage('Clean Docker Images') { steps { - sh '''#!/bin/bash -x + sh ''' docker images docker system prune -a -f docker images @@ -74,8 +58,18 @@ pipeline { from:"genie.releng@eclipse.org" } always { - archiveArtifacts '**/*.log' cleanWs() } } } + +def buildAndPushImage(directory, imageId) { + withDockerRegistry([credentialsId: 'docker.com-bot', url: '']) { + sh """ + pushd ${directory} + docker build --pull -t ${imageId} . + docker push ${imageId} + popd + """ + } +} diff --git a/cje-production/dockerfiles/build-centos_9.sh b/cje-production/dockerfiles/build-centos_9.sh deleted file mode 100755 index 10aead6c3ec..00000000000 --- a/cje-production/dockerfiles/build-centos_9.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2022 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -pushd centos-gtk4-mutter/9-gtk4 -echo "Building Centos 9 docker image" -docker build --pull -t eclipse/platformreleng-centos-gtk4-mutter:9 . -popd diff --git a/cje-production/dockerfiles/build-centos_9_swt_build.sh b/cje-production/dockerfiles/build-centos_9_swt_build.sh deleted file mode 100755 index 36ee82c1355..00000000000 --- a/cje-production/dockerfiles/build-centos_9_swt_build.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2022 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -pushd centos-gtk4-mutter/9-swtBuild -echo "Building Centos 9 swt build image" -docker build --pull -t eclipse/platformreleng-centos-swt-build:9 . -popd diff --git a/cje-production/dockerfiles/build-openSuse-15.sh b/cje-production/dockerfiles/build-openSuse-15.sh deleted file mode 100644 index b9a839dfb64..00000000000 --- a/cje-production/dockerfiles/build-openSuse-15.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2021 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -pushd opensuse-gtk3-metacity/15-gtk3 -echo "Building Opensuse Leap 15 docker image" -docker build --pull -t eclipse/platformreleng-opensuse-gtk3-metacity:15 . -popd diff --git a/cje-production/dockerfiles/build-ubuntu-22.04.sh b/cje-production/dockerfiles/build-ubuntu-22.04.sh deleted file mode 100755 index c1e6496a71b..00000000000 --- a/cje-production/dockerfiles/build-ubuntu-22.04.sh +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2022 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -pushd ubuntu-gtk3-metacity/22.04-gtk3 -echo "Building Ubuntu 22.04 docker image" -docker build --pull -t eclipse/platformreleng-ubuntu-gtk3-metacity:22.04 . -popd diff --git a/cje-production/dockerfiles/push-centos9_swt_build.sh b/cje-production/dockerfiles/push-centos9_swt_build.sh deleted file mode 100644 index 38fa1b3bb38..00000000000 --- a/cje-production/dockerfiles/push-centos9_swt_build.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2021 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -docker push eclipse/platformreleng-centos-swt-build:9 diff --git a/cje-production/dockerfiles/push-centos_9.sh b/cje-production/dockerfiles/push-centos_9.sh deleted file mode 100644 index c589bab42f7..00000000000 --- a/cje-production/dockerfiles/push-centos_9.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2021 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -docker push eclipse/platformreleng-centos-gtk4-mutter:9 diff --git a/cje-production/dockerfiles/push-opensuse-15.sh b/cje-production/dockerfiles/push-opensuse-15.sh deleted file mode 100644 index 32a37629a05..00000000000 --- a/cje-production/dockerfiles/push-opensuse-15.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2021 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -docker push eclipse/platformreleng-opensuse-gtk3-metacity:15 diff --git a/cje-production/dockerfiles/push-ubuntu-22.04.sh b/cje-production/dockerfiles/push-ubuntu-22.04.sh deleted file mode 100644 index 06a32d538b4..00000000000 --- a/cje-production/dockerfiles/push-ubuntu-22.04.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -x -#******************************************************************************* -# Copyright (c) 2022 IBM Corporation and others. -# -# This program and the accompanying materials -# are made available under the terms of the Eclipse Public License 2.0 -# which accompanies this distribution, and is available at -# https://www.eclipse.org/legal/epl-2.0/ -# -# SPDX-License-Identifier: EPL-2.0 -# -# Contributors: -# Sravan Kumar Lakkimsetti - initial API and implementation -#******************************************************************************* - -set -e - -docker push eclipse/platformreleng-ubuntu-gtk3-metacity:22.04