Control updates

One important consideration when deploying devices running Ubuntu Core is determining how to control updates, in particular when those updates are for snaps from other publishers (e.g. Canonical). There are two general approaches to controlling snap updates on Ubuntu Core:

  • Validation Sets

    This method uses validation-set assertions. These assertions can be added at runtime to Ubuntu Core devices or seeded at image creation time by specifying one or more validation-set assertions in your model assertion. Validation sets allow a set of interrelated snaps to be validated as a set vs. validating snaps one by one.

  • Device Agent

    This method involves use of a device agent, which is a dedicated service that takes full control of updates on an Ubuntu Core system by use of snapd’s REST API. For more details, please see the snapd-control interface. You may either create your own custom device agent (or use another one available in a store), or use Landscape to fulfill the device management role.