On Fri, Apr 8, 2011 at 8:15 AM, Lucas Meneghel Rodrigues <[email protected]>wrote:
> On Thu, 2011-04-07 at 23:56 -0300, Lucas Meneghel Rodrigues wrote: > > From Fedora 15 onwards, the init system will be systemd, which for > > some reason ships with an /etc/inittab file but no actual content on > > it, just some explanation of how things work with systemd. This > > config will break harness_standalone, which is hoping to get a runlevel > > from that file. > > > > So, extend the checks made to include looking for /etc/systemd, and if > > that path exists, assume the default runlevel is the runlevel we are in > > and get info from the runlevel program output. This makes the client > > to work again on F15. > > What about this one guys? I understand eventually we'll need to come up > with a better thought logic with regards to detecting init systems and > taking the appropriate measures, but honestly I was tired and just > wanted to fix the bug on my newly installed F15 box... > > I honestly don't know what to do about situations like that. Is there a more standard way of linking in init scripts? I'm not aware of one, although I'm hardly and expert in that regard. I suppose refactoring it out into a separate module is the thing to do, but at the end of the day you're still stuck with "if system looks like then then ... elif ... " type code. -- John > > Signed-off-by: Lucas Meneghel Rodrigues <[email protected]> > > --- > > client/bin/harness_standalone.py | 11 +++++++---- > > 1 files changed, 7 insertions(+), 4 deletions(-) > > > > diff --git a/client/bin/harness_standalone.py > b/client/bin/harness_standalone.py > > index 75a2da9..c4b7f26 100644 > > --- a/client/bin/harness_standalone.py > > +++ b/client/bin/harness_standalone.py > > @@ -5,7 +5,7 @@ The default interface as required for the standalone > reboot helper. > > > > __author__ = """Copyright Andy Whitcroft 2007""" > > > > -from autotest_lib.client.common_lib import utils > > +from autotest_lib.client.common_lib import utils, error > > import os, harness, shutil, logging > > > > class harness_standalone(harness.harness): > > @@ -32,11 +32,14 @@ class harness_standalone(harness.harness): > > > > logging.info('Symlinking init scripts') > > rc = os.path.join(self.autodir, 'tools/autotest') > > - # see if system supports event.d versus inittab > > - if os.path.exists('/etc/event.d'): > > + # see if system supports event.d versus systemd versus inittab > > + supports_eventd = os.path.exists('/etc/event.d') > > + supports_systemd = os.path.exists('/etc/systemd') > > + supports_inittab = os.path.exists('/etc/inittab') > > + if supports_eventd or supports_systemd: > > # NB: assuming current runlevel is default > > initdefault = > utils.system_output('/sbin/runlevel').split()[1] > > - elif os.path.exists('/etc/inittab'): > > + elif supports_inittab: > > initdefault = utils.system_output('grep :initdefault: > /etc/inittab') > > initdefault = initdefault.split(':')[1] > > else: > > >
_______________________________________________ Autotest mailing list [email protected] http://test.kernel.org/cgi-bin/mailman/listinfo/autotest
