From 2a367279f573770098fd7caaf18cd84e192e30bc Mon Sep 17 00:00:00 2001 From: guxianghong Date: Sun, 10 Jan 2021 10:25:21 +0800 Subject: [PATCH] Add arm build lock to avoid parallel arm builds on one Jenkins node (#213) * Add arm build lock to avoid parallel arm builds on one Jenkins node Co-authored-by: Xianghong Gu --- .../centec-arm64/buildimage-centec-arm64-202012/Jenkinsfile | 4 +++- jenkins/centec-arm64/buildimage-centec-arm64-all/Jenkinsfile | 4 +++- .../marvell-armhf/buildimage-mrvl-armhf-202012/Jenkinsfile | 2 ++ jenkins/marvell-armhf/buildimage-mrvl-armhf-all/Jenkinsfile | 2 ++ 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/jenkins/centec-arm64/buildimage-centec-arm64-202012/Jenkinsfile b/jenkins/centec-arm64/buildimage-centec-arm64-202012/Jenkinsfile index 2c3de81aa3ca..8c72d4cc3f7f 100644 --- a/jenkins/centec-arm64/buildimage-centec-arm64-202012/Jenkinsfile +++ b/jenkins/centec-arm64/buildimage-centec-arm64-202012/Jenkinsfile @@ -33,6 +33,7 @@ pipeline { stage('Build') { steps { + lock(resource: "arm_build_${env.NODE_NAME}") { sh '''#!/bin/bash -xe git submodule foreach --recursive '[ -f .git ] && echo "gitdir: $(realpath --relative-to=. $(cut -d" " -f2 .git))" > .git' export DOCKER_DATA_ROOT_FOR_MULTIARCH=/data/march/docker @@ -46,7 +47,8 @@ pipeline { pid=`sudo cat dockerfs/var/run/docker.pid` ; sudo kill $pid fi sudo rm -rf ${DOCKER_DATA_ROOT_FOR_MULTIARCH} - ''' + ''' + } } } diff --git a/jenkins/centec-arm64/buildimage-centec-arm64-all/Jenkinsfile b/jenkins/centec-arm64/buildimage-centec-arm64-all/Jenkinsfile index 2c14d147a5a5..af2ec1f69cd6 100644 --- a/jenkins/centec-arm64/buildimage-centec-arm64-all/Jenkinsfile +++ b/jenkins/centec-arm64/buildimage-centec-arm64-all/Jenkinsfile @@ -33,6 +33,7 @@ pipeline { stage('Build') { steps { + lock(resource: "arm_build_${env.NODE_NAME}") { sh '''#!/bin/bash -xe git submodule foreach --recursive '[ -f .git ] && echo "gitdir: $(realpath --relative-to=. $(cut -d" " -f2 .git))" > .git' export DOCKER_DATA_ROOT_FOR_MULTIARCH=/data/march/docker @@ -46,7 +47,8 @@ pipeline { pid=`sudo cat dockerfs/var/run/docker.pid` ; sudo kill $pid fi sudo rm -rf ${DOCKER_DATA_ROOT_FOR_MULTIARCH} - ''' + ''' + } } } diff --git a/jenkins/marvell-armhf/buildimage-mrvl-armhf-202012/Jenkinsfile b/jenkins/marvell-armhf/buildimage-mrvl-armhf-202012/Jenkinsfile index 10f02accfb21..f15809c352de 100644 --- a/jenkins/marvell-armhf/buildimage-mrvl-armhf-202012/Jenkinsfile +++ b/jenkins/marvell-armhf/buildimage-mrvl-armhf-202012/Jenkinsfile @@ -34,6 +34,7 @@ pipeline { stage('Build') { steps { + lock(resource: "arm_build_${env.NODE_NAME}") { sh '''#!/bin/bash -xe git submodule foreach --recursive '[ -f .git ] && echo "gitdir: $(realpath --relative-to=. $(cut -d" " -f2 .git))" > .git' @@ -53,6 +54,7 @@ if sudo [ -f dockerfs/var/run/docker.pid ] ; then fi sudo rm -rf ${DOCKER_DATA_ROOT_FOR_MULTIARCH} ''' + } } } diff --git a/jenkins/marvell-armhf/buildimage-mrvl-armhf-all/Jenkinsfile b/jenkins/marvell-armhf/buildimage-mrvl-armhf-all/Jenkinsfile index 701fac81fd00..b5a447563781 100644 --- a/jenkins/marvell-armhf/buildimage-mrvl-armhf-all/Jenkinsfile +++ b/jenkins/marvell-armhf/buildimage-mrvl-armhf-all/Jenkinsfile @@ -34,6 +34,7 @@ pipeline { stage('Build') { steps { + lock(resource: "arm_build_${env.NODE_NAME}") { sh '''#!/bin/bash -xe git submodule foreach --recursive '[ -f .git ] && echo "gitdir: $(realpath --relative-to=. $(cut -d" " -f2 .git))" > .git' @@ -53,6 +54,7 @@ if sudo [ -f dockerfs/var/run/docker.pid ] ; then fi sudo rm -rf ${DOCKER_DATA_ROOT_FOR_MULTIARCH} ''' + } } }