Example #1
0
 def final_step(self):
     if self.gaia and not self.keep_profile:
         # reset phone when flash gaia and not keep profile
         logger.info('Reset device after shallow flash the Gaia.')
         PhoneReseter().reset_phone(serial=self.serial)
     else:
         # adb shell reboot
         logger.info('Reboot device.')
         AdbWrapper.adb_shell('sync', serial=self.serial)
         AdbWrapper.adb_shell('reboot', serial=self.serial)
     # wait for device, and then check version
     AdbWrapper.adb_wait_for_device(timeout=120)
     logger.info('Check versions.')
     checker = VersionChecker()
     checker.set_serial(self.serial)
     checker.run()
Example #2
0
 def flash_image(self, image):
     try:
         temp_dir = tempfile.mkdtemp()
         logger.debug("Temporary folder: {}".format(temp_dir))
         Decompressor().unzip(image, temp_dir)
         # set the permissions to rwxrwxr-x (509 in python's os.chmod)
         os.chmod(
             temp_dir + "/b2g-distro/flash.sh",
             stat.S_IRUSR
             | stat.S_IWUSR
             | stat.S_IXUSR
             | stat.S_IRGRP
             | stat.S_IWGRP
             | stat.S_IXGRP
             | stat.S_IROTH
             | stat.S_IXOTH,
         )
         os.chmod(
             temp_dir + "/b2g-distro/load-config.sh",
             stat.S_IRUSR
             | stat.S_IWUSR
             | stat.S_IXUSR
             | stat.S_IRGRP
             | stat.S_IWGRP
             | stat.S_IXGRP
             | stat.S_IROTH
             | stat.S_IXOTH,
         )
         while True:
             os.system("cd " + temp_dir + "/b2g-distro; ./flash.sh -f")
             # wait for device, and then check version
             AdbWrapper.adb_wait_for_device(timeout=120)
             logger.info("Check versions.")
             checker = VersionChecker()
             checker.run()
             # flash more than one device
             if not self._flash_again():
                 break
     finally:
         try:
             shutil.rmtree(temp_dir)  # delete directory
         except OSError:
             logger.debug("Cannot remove temporary folder: {}".format(temp_dir))
Example #3
0
 def final_step(self):
     if self.gaia and not self.keep_profile:
         # reset phone when flash gaia and not keep profile
         logger.info('Reset device after shallow flash the Gaia.')
         PhoneReseter().reset_phone(serial=self.serial)
     else:
         # adb shell reboot
         logger.info('Reboot device.')
         AdbWrapper.adb_shell('sync', serial=self.serial)
         AdbWrapper.adb_shell('reboot', serial=self.serial)
     # wait for device, and then check version
     AdbWrapper.adb_wait_for_device(timeout=120)
     logger.info('Check versions.')
     checker = VersionChecker()
     checker.set_serial(self.serial)
     checker.run()