rteval/rteval-kcompile-Fix-source-...

66 lines
2.4 KiB
Diff

From bc36f2007d614748397c0ccec518ecb2876daca9 Mon Sep 17 00:00:00 2001
From: Valentin Schneider <vschneid@redhat.com>
Date: Tue, 3 May 2022 12:01:06 +0100
Subject: [PATCH 09/17] rteval: kcompile: Fix source tarball argument handling
Kcompile._WorkloadSetup() looks for a "tarball" and "tarfile" entry in
the CfgSection, but I couldn't find a single setter for thoses. The
only way for a user to specify a file is via --kcompile-source, which
doesn't seem to be actually used by the module.
Make Kcompile actually use --kcompile-source.
Signed-off-by: Valentin Schneider <vschneid@redhat.com>
Signed-off-by: John Kacur <jkacur@redhat.com>
---
rteval/modules/loads/kcompile.py | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/rteval/modules/loads/kcompile.py b/rteval/modules/loads/kcompile.py
index add0cd86cde4..2701a0dcba91 100644
--- a/rteval/modules/loads/kcompile.py
+++ b/rteval/modules/loads/kcompile.py
@@ -28,6 +28,7 @@ import sys
import os
import os.path
import glob
+import re
import subprocess
from rteval.modules import rtevalRuntimeError
from rteval.modules.loads import CommandLineLoad
@@ -35,7 +36,7 @@ from rteval.Log import Log
from rteval.misc import expand_cpulist, compress_cpulist
from rteval.systopology import SysTopology
-kernel_prefix = "linux-5.13"
+DEFAULT_KERNEL_PREFIX = "linux-5.13"
class KBuildJob:
'''Class to manage a build job bound to a particular node'''
@@ -163,17 +164,19 @@ class Kcompile(CommandLineLoad):
return
# find our source tarball
- if 'tarball' in self._cfg:
- tarfile = os.path.join(self.srcdir, self._cfg.tarfile)
+ if self._cfg.source:
+ tarfile = os.path.join(self.srcdir, self._cfg.source)
if not os.path.exists(tarfile):
raise rtevalRuntimeError(self, " tarfile %s does not exist!" % tarfile)
self.source = tarfile
+ kernel_prefix = re.search(r"linux-\d\.\d", self.source).group(0)
else:
- tarfiles = glob.glob(os.path.join(self.srcdir, "%s*" % kernel_prefix))
+ tarfiles = glob.glob(os.path.join(self.srcdir, "%s*" % DEFAULT_KERNEL_PREFIX))
if tarfiles:
self.source = tarfiles[0]
else:
raise rtevalRuntimeError(self, " no kernel tarballs found in %s" % self.srcdir)
+ kernel_prefix = DEFAULT_KERNEL_PREFIX
# check for existing directory
kdir = None
--
2.36.1