units: do not ignore return value from systemd --user
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Wed, 4 Mar 2020 13:21:37 +0000 (14:21 +0100)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 4 Mar 2020 19:49:37 +0000 (04:49 +0900)
commita3558e795203230837fb3afc64102fa501b001d4
treee1a6d938922780bb5859bc22c4c574923e512dd2
parentdf883de98a885da27ab2098e5712409e5bd8b18e
units: do not ignore return value from systemd --user

This minus has been there since the unit was added in
d42d27ead91e470cb12986d928441e56c0f543ca. I think the idea was not cause things
to fail if the user instance doesn't work. But ignoring the return value
doesn't seem to be the right way to approach the problem. In particular, if
the program fails to run, we'll get a bogus fail state, see
https://bugzilla.redhat.com/show_bug.cgi?id=1727895#c1:

with the minus:
$ systemctl start user@1002
Job for user@1002.service failed because the service did not take the steps required by its unit configuration.
See "systemctl status user@1002.service" and "journalctl -xe" for details.

without the minus:
$ systemctl start user@1002
Job for user@1002.service failed because the control process exited with error code.
See "systemctl status user@1002.service" and "journalctl -xe" for details.
units/user@.service.in