]> git.ipfire.org Git - thirdparty/systemd.git/commit
shared/install: return failure when enablement fails, but process as much as possible
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Thu, 10 Mar 2022 14:47:12 +0000 (15:47 +0100)
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Tue, 29 Mar 2022 14:17:56 +0000 (16:17 +0200)
commit0d11db59825a9deee0b56fdede0602ef1c37c5c5
treed636ede0f1088d56f454066e153c3628e0bd8cee
parentcbfdbffb618f1d75e668c59887a27c7a60950546
shared/install: return failure when enablement fails, but process as much as possible

So far we'd issue a warning (before this series, just in the logs on the server
side, and before this commit, on stderr on the caller's side), but return
success. It seems that successfull return was introduced by mistake in
aa0f357fd833feecbea6c3e9be80b643e433bced (my fault :( ), which was supposed to
be a refactoring without a functional change. I think it's better to fail,
because if enablement fails, the user will most likely want to diagnose the
issue.

Note that we still do partial enablement, as far as that is possible. So if
e.g. we have [Install] Alias=foo.service foobar, we'll create the symlink
'foo.service', but not 'foobar', since that's not a valid unit name. We'll
print info about the action taken, and about 'foobar' being invalid, and return
failure.
src/shared/install.c
test/test-systemctl-enable.sh