Skip to content

Commit 1f42ff2

Browse files
committed
libkirk: Print /proc/cmdline
/proc/cmdline is crucial for some tests, print it in the test summary. Signed-off-by: Petr Vorel <pvorel@suse.cz>
1 parent d3bb8d8 commit 1f42ff2

9 files changed

Lines changed: 47 additions & 15 deletions

File tree

libkirk/export.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -107,6 +107,7 @@ async def save_file(self, results: List[SuiteResults], path: str) -> None:
107107
"distribution": results[0].distro,
108108
"distribution_version": results[0].distro_ver,
109109
"kernel": results[0].kernel,
110+
"cmdline": results[0].cmdline,
110111
"arch": results[0].arch,
111112
"cpu": results[0].cpu,
112113
"swap": results[0].swap,

libkirk/monitor.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -197,6 +197,7 @@ async def suite_completed(self, results: SuiteResults, exec_time: float) -> None
197197
"broken": results.broken,
198198
"warnings": results.warnings,
199199
"kernel_version": results.kernel,
200+
"cmdline": results.cmdline,
200201
"cpu": results.cpu,
201202
"arch": results.arch,
202203
"ram": results.ram,

libkirk/results.py

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,6 +242,7 @@ def __init__(
242242
distro: Optional[str] = None,
243243
distro_ver: Optional[str] = None,
244244
kernel: Optional[str] = None,
245+
cmdline: Optional[str] = None,
245246
arch: Optional[str] = None,
246247
cpu: Optional[str] = None,
247248
swap: Optional[str] = None,
@@ -258,6 +259,8 @@ def __init__(
258259
:type distro_ver: str
259260
:param kernel: Kernel version.
260261
:type kernel: str
262+
:param cmdline: /proc/cmdline.
263+
:type cmdline: str
261264
:param arch: OS architecture.
262265
:type arch: str
263266
:param cpu: CPU type info.
@@ -275,6 +278,7 @@ def __init__(
275278
self._distro = distro
276279
self._distro_ver = distro_ver
277280
self._kernel = kernel
281+
self._cmdline = cmdline
278282
self._arch = arch
279283
self._cpu = cpu
280284
self._swap = swap
@@ -287,6 +291,7 @@ def __repr__(self) -> str:
287291
f"distro: {self._distro}, "
288292
f"distro_ver: {self._distro_ver}, "
289293
f"kernel: {self._kernel}, "
294+
f"cmdline: {self._cmdline}, "
290295
f"arch: {self._arch}, "
291296
f"cpu: {self._cpu}, "
292297
f"swap: {self._swap}, "
@@ -343,6 +348,14 @@ def kernel(self) -> Optional[str]:
343348
"""
344349
return self._kernel
345350

351+
@property
352+
def cmdline(self) -> Optional[str]:
353+
"""
354+
:return: /proc/cmdline.
355+
:rtype: str | None
356+
"""
357+
return self._cmdline
358+
346359
@property
347360
def arch(self) -> Optional[str]:
348361
"""

libkirk/scheduler.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -584,6 +584,7 @@ async def _run_suite(self, suite: Suite) -> None:
584584
distro=info["distro"],
585585
distro_ver=info["distro_ver"],
586586
kernel=info["kernel"],
587+
cmdline=info["cmdline"],
587588
arch=info["arch"],
588589
cpu=info["cpu"],
589590
swap=info["swap"],

libkirk/sut.py

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,12 @@ async def _get_kernel(self) -> str:
155155
"""
156156
return await self._run_cmd("uname -s -r -v")
157157

158+
async def _get_cmdline(self) -> str:
159+
"""
160+
Return /proc/cmdline content.
161+
"""
162+
return await self._run_cmd("cat /proc/cmdline")
163+
158164
async def _get_arch(self) -> str:
159165
"""
160166
Return the architecture name.
@@ -185,6 +191,7 @@ async def get_info(self) -> Dict[str, str]:
185191
"distro": str,
186192
"distro_ver": str,
187193
"kernel": str,
194+
"cmdline": str,
188195
"arch": str,
189196
"cpu" : str,
190197
"swap" : str,
@@ -199,17 +206,19 @@ async def get_info(self) -> Dict[str, str]:
199206
distro = ""
200207
distro_ver = ""
201208
kernel = ""
209+
cmdline = ""
202210
arch = ""
203211
cpu = ""
204212
meminfo = ""
205213

206214
if self.optimize:
207215
# pyrefly: ignore[bad-unpacking]
208-
distro, distro_ver, kernel, arch, cpu, meminfo = await asyncio.gather(
216+
distro, distro_ver, kernel, cmdline, arch, cpu, meminfo = await asyncio.gather(
209217
*[
210218
self._get_distro(),
211219
self._get_distro_ver(),
212220
self._get_kernel(),
221+
self._get_cmdline(),
213222
self._get_arch(),
214223
self._get_cpu(),
215224
self._get_meminfo(),
@@ -219,6 +228,7 @@ async def get_info(self) -> Dict[str, str]:
219228
distro = await self._get_distro()
220229
distro_ver = await self._get_distro_ver()
221230
kernel = await self._get_kernel()
231+
cmdline = await self._get_cmdline()
222232
arch = await self._get_arch()
223233
cpu = await self._get_cpu()
224234
meminfo = await self._get_meminfo()
@@ -239,6 +249,7 @@ async def get_info(self) -> Dict[str, str]:
239249
"distro": distro,
240250
"distro_ver": distro_ver,
241251
"kernel": kernel,
252+
"cmdline": cmdline,
242253
"arch": arch,
243254
"cpu": cpu,
244255
"ram": memory,

libkirk/tests/test_export.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@ async def test_save_file(self, tmpdir):
9191
distro="openSUSE-Leap",
9292
distro_ver="15.3",
9393
kernel="5.17",
94+
cmdline="security=selinux selinux=1 enforcing=1 ima_policy=tcb",
9495
arch="x86_64",
9596
cpu="x86_64",
9697
swap="10 kB",
@@ -171,6 +172,7 @@ async def test_save_file(self, tmpdir):
171172
"distribution_version": "15.3",
172173
"distribution": "openSUSE-Leap",
173174
"kernel": "5.17",
175+
"cmdline": "security=selinux selinux=1 enforcing=1 ima_policy=tcb",
174176
"arch": "x86_64",
175177
"cpu": "x86_64",
176178
"swap": "10 kB",

libkirk/tests/test_scheduler.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ async def get_info(self) -> dict:
2727
"distro": "openSUSE",
2828
"distro_ver": "15.3",
2929
"kernel": "5.10",
30+
"cmdline": "ima_policy=tcb",
3031
"arch": "x86_64",
3132
"cpu": "x86_64",
3233
"swap": "0",

libkirk/tests/test_sut.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,7 @@ async def test_get_info(self, sut):
8888
assert info["distro"]
8989
assert info["distro_ver"]
9090
assert info["kernel"]
91+
assert info["cmdline"]
9192
assert info["arch"]
9293

9394
async def test_get_tainted_info(self, sut):

libkirk/ui.py

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -160,20 +160,21 @@ async def suite_completed(self, results: SuiteResults, exec_time: float) -> None
160160
message = (
161161
f"{' ' * 128}\n"
162162
f"Execution time: {exec_time_uf}\n\n"
163-
f"\tSuite: {results.suite.name}\n"
164-
f"\tTotal runs: {len(results.suite.tests)}\n"
165-
f"\tRuntime: {duration}\n"
166-
f"\tPassed: {results.passed}\n"
167-
f"\tFailed: {results.failed}\n"
168-
f"\tSkipped: {results.skipped}\n"
169-
f"\tBroken: {results.broken}\n"
170-
f"\tWarnings: {results.warnings}\n"
171-
f"\tKernel: {results.kernel}\n"
172-
f"\tMachine: {results.cpu}\n"
173-
f"\tArch: {results.arch}\n"
174-
f"\tRAM: {results.ram}\n"
175-
f"\tSwap: {results.swap}\n"
176-
f"\tDistro: {results.distro} {results.distro_ver}"
163+
f"\tSuite: {results.suite.name}\n"
164+
f"\tTotal runs: {len(results.suite.tests)}\n"
165+
f"\tRuntime: {duration}\n"
166+
f"\tPassed: {results.passed}\n"
167+
f"\tFailed: {results.failed}\n"
168+
f"\tSkipped: {results.skipped}\n"
169+
f"\tBroken: {results.broken}\n"
170+
f"\tWarnings: {results.warnings}\n"
171+
f"\tKernel: {results.kernel}\n"
172+
f"\t/proc/cmdline: {results.cmdline}\n"
173+
f"\tMachine: {results.cpu}\n"
174+
f"\tArch: {results.arch}\n"
175+
f"\tRAM: {results.ram}\n"
176+
f"\tSwap: {results.swap}\n"
177+
f"\tDistro: {results.distro} {results.distro_ver}"
177178
)
178179

179180
await self._print(message)

0 commit comments

Comments
 (0)