Add 5s timeout to cleanup commands
Sometimes shutdown takes a while due to adb issues, gracefully terminate
with a timeout. This will throw an exception if timeout occured, telling
the developer that something went wrong.
Test: python3 update_device.py ota.zip
Change-Id: I44edc6a291fc682b9439ab97f2880d47dc4e457b
diff --git a/scripts/update_device.py b/scripts/update_device.py
index b784b1b..3ce40a5 100755
--- a/scripts/update_device.py
+++ b/scripts/update_device.py
@@ -350,7 +350,7 @@
if self._device_serial:
self._command_prefix += ['-s', self._device_serial]
- def adb(self, command):
+ def adb(self, command, timeout_seconds: float = None):
"""Run an ADB command like "adb push".
Args:
@@ -365,7 +365,7 @@
command = self._command_prefix + command
logging.info('Running: %s', ' '.join(str(x) for x in command))
p = subprocess.Popen(command, universal_newlines=True)
- p.wait()
+ p.wait(timeout_seconds)
return p.returncode
def adb_output(self, command):
@@ -546,7 +546,7 @@
if server_thread:
server_thread.StopServer()
for cmd in finalize_cmds:
- dut.adb(cmd)
+ dut.adb(cmd, 5)
return 0