[systemd-devel] [PATCH] shared/install: don't report 'static' when unit contains only Also=

Jan Synacek jsynacek at redhat.com
Fri Nov 7 06:25:11 PST 2014


Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl> writes:
> On Fri, Nov 07, 2014 at 01:06:41PM +0100, Lennart Poettering wrote:
>> On Fri, 07.11.14 09:49, Jan Synacek (jsynacek at redhat.com) wrote:
>> 
>> > Lennart Poettering <lennart at poettering.net> writes:
>> > > On Thu, 06.11.14 10:49, Jan Synacek (jsynacek at redhat.com) wrote:
>> > >
>> > >> I think that this patch might be a bit ineffective, as it calls
>> > >> unit_file_load() again just to get an InstallContext. I wasn't sure
>> > >> how to get Also= targets in any other way.
>> > >> 
>> > >> If such change makes sense, this patch should probably be considered a
>> > >> preview rather than something to be committed right away.
>> > >
>> > > Hmm, wouldn't it be nicer to introduce a new UnitFileState enum value
>> > > for this?
>> > >
>> > > Maybe UNIT_FILE_ALSO or so? 
>> > >
>> > > I am not sure I like the idea of implicitly following the Also= setting here, due
>> > > to the awkwarndess if multiple units are listed and how to map exotic
>> > > states of that other unit back to ours...
>> > >
>> > > Would that make sense?
>> > >
>> > > Lennart
>> > 
>> > Yes, that makes sense. What should a string representation of
>> > UNIT_FILE_ALSO be? I don't think that reporting 'also' would feel
>> > right.
> Maybe I'm missing something, but wouldn't be enough to report is as
> 'enabled'?

AFAIK, it can also be disabled... Take systemd-journal-gatewayd.service
as an example. It doesn't have anything but
"Also=systemd-journal-gatewayd.socket" in the Install section. If you
disable the socket, you would then return "enabled", which would be
wrong.

Howerever, I'm not sure about more complicated setups.

> For some units adding another name from Also= really enables the unit,
> and for other units the name from Also= is mostly cosmetic. What I'm
> trying to say is that having or not the Also= name enabled is only approximate
> information and does not always tell us if the unit will be started.
>
> I'd prefer to redefine enabled/disabled/static as "this unit has at
> least on of the declared links in the filesystem/the unit does not
> have any defined links in the filesystem/this unit does not declare
> any links in the filesystem", which is something that we can actually
> check.
>
> Zbyszek

Cheers,
-- 
Jan Synacek
Software Engineer, Red Hat
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 818 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/systemd-devel/attachments/20141107/7129b31c/attachment-0001.sig>


More information about the systemd-devel mailing list