After discussing internally we decided that we need the snapd.seeded
unit in the core snap. It is an interface that external groups may
use and that is also used internally by cloud-config.service.
This PR adds a very simple systemd unit to core18. It will run
after core18.start-snapd has finished at which point the system
is fully seeded on UC18. This ensures that the sematnic of the
unit is correct.
During the seeding the unit is replaced with the right one from
snapd (in /etc/systemd/system/snapd.seeded). This means we can
remove the rather nasty hack to restart snapd.seeeded in the
core18.start-snapd unit because snap wait will not start until
snapd is ready (because of the After=core18.start-snapd clause).
After discussing internally we decided that we need the snapd.seeded unit in the core snap. It is an interface that external groups may use and that is also used internally by cloud-config.service.
This PR adds a very simple systemd unit to core18. It will run after core18.start-snapd has finished at which point the system is fully seeded on UC18. This ensures that the sematnic of the unit is correct.
During the seeding the unit is replaced with the right one from snapd (in /etc/systemd/system/snapd.seeded). This means we can remove the rather nasty hack to restart snapd.seeeded in the core18.start-snapd unit because
snap wait
will not start until snapd is ready (because of the After=core18.start-snapd clause).