diff options
Diffstat (limited to 'cros_utils/locks.py')
-rw-r--r-- | cros_utils/locks.py | 67 |
1 files changed, 35 insertions, 32 deletions
diff --git a/cros_utils/locks.py b/cros_utils/locks.py index 848e23fc..db6f4343 100644 --- a/cros_utils/locks.py +++ b/cros_utils/locks.py @@ -1,49 +1,52 @@ # -*- coding: utf-8 -*- # -# Copyright 2019 The Chromium OS Authors. All rights reserved. +# Copyright 2019 The ChromiumOS Authors # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. """Utilities for locking machines.""" -from __future__ import print_function import time -import lock_machine - from cros_utils import logger +import lock_machine def AcquireLock(machines, chromeos_root, timeout=1200): - """Acquire lock for machine(s) with timeout.""" - start_time = time.time() - locked = True - sleep_time = min(10, timeout / 10.0) - while True: - try: - lock_machine.LockManager(machines, False, - chromeos_root).UpdateMachines(True) - break - except Exception as e: - if time.time() - start_time > timeout: - locked = False - logger.GetLogger().LogWarning( - 'Could not acquire lock on {0} within {1} seconds: {2}'.format( - repr(machines), timeout, str(e))) - break - time.sleep(sleep_time) - return locked + """Acquire lock for machine(s) with timeout.""" + start_time = time.time() + locked = True + sleep_time = min(10, timeout / 10.0) + while True: + try: + lock_machine.LockManager( + machines, False, chromeos_root + ).UpdateMachines(True) + break + except Exception as e: + if time.time() - start_time > timeout: + locked = False + logger.GetLogger().LogWarning( + "Could not acquire lock on {0} within {1} seconds: {2}".format( + repr(machines), timeout, str(e) + ) + ) + break + time.sleep(sleep_time) + return locked def ReleaseLock(machines, chromeos_root): - """Release locked machine(s).""" - unlocked = True - try: - lock_machine.LockManager(machines, False, - chromeos_root).UpdateMachines(False) - except Exception as e: - unlocked = False - logger.GetLogger().LogWarning( - 'Could not unlock %s. %s' % (repr(machines), str(e))) - return unlocked + """Release locked machine(s).""" + unlocked = True + try: + lock_machine.LockManager(machines, False, chromeos_root).UpdateMachines( + False + ) + except Exception as e: + unlocked = False + logger.GetLogger().LogWarning( + "Could not unlock %s. %s" % (repr(machines), str(e)) + ) + return unlocked |