This directory contains the snap packaging of the EdgeX platform snap containing all reference core and security services, along with Support Scheduler and Support Notifications.
The platform snap is built automatically and published on the Snap Store as edgexfoundry.
For usage instructions, please refer to Platform Snap section in Getting Started using Snaps.
See the GitHub issues with snap label for current issues.
The snap is defined in snapcraft.yaml and built with snapcraft.
To build, execute the following command from the top-level directory of this repo:
snapcraft
This will create a snap package with .snap
extension. It can be installed locally by setting the --dangerous
flag:
sudo snap install --dangerous <snap-file>
Refer to this guide, for tips on how to quickly debug a build.
The snapcraft overview provides additional details.
This snap has strict confinement which means that it runs in isolation up to a minimum level of access. The minimum access is granted by the connected snap interfaces. Some of the interfaces such as network and network-bind are connected automatically.
To see the available and connected interfaces for this snap:
$ snap connections edgexfoundry
Interface Plug Slot Notes
content edgexfoundry:edgex-secretstore-token - -
home edgexfoundry:home :home -
network edgexfoundry:network :network -
network-bind edgexfoundry:network-bind :network-bind -
removable-media edgexfoundry:removable-media - -
This shows five interface plugs, three of which are connected to corresponding system slots.
The edgex-secretstore-token
snap plug makes it possible to send a token to locally installed EdgeX snaps, such as device and app service snaps. If both snaps are installed from the store and from the official provider, this connection would happen automatically.
A manual connection is possible by running:
sudo snap connect edgexfoundry:edgex-secretstore-token <consumer-snap>:edgex-secretstore-token
Please refer here for further information.