[systemd-devel] DBus's PropertiesChanged signal is not triggered when an Unit stop successfully

Adrien Besnard adrien.besnard at gmail.com
Thu May 26 06:20:02 UTC 2016


I managed to do what I wanted to do using add_timeout with the GLib's
MainLoop: I poll every second the state of the unit and manually call the
callback connected to DBus to fake the event when the unit is stopped.

It works but this is a dirty hack. So I'm still interested by a real
solution :)

Cheers!
Le 23 mai 2016 11:55, "Adrien Besnard" <adrien.besnard at gmail.com> a écrit :

> Hello,
>
> I'm trying to make a small Python script which send an email when a *Type=oneshot
> *service ends (either in success or in failure).
>
> To do that, I'm using the dbus binding for Python, and connecting to the
> *PropertiesChanged* signal on the unit I'm monitoring.
>
> It works great when the process fails (the signal is triggered and I see
> *ActiveState* and *SubState* refleting the failure) but not when the
> service end successully.
>
> All I see is an *UnitRemoved* signal triggered by the manager
> interface... Is that normal?
>
> Do you guys have an idea of what I'm missing here?
>
> Thanks!
> --
> Adrien BESNARD
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20160526/eca9c7c4/attachment.html>


More information about the systemd-devel mailing list