You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug config-loader sources /etc/docker-salt/runtime/functions.sh which calls set -o errexit which will cause the script to exit on any command failure.
It then later runs killall salt-master; killall -9 salt-master
If these commands return non-zero exit (failing to kill processes), the whole script exits and the subsequent daemon restart commands are never called, leaving the daemons stopped.
Looking at the process tree it appears that the salt-master processes are actually of the form:
Hi @mrichar1 thank you very much for opening this issue.
I'll be pleased if you generate a PR to fix the issue, but I know you're working on fixing another bug. So if you don't have time, I'll try to fix this one asap.
Describe the bug
config-loader
sources/etc/docker-salt/runtime/functions.sh
which callsset -o errexit
which will cause the script to exit on any command failure.It then later runs
killall salt-master; killall -9 salt-master
If these commands return non-zero exit (failing to kill processes), the whole script exits and the subsequent daemon restart commands are never called, leaving the daemons stopped.
Looking at the process tree it appears that the salt-master processes are actually of the form:
/opt/saltstack/salt/bin/python3.10 /usr/bin/salt-master
This means that
killall
will always fail as it matches process, not arguments.To match arguments, avoid premature exit, and also catch any runaway api processes, this might be a good alternative:
Happy to generate a PR if this solution suits, or you have a different one in mind?
The text was updated successfully, but these errors were encountered: