Skip to content

Release channels

A release channel is a coarse stream a device subscribes to. Common choices:

  • stable: production fleet (default).
  • beta: opt-in early adopters.
  • dev: internal devices and CI rigs.

A device belongs to exactly one channel at a time. This is deliberately simple: channels answer "how aggressive should this unit's update cadence be?".

Channel vs group

  • Group: explicit membership; many per device; expresses customer / region / role.
  • Channel: exactly one per device; expresses release-stream affinity.

A deployment can target channels, groups, or both. Targeting more than one channel, or more than one group, widens that axis. Targeting both axes narrows: a device must be on one of the targeted channels and in one of the targeted groups.

An axis you do not target places no constraint, so a deployment aimed at the beta channel alone reaches every device on beta, whatever groups they are in. A deployment aimed at the beta channel and the customer-acme group reaches only Acme's beta devices, which is how you pilot a build with one customer.

Defaults

Auto-registered devices land on the project's default channel (stable unless changed). Move a device to a different channel via the dashboard or the developer API.

Common patterns

  • Internal canary first. Cut a release first to dev channel, watch it, then cut the same artifact to stable at 5%.
  • Customer-specific betas. A beta channel + a customer group lets that customer pilot a build before the rest of the fleet.