=== modified file 'lava_dispatcher/actions/deploy.py'
@@ -156,6 +156,13 @@
rootfs_path = download(rootfs_url, tarball_dir)
image_file = os.path.join(tarball_dir, "lava.img")
+ #XXX Hack for removing startupfiles from snowball hwpacks
+ if client.device_type == "snowball_sd":
+ cmd = "sudo linaro-hwpack-replace -r startupfiles-v3 -t %s -i" % hwpack_path
+ rc, output = getstatusoutput(cmd)
+ if rc:
+ raise RuntimeError("linaro-hwpack-replace failed: %s" % output)
+
cmd = ("sudo flock /var/lock/lava-lmc.lck linaro-media-create --hwpack-force-yes --dev %s "
"--image_file %s --binary %s --hwpack %s --image_size 3G" %
(client.device_type, image_file, rootfs_path, hwpack_path))
=== modified file 'lava_dispatcher/client.py'
@@ -140,15 +140,22 @@
def soft_reboot(self):
self.proc.sendline("reboot")
- # set soft reboot timeout 60s, or do a hard reset
- id = self.proc.expect(['Restarting system', pexpect.TIMEOUT],
- timeout=60)
+ # set soft reboot timeout 120s, or do a hard reset
+ id = self.proc.expect(['Will now restart', pexpect.TIMEOUT],
+ timeout=120)
if id != 0:
self.hard_reboot()
def hard_reboot(self):
self.proc.send("~$")
self.proc.sendline("hardreset")
+ # XXX Workaround for snowball
+ if self.device_type == "snowball_sd":
+ time.sleep(10)
+ self.in_master_shell()
+ # Intentionally avoid self.soft_reboot() to prevent looping
+ self.proc.sendline("reboot")
+ self.enter_uboot()
def run_shell_command(self, cmd, response=None, timeout=-1):
self.empty_pexpect_buffer()