diff --git a/osc/babysitter.py b/osc/babysitter.py index 8b2085ea..f33a899d 100644 --- a/osc/babysitter.py +++ b/osc/babysitter.py @@ -36,6 +36,14 @@ except: pass +try: + from keyring.errors import KeyringLocked +except ImportError: + # python-keyring is not installed + class KeyringLocked: + pass + + # the good things are stolen from Matt Mackall's mercurial @@ -178,6 +186,8 @@ def run(prg, argv=None): print(f'{e.fname}:', e.msg, file=sys.stderr) except RPMError as e: print(e, file=sys.stderr) + except KeyringLocked as e: + print(e, file=sys.stderr) except CertVerificationError as e: print(e, file=sys.stderr) except urllib3.exceptions.MaxRetryError as e: