Here is the latest version of the process lifecycle work we have in 2.32.5:
We support for each snap app that is a daemon:
- refresh-mode: {endure,restart} which controls if the app should be restarted at all
- stop-mode: {sigterm,sigterm-all,sighub,sighub-all,sigusr1,sigusr1-all,sigusr2,sigusr2-all} which controls how the daemon should be stopped. The given signal is send to the main PID (when used without -all) or to all PIDs in the process group when the -all suffix is used.
So you you just want to restart your daemon but keep all the children alive you can just use “stop-mode: sigterm”.