Beispiel #1
0
 def on_entry(self):
     if not data.device_has_sut_agent(self.machine.device_name):
         self.on_sut_sdcard_ok({})
         return
     def sdcard_verified(success):
         if success:
             mozpool.lifeguard.driver.handle_event(self.machine.device_name,
                                                   'sut_sdcard_ok', {})
         else:
             mozpool.lifeguard.driver.handle_event(self.machine.device_name,
                                                   'sut_sdcard_failed', {})
     sut_api.start_check_sdcard(self.machine.device_name, sdcard_verified)
Beispiel #2
0
    def on_entry(self):
        has_sut_agent = data.device_has_sut_agent(self.machine.device_name)
        has_relay = data.device_relay_info(self.machine.device_name)
        if has_sut_agent and (not has_relay or
                              (self.machine.increment_counter('sut_attempts') <=
                               self.TRY_RELAY_AFTER_SUT_COUNT)):
            self.sut_reboot()
            return

        if has_relay:
            self.relay_powercycle()
        else:
            if has_sut_agent:
                self.logger.error('cannot power-cycle device: SUT reboot '
                                  'failed and no relay')
            else:
                self.logger.error('cannot power-cycle device: no relay nor '
                                  'SUT agent')
            self.machine.goto_state(failed_power_cycling)