From 9d5039dd141626b2219ebe1d9037d9ca94adf38a Mon Sep 17 00:00:00 2001 From: George Kraft Date: Tue, 4 Sep 2012 16:03:13 -0500 Subject: CXMAN-85: Timeout after 5 minutes on firmware transfers --- cxmanage/target.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cxmanage/target.py b/cxmanage/target.py index 2cced8b..2b49b8d 100644 --- a/cxmanage/target.py +++ b/cxmanage/target.py @@ -493,6 +493,7 @@ class Target: def _wait_for_transfer(self, handle): """ Wait for a firmware transfer to finish""" + counter = 0 while True: time.sleep(1) @@ -501,6 +502,12 @@ class Target: raise CxmanageError("Unable to retrieve transfer info") if result.status != "In progress": break + + # Time out after 5 minutes + counter += 1 + if counter >= 300: + raise CxmanageError("Transfer timed out after 5 minutes") + if result.status != "Complete": raise CxmanageError("Node reported transfer failure") -- cgit v1.2.1