view python/example/retry.py @ 788:fa3ad63ec3a3

https://github.com/novas0x2a/config-files/blob/master/.gitconfig#L89
author Jeff Hammel <k0scist@gmail.com>
date Wed, 28 Sep 2016 16:42:20 -0700
parents 88f19ebb43ea
children
line wrap: on
line source

def retry(f, retries=5, args=(), kw=None, exceptions=()):

    kw = kw or {}
    for index in range(retries):
        try:
            return f(*args, **kw)
        except Exception as e:
            if isinstance(e, exceptions):
                print ("something bad happen")
            else:
                raise
    raise RetryTimeout("Tries a bunch of times :(")