I would like to request auto-connection assertions for the
edgexfoundry snap for the following interfaces:
This is needed for the cassandra and mongodb apps in the snap. The
edgexfoundry snap collects various performance metrics from mongodb, and additionally, the cassandra database fails to start if this interface isn’t connected.
This is also needed for mongodb for performance metrics.
Also needed for mongodb performance metrics.
This is not currently used in the published snap, but will be necessary soon. Currently, we start many of the services inside a single wrapper script which ensures proper ordering, and enabling/disabling of services, but we will be splitting these off into independent services, and to get proper service ordering we need to use
systemd-notify, as the default
daemon: simple, or even
daemon: forking lead to too many race conditions starting up the services and sometimes leads to the services failing to start up on initial install and blocks the install. A rough draft of what the snapcraft.yaml will look like with this change is here.
Additionally, because of the nature of services using systemd-notify, they will fail to start up if the
daemon-notify interface is not connected at install time, which it can only be connected if the interface has an auto-connection assertion as requested here.