Blob Blame History Raw
From 561ae94fe6e03e9af82f260dd438863037f61030 Mon Sep 17 00:00:00 2001
From: Dave Wysochanski <dwysocha@redhat.com>
Date: Tue, 6 Oct 2015 11:35:11 -0400
Subject: [PATCH] Set "crash" inside get_crash_cmd file if the file does not
 exist, fix get_use_mock typeo.

This patch fixes a couple oversights in the previous patcheset to introduce crash_cmd and use_mock.

First, for older tasks which do not have a 'crash_cmd' file, we need to create one by
default.  Otherwise, any retrace-server-worker or retrace-server-interact command may
fail as follows:
Traceback (most recent call last):
  File "/usr/bin/retrace-server-interact", line 117, in <module>
    crash_cmd = task.get_crash_cmd().split()
AttributeError: 'NoneType' object has no attribute 'split'

Second, retrace-server-interact contained a 'get_use_mock' function rather than 'use_mock'
This caused the following:
$ retrace-server-interact 757071668 shell
Traceback (most recent call last):
  File "/usr/bin/retrace-server-interact", line 138, in <module>
    if task.get_use_mock(kernelver):
AttributeError: RetraceTask instance has no attribute 'get_use_mock'

Signed-off-by: Dave Wysochanski <dwysocha@redhat.com>
---
 src/lib/retrace.py          | 6 +++++-
 src/retrace-server-interact | 2 +-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/lib/retrace.py b/src/lib/retrace.py
index 9074786..8664788 100644
--- a/src/lib/retrace.py
+++ b/src/lib/retrace.py
@@ -2160,7 +2160,11 @@ class RetraceTask:
 
     def get_crash_cmd(self):
         """Gets the contents of CRASH_CMD_FILE"""
-        return self.get(RetraceTask.CRASH_CMD_FILE, maxlen=1 << 22)
+        result = self.get(RetraceTask.CRASH_CMD_FILE, maxlen=1 << 22)
+        if result is None:
+            self.set_crash_cmd("crash")
+            return "crash"
+        return result
 
     def set_crash_cmd(self, data):
         """Writes data to CRASH_CMD_FILE"""
diff --git a/src/retrace-server-interact b/src/retrace-server-interact
index 5b26c8a..e518531 100755
--- a/src/retrace-server-interact
+++ b/src/retrace-server-interact
@@ -135,7 +135,7 @@ if __name__ == "__main__":
             os.execvp(cmdline[0], cmdline)
 
         if args.action == "shell":
-            if task.get_use_mock(kernelver):
+            if task.use_mock(kernelver):
                 cmdline = ["/usr/bin/mock", "--configdir",
                            os.path.join(CONFIG["SaveDir"], "%d-kernel" % task.get_taskid()), "shell"]
 
-- 
2.7.0