Glossary of variables


Identifies the product id in use. This is used by rollouts.


The variables are required to point to the keys which are used to validate and sign the update package.

The keys may or not be stored on the layer. Commonly the keys are not available for developers and passed to the build system using the local.conf file of the autobuilder.


The updatehub can operate using different setup which can be chosen using the UPDATEHUB_IMAGE_TYPE variable. It supports different values, as below:

initramfs - Enables the updatehub gold firmware support; this adds an initramfs based image which is used for the upgrade process. In this mode, the updatehub agent is ran inside an initramfs image which allows for the image to be changed without the need of a spare storage space.

active/inactive - Allow the use of active and inactive images schema. This reduces the downtime of the system as the image can be change without rebooting. The new image is installed in a spare storage area and in next reboot the new image is used. The UPDATEHUB_ACTIVE_INACTIVE_BACKEND variable need to set depending of the machine requirement.


The active and inactive image schema requires a backend to identify and choose the image to be used for next boot. It supports: 'u-boot', 'grub' or 'grub-efi'.


There are multiple installation modes supported. This is usually machine dependent as it depends on the storate type in use. Supported values are: 'copy', 'flash', 'raw', 'tarball', 'ubifs' and 'imxkobs'.


When using the 'copy' or 'tarball' installation mode, some filesystem support packages are required. This variable controls which filesystems should be supported. It supports different values, as 'btrfs', 'ext2', 'ext3', 'ext4', 'f2fs', 'jffs2', 'ubifs', 'vfat' and 'xfs'.

Optional variables:


Specifies the updatehub Server address to use. This is required in case you are running it inside your private cloud.


When using the uhupush task we can override the Access Id and the corresponding Secret for use. This is usually used in auto builders as they may require different credentials depending on the product being build.


Specify the CA certificate bundle to be used for uhupush task. It is currently used by UpdateHub staging server for tests but may be interesting for other users when doing custom server deployments.


This allows more details to be added on a device. This is a very useful variable to applying filters to certain devices. Some examples of attributes: kernel cpu-model mem-total ipinfo-io.


This variable provides the device with an identity, making it easier to recognize each device during operations on UpdateHub Cloud. The supported values ​​are:

primary-iface: is the MAC of the primary network interface.

cpuinfo-serial: It is the serial number of the processor, can be obtained with the command "grep Serial / proc / cpuinfo".

custom: parameter that you can create. To create a customized parameter, simply put UPDATEHUB_DEVICE_IDENTITY + _(underscore) + name such as UPDATEHUB_DEVICE_IDENTITY_updatehub-imx or UPDATEHUB_DEVICE_IDENTITY_updatehub-rpi.


Informs the system version and is based on the Yocto Project's DISTRO_VERSION variable (the version of the distribution).


It allows adding more information at the end of the variable name.


Is a variable configured to install some package in an image that supports UpdateHub, such as an boot configuration package or to install a bootscript.