Device Labels

Device labels are the main unit of organization for devices. Labels are simply user-defined key value pairs that are assignable to devices individually, or in bulk, as part of a provisioning workflow.


The primary use of labels is to model the organization your devices. Each differentiating feature of your devices can be labeled, some common examples may be:

KeyExample ValuesUsage
device-type for the type of a devicedevice-type=raspberry-pi or device-type=dell-precision-7920Can be used for scheduling different application builds to different types of devices (e.g. thin clients vs edge servers)
customer for the customer a device was sent tocustomer=NASA or customer=SpaceXTo allow specific customers to run a specific application version, or to separate metrics based on a customer, for easier debugging during incidents
canary for canary devicescanary=true or canary=falseTo always run the latest application build on selected "canary" devices, while letting other devices run more stable application builds


By themselves, labels are informational, and only moderately useful. However, labels are heavily incorporated into various Deviceplane features. Now, using your labels, you can query devices, from the UI and CLI, as well as conditionally scheduling applications and pinning application releases.