Merge pull request #12538 from liewegas/wip-workunits

qa/tasks/workunit: retry on ceph.git if checkout fails

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
This commit is contained in:
Sage Weil 2016-12-16 15:38:24 -06:00 committed by GitHub
commit 26ab33ae79

View File

@ -309,6 +309,7 @@ def _run_tests(ctx, refspec, role, tests, env, subdir=None, timeout=None):
srcdir = '{cdir}/qa/workunits'.format(cdir=clonedir)
git_url = teuth_config.get_ceph_git_url()
try:
remote.run(
logger=log.getChild(role),
args=[
@ -322,6 +323,27 @@ def _run_tests(ctx, refspec, role, tests, env, subdir=None, timeout=None):
'git', 'checkout', refspec,
],
)
except CommandFailedError:
alt_git_url = git_url.replace('ceph-ci', 'ceph')
log.info(
"failed to check out '%s' from %s; will also try in %s",
refspec,
git_url,
alt_git_url,
)
remote.run(
logger=log.getChild(role),
args=[
'git',
'clone',
alt_git_url,
clonedir,
run.Raw(';'),
'cd', '--', clonedir,
run.Raw('&&'),
'git', 'checkout', refspec,
],
)
remote.run(
logger=log.getChild(role),