tests: Fix throttling of Docker pulls

fixes #809

(cherry picked from commit e67e4b83b4)
pull/863/head
Alex Willmer 4 years ago
parent 9d404e0b32
commit 6a2d9ec550

@ -15,9 +15,9 @@ batches = [
] ]
] ]
batches.extend( batches.append(ci_lib.throttle(
['docker pull %s' % (ci_lib.image_for_distro(distro),), 'sleep 1'] 'docker pull %s' % (ci_lib.image_for_distro(distro),)
for distro in ci_lib.DISTROS for distro in ci_lib.DISTROS
) ))
ci_lib.run_batches(batches) ci_lib.run_batches(batches)

@ -125,6 +125,20 @@ def combine(batch):
)) ))
def throttle(batch, pause=1):
"""
Add pauses between commands in a batch
>>> throttle(['echo foo', 'echo bar', 'echo baz'])
['echo foo', 'sleep 1', 'echo bar', 'sleep 1', 'echo baz']
"""
def _with_pause(batch, pause):
for cmd in batch:
yield cmd
yield 'sleep %i' % (pause,)
return list(_with_pause(batch, pause))[:-1]
def run_batches(batches): def run_batches(batches):
""" Run shell commands grouped into batches, showing an execution trace. """ Run shell commands grouped into batches, showing an execution trace.

Loading…
Cancel
Save