Open PenelopeFudd opened 1 year ago
Sadly this is impossible as the docker-systemctl-replacement is not a server that can watch its children. It can not see the returncode of the ExecStart process - it will only detect a "failed" service when that Pid has vanished.
The other thing about supporting "-+" prefix is a different thing however. Currently "+" for "nouser" is ignored, so when python3 is not accessible by user rabbitmq then it fails. This may change in the future.
Ok, good to know.
I had been under the impression that it could see the return value of the exec() call if it exited immediately (daemonized, for instance), just not if the exec() call kept running.
In this case, is it trying to exec() the program +/home/application/bin/python3
and failing?
Wouldn't it be possible to say Path '%s' is not absolute, will not exec()
, or if relative paths are allowed, then just Pathname '%s' not found, will not exec()
?
That would be helpful whether or not +
for nouser
is implemented.
Hi;
We have an Ansible deployment script that installs this service file:
When we start the service, we get this:
The error message turned out to be a red herring. Neither the Ansible script nor the service file has been changed in over a year, and the error message has apparently been printed all this time without returning an error code.
The true error turns out to be that we changed a password in rabbitmq's configuration file, and we failed to url-escape it. When ExecStart runs, the server writes an error to a random log file and exits with a non-zero return code.
It would be nice if systemctl had printed
Thanks!