[igt-dev] [PATCH i-g-t] scripts/verify-blacklist: Handle multiple given blacklists

Kamil Konieczny kamil.konieczny at linux.intel.com
Tue Apr 18 19:06:03 UTC 2023


From: Petri Latvala <petri.latvala at intel.com>

Also change the message for useless entry to not say blacklist; this
script is incidentally useful for checking testlist files too.

Cc: Petri Latvala <adrinael at adrinael.net>
Cc: Mauro Carvalho Chehab <mauro.chehab at linux.intel.com>
Signed-off-by: Petri Latvala <petri.latvala at intel.com>
Signed-off-by: Kamil Konieczny <kamil.konieczny at linux.intel.com>
---
 scripts/verify-blacklist.sh | 40 +++++++++++++++++++++----------------
 1 file changed, 23 insertions(+), 17 deletions(-)

diff --git a/scripts/verify-blacklist.sh b/scripts/verify-blacklist.sh
index 93dca495b..05383f13f 100755
--- a/scripts/verify-blacklist.sh
+++ b/scripts/verify-blacklist.sh
@@ -3,21 +3,23 @@
 # Verify that all entries in a blacklist file are still valid
 
 usage() {
-    echo "Usage: $0 <path-to-igt-runner> <test-binary-directory> <blacklist-file>"
+    echo "Usage: $0 <path-to-igt-runner> <test-binary-directory> <blacklist-files ...>"
     echo
     echo " path-to-igt-runner: For example build/runner/igt_runner"
     echo " test-binary-directory: For example build/tests"
-    echo " blacklist-file: For example tests/intel-ci/blacklist.txt"
+    echo " blacklist-files: For example tests/intel-ci/blacklist.txt"
     exit 2
 }
 
-if [ $# -ne 3 ]; then
+if [ $# -lt 3 ]; then
     usage
 fi
 
 RUNNER="$1"
-BINDIR="$2"
-BLFILE="$3"
+shift
+BINDIR="$1"
+shift
+BLFILES="$*"
 
 if [ ! -x "$RUNNER" ]; then
     echo "$RUNNER not found"
@@ -31,24 +33,28 @@ if [ ! -f "$BINDIR/test-list.txt" ]; then
     usage
 fi
 
-if [ ! -f "$BLFILE" ]; then
-    echo "$BLFILE not found"
-    echo
-    usage
-fi
+for BLFILE in $BLFILES; do
+    if [ ! -f "$BLFILE" ]; then
+	echo "$BLFILE not found"
+	echo
+	usage
+    fi
+done
 
 STATUS=0
 
 TESTLIST="$("$RUNNER" --list-all "$BINDIR")"
 
-cat "$BLFILE" | while read line; do
-    blentry=$(echo "$line" | sed 's/#.*//' | tr -d '[:space:]')
-    if [ "$blentry" = "" ]; then continue; fi
+for BLFILE in $BLFILES; do
+    cat "$BLFILE" | while read line; do
+	blentry=$(echo "$line" | sed 's/#.*//' | tr -d '[:space:]')
+	if [ "$blentry" = "" ]; then continue; fi
 
-    if ! (echo "$TESTLIST" | grep -Pq "$blentry") >/dev/null 2>/dev/null; then
-	echo Useless blacklist entry: "$blentry"
-	STATUS=1
-    fi
+	if ! (echo "$TESTLIST" | grep -Pq "$blentry") >/dev/null 2>/dev/null; then
+	    echo "$BLFILE: Useless entry: $blentry"
+	    STATUS=1
+	fi
+    done
 done
 
 exit $STATUS
-- 
2.37.2



More information about the igt-dev mailing list