+
Skip to content

orb-hil/v0.0.2-beta.4+MM

Latest

Choose a tag to compare

@github-actions github-actions released this 18 Oct 14:35
92d7df1
feat(orb-hil): add ota command (#734)

# Add OTA  Command to orb-hil

## Overview
This PR adds **OTA** command to the `orb-hil` binary. This command
provide functionality for updating Orbs and performing post-update
verification

## Notes

- Currently uses ssh connection with password, until we add the HIL ssh
key into a release
### OTA Command

```sh
Over-The-Air update command for the Orb

Usage: orb-hil ota [OPTIONS] --target-version <TARGET_VERSION> --hostname <HOSTNAME> --platform <PLATFORM> --log-file <LOG_FILE> <--serial-path <SERIAL_PATH>|--serial-id <SERIAL_ID>> <--password <PASSWORD>|--key-path <KEY_PATH>>

Options:
      --target-version <TARGET_VERSION>
          Target version to update to
      --hostname <HOSTNAME>
          Hostname of the Orb device
      --username <USERNAME>
          Username [default: worldcoin]
      --password <PASSWORD>
          Password for authentication (mutually exclusive with --key-path)
      --key-path <KEY_PATH>
          Path to SSH private key for authentication (mutually exclusive with --password)
      --port <PORT>
          SSH port for the Orb device [default: 22]
      --platform <PLATFORM>
          Platform type (diamond or pearl) [possible values: diamond, pearl]
      --timeout-secs <TIMEOUT_SECS>
          Timeout for the entire OTA process in seconds [default: 7200]
      --log-file <LOG_FILE>
          Path to save journalctl logs from worldcoin-update-agent.service
      --max-reconnect-attempts <MAX_RECONNECT_ATTEMPTS>
          Maximum reconnection attempts after reboot [default: 50]
      --reconnect-sleep-secs <RECONNECT_SLEEP_SECS>
          Sleep time between reconnection attempts in seconds [default: 5]
      --serial-path <SERIAL_PATH>
          Serial port path for boot log capture
      --serial-id <SERIAL_ID>
          Serial port ID for boot log capture (alternative to --serial-path)
  -h, --help
          Print help
```
#### Steps
- Get current slot
- On diamond: wipe overlays and reboot (gather boot logs)
- Update `versions.json` with the new version for the current slot
- Restart `update-agent` service
- Monitor `update-agent` logs until failure/reboot (gather boot logs)
- Run update-verifier

---------

Co-authored-by: AlexKaravaev <30314738+AlexKaravaev@users.noreply.github.com>
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载