Configuration References
Manifest
Understanding the update manifest in Thistle OTA
The manifest file defines a release to the Thistle Update Client. Manifests are typically handled and amended by the Thistle Release Helper.
All fields are strings aside from version
, which is an unsigned integer.
Example manifest
Manifest fields
Name | Description |
---|---|
name | Name of the release |
id | Id of the release (ulid form) |
ts | Timestamp of last modification (seconds since epoch) |
version | Current release number |
comment | Free form comment |
signature | Signature of this manifest |
pre_install | Command to run before the installation of this manifest. Note: a failure of this script will revert any installed asset |
post_install | Command to run after the installation of this manifest. Note: a failure of this script will revert any installed asset |
post_reboot | Command to run after rebooting the device following the installation of this manifest. Note: a failure of this script will revert any installed asset and issue another reboot |
rootfs | Rootfs (specified below) |
files | Array of files (specified below) |
File fields
Name | Description |
---|---|
name | Filename |
install_location | Install destination on device |
download_location | Download source URL |
hash | Hash of the compressed file |
pre_install | Command to run before the installation of this file. Note: a failure of this script will revert any installed asset |
post_install | Command to run after the installation of this file. Note: a failure of this script will revert any installed asset |
Rootfs fields
Name | Description |
---|---|
name | Image name |
download_location | Download source URL |
hash | Hash of the compressed rootfs image |
pre_install | Command to run before the installation of this image. Note: a failure of this script will revert any installed asset |
post_install | Command to run after the installation of this image. Note: a failure of this script will revert any installed asset |
Manual manifest fetching
If you prefer to fetch the update manifest manually, you can do so with the following command. This can be useful if you want to use a customized update client. The ID and Token defined in the command below are the obtained at the end of the device provisioning process.