Skip to contentSkip to conversation

oe_syslog.py: fix for syslog-ng

PATCH New Chen Qi 1 participant 2 messages Aug 6, 2018

lore
Share & tools
lore

Chen Qi

author
#0 lore raw

v2 cover oe_syslog.py: fix for syslog-ng

Changes in V2:
* Run 'ps' only once, get rid of grep command and use python to check the existence of syslog daemon.

The following changes since commit da24071e92071ecbefe51314d82bf40f85172485:

bitbake: toaster/orm/management/commands/lsupdates.py: Use new layerindexlib module (2018-08-02 10:18:27 +0100)

are available in the git repository at:

git://git.pokylinux.org/poky-contrib ChenQi/oe_syslog
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=ChenQi/oe_syslog

Chen Qi (1):
oe_syslog.py: fix for syslog-ng

 meta/lib/oeqa/runtime/cases/oe_syslog.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH v2 1/1 oe_syslog.py: fix for syslog-ng

When using syslog-ng as the syslog provider, oe_syslog test case fails because it cannot find the syslog daemon. This is because it greps for 'syslogd' but syslog-ng's daemon is 'syslog-ng'. So fix it to check both 'syslogd' and 'syslog-ng'.

Also, when the test case fails, what I get is:
| AssertionError: 1 != 0 : No syslogd process; ps output:
<empty here>

This does not help user. The output is actually from the 'PS | GREP' command. And when the 'PS | GREP' command fails, the output is always empty. So also fix this problem. After the change, it looks like:

| AssertionError: False is not true : No syslog daemon process; ps output:
|   PID USER       VSZ STAT COMMAND
|     1 root     16476 S    {systemd} /sbin/init
|     2 root         0 SW   [kthreadd]
|     3 root         0 IW   [kworker/0:0]

...

---
 meta/lib/oeqa/runtime/cases/oe_syslog.py | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
meta/lib/oeqa/runtime/cases/oe_syslog.py +5 -3
index 935f10f..a92a1f2 100644
@@ -10,10 +10,12 @@ class SyslogTest(OERuntimeTestCase):
     @OETestDepends(['ssh.SSHTest.test_ssh'])
     @OEHasPackage(["busybox-syslog", "sysklogd", "rsyslog", "syslog-ng"])
     def test_syslog_running(self):
-        cmd = '%s  | grep -i [s]yslogd' % self.tc.target_cmds['ps']
-        status, output = self.target.run(cmd)
-        msg = "No syslogd process; ps output: %s" % output
+        status, output = self.target.run(self.tc.target_cmds['ps'])
+        msg = "Failed to execute %s" % self.tc.target_cmds['ps']
         self.assertEqual(status, 0, msg=msg)
+        msg = "No syslog daemon process; %s output:\n%s" % (self.tc.target_cmds['ps'], output)
+        hasdaemon = "syslogd" in output or "syslog-ng" in output
+        self.assertTrue(hasdaemon, msg=msg)
 
 class SyslogTestConfig(OERuntimeTestCase):
 
Signature · 1 line
1.9.1