Create Release
Releases can be created with ether HexDroid Web app, or via HexDroid CLI Tool (useful for automated release creation e.g. in CI).
HexDroid Web App
Create release
Releases can be manually created through the HexDroid Web interface. To create a new release, follow these steps:
navigate to Releases
-> Create release
-> Then fill in the base information about this release.
NOTE: Creating release will not make it available to end devices, for that rollout needs to be created (see next steps).
Upload release payload
After release is created, we need to upload payloads - files/binaries that are associated with this release.
To upload payloads, navigate to Releases
-> find your release -> Payloads
tab -> Add Payload
.
Then, click Add payload
, select a file, choose if this payload is distributable and fill in the payload type.
After uploading files, they will be visible in Payloads
tab:
Create rollout
After release is created, payloads uploaded - it's time to create a rollout for this release,
once rollout is created to it will be available to selected Cohort.
To create rollout, navigate to Releases
-> find your release -> Rollout
tab -> Create rollout
.
Activate
Halt
If you need to stop rollout (halt) for whatever reason, create new rollout and halt it, like this:
HexDroid CLI
Uploading release files and deploying updates from your CI system is a great way to automate the process of releasing new versions. This guide will show you how to use the HexDroid CLI to upload release files and deploy updates from your CI system.
The HexDroid CLI is used to upload release files and deploy updates, invoke these commands after you have built your software/firmware.
Create release
hexdroid-cli ota new-release \
--apiKey=<apiKey> \
--target=<target> \
--versionCode=versionCode \
--versionName=<versionName>
Upload release payload
hexdroid-cli ota upload-payload \
--distributed=<distributed> \
--apiKey=<apiKey> \
--file=<file> \
--target=<target> \
--type=<payloadType> \
--versionCode=<versionCode>
Create rollout
When release payloads are uploaded, to start the rollout to fleet, issue this command, after rollout is activated - this release will be available to selected fleet devices.
Activate
hexdroid-cli ota new-rollout \
--apiKey=<apiKey> \
--cohortName=<cohortName> \
--target=<target> \
--versionCode=<versionCode> \
--activate=<rollout_percentage>
Halt
To abort/halt release you can issue this command, this will stop any new devices in the cohort from receiving this update.
hexdroid-cli ota new-rollout \
--apiKey=<apiKey> \
--cohortName=<cohortName> \
--target=<target> \
--versionCode=<versionCode> \
--halt