diff mbox series

[5/9] fstests: add makefile target to show test results

Message ID 20250305005755.697599-7-smayhew@redhat.com (mailing list archive)
State New
Headers show
Series tweak results organization and reporting | expand

Commit Message

Scott Mayhew March 5, 2025, 12:57 a.m. UTC
Add 'fstests-show-results' makefile target to show test results.

Under the hood, it more or less just does 'find ... | xargs cat'.

By default, the result.xml files will be shown for the most recent
kernel run.  You can show the results for a different kernel by
overriding the LAST_KERNEL variable, e.g.
$ LAST_KERNEL=6.13.4-300.fc41.x86_64 make fstests-show-results

You can change the files being shown by overriding the PATTERN variable.
For example, to just see the summary:
$ PATTERN="\( -name xunit_results.txt \)" make fstests-show-results

or to see the summary and the bad results:
$ PATTERN="\( -name xunit_results.txt -o -name \"*.bad\" \)" make fstests-show-results

or you can do any combination thereof, e.g.
$ LAST_KERNEL=6.13.4-300.fc41.x86_64 PATTERN="\( -name xunit_results.txt \)" make fstests-show-results

Signed-off-by: Scott Mayhew <smayhew@redhat.com>
---
 workflows/fstests/Makefile | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)
diff mbox series

Patch

diff --git a/workflows/fstests/Makefile b/workflows/fstests/Makefile
index 344a1f8..ef9c0fa 100644
--- a/workflows/fstests/Makefile
+++ b/workflows/fstests/Makefile
@@ -115,6 +115,14 @@  ifneq (,$(COUNT))
 FSTESTS_DYNAMIC_RUNTIME_VARS += , "oscheck_extra_args": "-I $(COUNT)"
 endif
 
+ifndef LAST_KERNEL
+LAST_KERNEL := $(shell cat workflows/fstests/results/last-kernel.txt 2>/dev/null)
+endif
+
+ifndef PATTERN
+PATTERN := -name result.xml
+endif
+
 fstests: $(FSTESTS_BASELINE_EXTRA)
 	$(Q)ansible-playbook $(ANSIBLE_VERBOSE) -l localhost,baseline,dev \
 		-f 30 -i hosts playbooks/fstests.yml --skip-tags run_tests,copy_results $(LIMIT_HOSTS)
@@ -218,6 +226,14 @@  fstests-dev-results: $(KDEVOPS_EXTRA_VARS)
 		--extra-vars=@./extra_vars.yaml \
 		$(LIMIT_HOSTS)
 
+fstests-show-results:
+ifdef LAST_KERNEL
+	@find workflows/fstests/results/$(LAST_KERNEL) -type f $(PATTERN) \
+		| xargs -I {} bash -c 'echo "{}:"; cat {}; echo;'
+else
+	@echo "No results."
+endif
+
 fstests-help-menu:
 	@echo "fstests options:"
 	@echo "fstests                                 - Git clones fstests, builds and install it"