| plans: | |
| - name: cros | |
| criticalactions: | |
| - name: 'Set state: repair_failed (''dut_set_state'') (RUN_ONCE)' | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| recoveries: | |
| - name: Power cycle DUT by RPM and wait ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: has_rpm_info | |
| dependencies: | |
| - name: rpm_power_cycle | |
| - name: Wait to be pingable (normal boot) ('cros_ping') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Ensure firmware is in good state ('cros_is_firmware_in_good_state') | |
| conditions: | |
| - name: dut_is_not_browser_legacy_duts | |
| dependencies: | |
| - name: Internal storage is responsive ('cros_is_file_system_writable') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| recoveries: | |
| - name: Power cycle DUT by RPM and wait ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: has_rpm_info | |
| dependencies: | |
| - name: rpm_power_cycle | |
| - name: Wait to be pingable (normal boot) ('cros_ping') (ALWAYS_RUN) (time:'2m30s') | |
| recoveries: | |
| - name: Quick provision OS ('sample_pass') | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Internal storage is responsive ('cros_is_file_system_writable') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| dependencies: | |
| - name: Call provision for DUT ('cros_provision') (ALWAYS_RUN) (time:'1h0m0s') | |
| - name: Remove PROVISION repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Repair by powerwash ('sample_pass') | |
| conditions: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Internal storage is responsive ('cros_is_file_system_writable') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| dependencies: | |
| - name: Write factory-install-reset to file system (Allow to fail) ('cros_run_shell_command') | |
| - name: Simple reboot ('cros_run_command') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Call provision for DUT ('cros_provision') (ALWAYS_RUN) (time:'1h0m0s') | |
| - name: Remove PROVISION repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| recoveries: | |
| - name: Fix FW on the DUT to match stable-version and wait to boot ('sample_pass') | |
| dependencies: | |
| - name: Fix FW on the DUT to match stable-version (Allow to fail) ('cros_update_firmware_from_firmware_image') (time:'2h0m0s') | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Recovery version has firmware image path ('has_stable_version_fw_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| dependencies: | |
| - name: Provision OS if needed ('sample_pass') | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: DUT not on stable version ('cros_not_on_stable_version') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Call provision for DUT ('cros_provision') (ALWAYS_RUN) (time:'1h0m0s') | |
| - name: Remove PROVISION repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Disable software-controlled write-protect for 'internal' (Allow to fail) ('cros_disable_fprom_write_protect') (ALWAYS_RUN) (time:'5m0s') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Disable software-controlled write-protect for 'ec' (Allow to fail) ('cros_disable_fprom_write_protect') (ALWAYS_RUN) (time:'5m0s') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Simple reboot ('cros_run_command') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: RO Firmware validations without servo ('cros_is_on_ro_firmware_stable_version') | |
| conditions: | |
| - name: dut_is_not_browser_legacy_duts | |
| - name: has_stable_version_fw_version | |
| - name: has_stable_version_fw_image | |
| recoveries: | |
| - name: Fix FW on the DUT to match stable-version and wait to boot ('sample_pass') | |
| dependencies: | |
| - name: Fix FW on the DUT to match stable-version (Allow to fail) ('cros_update_firmware_from_firmware_image') (time:'2h0m0s') | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Recovery version has firmware image path ('has_stable_version_fw_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| dependencies: | |
| - name: Provision OS if needed ('sample_pass') | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: DUT not on stable version ('cros_not_on_stable_version') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Call provision for DUT ('cros_provision') (ALWAYS_RUN) (time:'1h0m0s') | |
| - name: Remove PROVISION repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Disable software-controlled write-protect for 'internal' (Allow to fail) ('cros_disable_fprom_write_protect') (ALWAYS_RUN) (time:'5m0s') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Disable software-controlled write-protect for 'ec' (Allow to fail) ('cros_disable_fprom_write_protect') (ALWAYS_RUN) (time:'5m0s') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Simple reboot ('cros_run_command') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Has repair-request for re-provision ('dut_has_any_repair_requests') | |
| recoveries: | |
| - name: Quick provision OS ('sample_pass') | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| - name: Internal storage is responsive ('cros_is_file_system_writable') | |
| dependencies: | |
| - name: Device is SSHable ('cros_ssh') (ALWAYS_RUN) (time:'15s') | |
| dependencies: | |
| - name: Call provision for DUT ('cros_provision') (ALWAYS_RUN) (time:'1h0m0s') | |
| - name: Remove PROVISION repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Install OS in recovery mode by booting from servo USB-drive (no storage check) ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is a Chromebook ('dut_check_board') (RUN_ONCE) | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| dependencies: | |
| - name: Servo USB-Key needs to be reflashed ('sample_pass') | |
| conditions: | |
| - name: It is time to update USB-drive image ('cros_is_time_to_force_download_image_to_usbkey') | |
| dependencies: | |
| - name: Download stable image to USB-key (Allow to fail) ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Download stable version OS image to servo usbkey if necessary (allow fail) (Allow to fail) ('sample_pass') (RUN_ONCE) | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Stable version image is missing from servo usbkey ('sample_fail') | |
| conditions: | |
| - name: Servo usbkey has stable image ('servo_usbkey_has_stable_image') | |
| dependencies: | |
| - name: servo_servod_echo_host | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Boot DUT in recovery and install from USB-drive (no storage check) ('cros_install_in_recovery_mode') (ALWAYS_RUN) (time:'2h13m20s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Remove REIMAGE_BY_USBKEY repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Install OS in recovery mode by booting from servo USB-drive (with FW update) ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Recovery version has firmware image path ('has_stable_version_fw_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is a Chromebook ('dut_check_board') (RUN_ONCE) | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| dependencies: | |
| - name: Flash EC (FW) by servo (allowed failed) (Allow to fail) ('cros_update_fw_with_fw_image_by_servo') (time:'1h50m0s') | |
| conditions: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| dependencies: | |
| - name: Recovery version has firmware image path ('has_stable_version_fw_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Sleep 60 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'1m10s') | |
| - name: Disable software write protection via servo (Allow to fail) ('cros_disable_software_write_protection_by_servo') (time:'1m0s') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Flash AP (FW) with GBB 0x18 by servo (Allow to fail) ('cros_update_fw_with_fw_image_by_servo') (time:'1h30m0s') | |
| conditions: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| dependencies: | |
| - name: Recovery version has firmware image path ('has_stable_version_fw_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Servo USB-Key needs to be reflashed ('sample_pass') | |
| conditions: | |
| - name: It is time to update USB-drive image ('cros_is_time_to_force_download_image_to_usbkey') | |
| dependencies: | |
| - name: Download stable image to USB-key (Allow to fail) ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Download stable version OS image to servo usbkey if necessary (allow fail) (Allow to fail) ('sample_pass') (RUN_ONCE) | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Stable version image is missing from servo usbkey ('sample_fail') | |
| conditions: | |
| - name: Servo usbkey has stable image ('servo_usbkey_has_stable_image') | |
| dependencies: | |
| - name: servo_servod_echo_host | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Boot DUT in recovery and install from USB-drive ('cros_install_in_recovery_mode') (ALWAYS_RUN) (time:'2h13m20s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Remove REIMAGE_BY_USBKEY repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Install OS in recovery mode by booting from servo USB-drive (Flex) ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Device does not have Intel AMT ('sample_fail') | |
| dependencies: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| dependencies: | |
| - name: Servo USB-Key needs to be reflashed ('sample_pass') | |
| conditions: | |
| - name: It is time to update USB-drive image ('cros_is_time_to_force_download_image_to_usbkey') | |
| dependencies: | |
| - name: Download stable image to USB-key (Allow to fail) ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Download stable version OS image to servo usbkey if necessary (allow fail) (Allow to fail) ('sample_pass') (RUN_ONCE) | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Stable version image is missing from servo usbkey ('sample_fail') | |
| conditions: | |
| - name: Servo usbkey has stable image ('servo_usbkey_has_stable_image') | |
| dependencies: | |
| - name: servo_servod_echo_host | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Direct USB-drive to DUT ('servo_set') (ALWAYS_RUN) (time:'20s') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Boot Flex from USB on next boot ('cros_flex_usb_nextboot') (ALWAYS_RUN) | |
| conditions: | |
| - name: Device has UEFI firmware ('cros_run_command') (ALWAYS_RUN) | |
| - name: Power OFF DUT by servo ('servo_set') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Sleep 10 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'11s') | |
| - name: Power ON DUT by servo ('servo_set') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Sleep 10 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'11s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Print active devices (Allow to fail) ('cros_run_command') (ALWAYS_RUN) | |
| - name: Is Flex booted from USB-drive ('cros_run_command') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Run chromeos-install for Flex ('cros_run_command') (ALWAYS_RUN) (time:'10m0s') | |
| dependencies: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Sleep 10 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'11s') | |
| - name: Power-off the DUT using AMT ('cros_flex_amt_power_off') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Direct USB-drive to servo host ('servo_set') (ALWAYS_RUN) (time:'20s') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Power-on the DUT using AMT ('cros_flex_amt_power_on') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Remove REIMAGE_BY_USBKEY repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Install OS in recovery mode by booting from servo USB-drive (Flex with AMT) ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Device has Intel AMT ('sample_pass') | |
| dependencies: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| dependencies: | |
| - name: Servo USB-Key needs to be reflashed ('sample_pass') | |
| conditions: | |
| - name: It is time to update USB-drive image ('cros_is_time_to_force_download_image_to_usbkey') | |
| dependencies: | |
| - name: Download stable image to USB-key (Allow to fail) ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Download stable version OS image to servo usbkey if necessary (allow fail) (Allow to fail) ('sample_pass') (RUN_ONCE) | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Stable version image is missing from servo usbkey ('sample_fail') | |
| conditions: | |
| - name: Servo usbkey has stable image ('servo_usbkey_has_stable_image') | |
| dependencies: | |
| - name: servo_servod_echo_host | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Call servod to download image to USB-key ('servo_download_image_to_usb') (ALWAYS_RUN) (time:'50m0s') | |
| - name: Remove UPDATE_USBKEY_IMAGE repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Direct USB-drive to DUT ('servo_set') (ALWAYS_RUN) (time:'20s') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Power-off the DUT using AMT ('cros_flex_amt_power_off') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Sleep 10 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'11s') | |
| - name: Power-on the DUT using AMT ('cros_flex_amt_power_on') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Sleep 10 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'11s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Print active devices (Allow to fail) ('cros_run_command') (ALWAYS_RUN) | |
| - name: Is Flex booted from USB-drive ('cros_run_command') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Run chromeos-install for Flex ('cros_run_command') (ALWAYS_RUN) (time:'10m0s') | |
| dependencies: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Sleep 10 seconds (Allow to fail) ('sample_sleep') (ALWAYS_RUN) (time:'11s') | |
| - name: Power-off the DUT using AMT ('cros_flex_amt_power_off') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Direct USB-drive to servo host ('servo_set') (ALWAYS_RUN) (time:'20s') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Power-on the DUT using AMT ('cros_flex_amt_power_on') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Intel AMT is present ('cros_flex_amt_present') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is Flex device ('dut_check_board') (RUN_ONCE) | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Remove REIMAGE_BY_USBKEY repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Install OS in DEV mode, with force to DEV-mode ('sample_pass') | |
| conditions: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is a Chromebook ('dut_check_board') (RUN_ONCE) | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| dependencies: | |
| - name: Set GBB flags to 0x18 by servo (Allow to fail) ('cros_set_gbb_by_servo') (time:'5m0s') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Install OS in DEV mode by USB-drive ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: Recovery version has OS image path ('has_stable_version_cros_image') | |
| dependencies: | |
| - name: Has a stable-version service ('has_stable_version_service_path') (RUN_ONCE) | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Is a Chromebook ('dut_check_board') (RUN_ONCE) | |
| - name: Is servo USB key detected ('servo_usbkey_is_detected') | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| dependencies: | |
| - name: Boot DUT from USB in DEV mode ('cros_dev_mode_boot_from_servo_usb_drive') (ALWAYS_RUN) (time:'10m50s') | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Run install after boot from USB-drive ('cros_run_chromeos_install_command_after_boot_usbdrive') (ALWAYS_RUN) (time:'20m0s') | |
| - name: Cold reset DUT by servo and wait to boot ('sample_pass') (ALWAYS_RUN) | |
| conditions: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| dependencies: | |
| - name: Cold reset DUT by servo ('servo_power_state_reset') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Is servod running ('sample_pass') (ALWAYS_RUN) | |
| dependencies: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Verify servod is responsive ('servod_echo') (ALWAYS_RUN) (time:'10s') | |
| conditions: | |
| - name: Setup has servo info ('dut_servo_host_present') | |
| - name: Wait to be pingable (normal boot) ('cros_ping') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Wait to be SSHable (normal boot) ('cros_ssh') (ALWAYS_RUN) (time:'2m30s') | |
| - name: Remove REIMAGE_BY_USBKEY repair-request ('dut_remove_repair_requests') (ALWAYS_RUN) | |
| - name: Update provisioned info ('cros_update_provision_info') (ALWAYS_RUN) | |
| recoveries: | |
| - name: Sleep 1s (Allow to fail) ('sample_sleep') (ALWAYS_RUN) | |
| - name: 'Set state: ready (''dut_set_state'') (RUN_ONCE)' | |
| dependencies: | |
| - name: All repair-requests resolved ('dut_has_no_repair_requests') | |
| - name: Reset DUT-state reason ('dut_reset_state_reason') | |
| - name: close (Allow to fail) | |
| criticalactions: | |
| - name: Update DUT state for failures more than threshold ('dut_set_state_reason') | |
| conditions: | |
| - name: DUT state is repair_failed ('dut_state_match') | |
| - name: Failure count above threshold ('metrics_check_task_failures') | |
| conditions: | |
| - name: Servo-host known ('dut_servo_host_present') | |
| - name: Failure count above threshold (Servo-less) ('metrics_check_task_failures') | |
| conditions: | |
| - name: No Servo-host ('sample_fail') | |
| conditions: | |
| - name: Servo-host known ('dut_servo_host_present') | |
| - name: 'Set state: needs_manual_repair (Allow to fail) (''dut_set_state'') (ALWAYS_RUN)' |