From 81f0dcb982f54656997599f57062e1bd9196fc00 Mon Sep 17 00:00:00 2001 From: Justin Newberry Date: Wed, 6 Dec 2023 16:03:13 -0800 Subject: [PATCH] retry docker build --- Jenkinsfile | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index fbe9cb48a4..7489c997ca 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -89,20 +89,22 @@ def pcStage(String stageName, Closure body) { checkout scm def dockerArgs = "--user=batman -v /tmp/comma_download_cache:/tmp/comma_download_cache -v /tmp/scons_cache:/tmp/scons_cache -e PYTHONPATH=${env.WORKSPACE}"; - docker.build("openpilot-base:build-${env.GIT_COMMIT}", "-f Dockerfile.openpilot_base .").inside(dockerArgs) { - timeout(time: 20, unit: 'MINUTES') { - try { - // TODO: remove these after all jenkins jobs are running as batman (merged with master) - sh "sudo chown -R batman:batman /tmp/scons_cache" - sh "sudo chown -R batman:batman /tmp/comma_download_cache" - - sh "git config --global --add safe.directory '*'" - sh "git submodule update --init --recursive" - sh "git lfs pull" - body() - } finally { - sh "rm -rf ${env.WORKSPACE}/* || true" - sh "rm -rf .* || true" + retry (3) { + docker.build("openpilot-base:build-${env.GIT_COMMIT}", "-f Dockerfile.openpilot_base .").inside(dockerArgs) { + timeout(time: 20, unit: 'MINUTES') { + try { + // TODO: remove these after all jenkins jobs are running as batman (merged with master) + sh "sudo chown -R batman:batman /tmp/scons_cache" + sh "sudo chown -R batman:batman /tmp/comma_download_cache" + + sh "git config --global --add safe.directory '*'" + sh "git submodule update --init --recursive" + sh "git lfs pull" + body() + } finally { + sh "rm -rf ${env.WORKSPACE}/* || true" + sh "rm -rf .* || true" + } } } }