NetworkManager seems to be able to run commands whenever it fiddles with interfaces. It looks like it's emulating the old ifup/ifdown behavior (see /etc/NetworkManager/dispatcher.d/01ifupdown).
We might be able to restart mythbackend whenever an interface is taken online. However, this can result in the backend being restart in the middle of a recording/transcoding job/commflagging job. (Just wondering: what happens if the master backend goes away when the slave is recording something?).
Another approach would require us to write a small script which would check (when the backend is started via its init script) if a slave backend is meant to connect to an external backend and make sure it's reachable, eg that a route to that network exists or something as simple as a ping. if it's unreachable, make Networkmanager restart the backend once a interface comes up.
Too complicated to be a nice and simple solution, though. :( Any thoughts? Of course, this should be configurable (disabled by default?).
There might be a way to fix this.
NetworkManager seems to be able to run commands whenever it fiddles with interfaces. It looks like it's emulating the old ifup/ifdown behavior (see /etc/NetworkMan ager/dispatcher .d/01ifupdown) .
We might be able to restart mythbackend whenever an interface is taken online. However, this can result in the backend being restart in the middle of a recording/ transcoding job/commflagging job. (Just wondering: what happens if the master backend goes away when the slave is recording something?).
Another approach would require us to write a small script which would check (when the backend is started via its init script) if a slave backend is meant to connect to an external backend and make sure it's reachable, eg that a route to that network exists or something as simple as a ping. if it's unreachable, make Networkmanager restart the backend once a interface comes up.
Too complicated to be a nice and simple solution, though. :( Any thoughts? Of course, this should be configurable (disabled by default?).