]> git.proxmox.com Git - mirror_zfs.git/commitdiff
Verify ZFS Test Suite scripts executability
authorLOLi <loli10K@users.noreply.github.com>
Wed, 7 Feb 2018 20:43:24 +0000 (21:43 +0100)
committerBrian Behlendorf <behlendorf1@llnl.gov>
Wed, 7 Feb 2018 20:43:24 +0000 (12:43 -0800)
This change adds a make target 'testscheck' which verifies all ksh test
scripts, part of the ZFS Test Suite, have their executable bit set:
this should avoid adding new test scripts that cannot be executed by
the test-runner.py which would result in the following warning message:

   Warning: Test removed from TestGroup because it failed verification.

This also verifies both *.cfg and *.kshlib files used in the ZFS Test
Suite are not executable.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov>
Signed-off-by: loli10K <ezomori.nozomu@gmail.com>
Closes #7131

Makefile.am
tests/zfs-tests/tests/functional/casenorm/casenorm.kshlib [changed mode: 0755->0644]
tests/zfs-tests/tests/functional/cli_root/zpool_events/zpool_events.kshlib [changed mode: 0755->0644]
tests/zfs-tests/tests/functional/cli_root/zpool_reopen/zpool_reopen.cfg [changed mode: 0755->0644]
tests/zfs-tests/tests/functional/events/events_common.kshlib [changed mode: 0755->0644]
tests/zfs-tests/tests/functional/rsend/send_encrypted_files.ksh [changed mode: 0644->0755]
tests/zfs-tests/tests/functional/zvol/zvol_misc/zvol_misc_common.kshlib [changed mode: 0755->0644]

index a4dccdda6a9f2046c20ccd148fd95a6fdf77595d..07d583fdf4e4e30ac74bf712e90ea9406be66fd8 100644 (file)
@@ -41,7 +41,7 @@ dist-hook:
        sed -i 's/Release:[[:print:]]*/Release:      $(RELEASE)/' \
                $(distdir)/META
 
-checkstyle: cstyle shellcheck flake8 commitcheck mancheck
+checkstyle: cstyle shellcheck flake8 commitcheck mancheck testscheck
 
 commitcheck:
        @if git rev-parse --git-dir > /dev/null 2>&1; then \
@@ -68,6 +68,14 @@ mancheck:
                        xargs mandoc -Tlint -Werror; \
        fi
 
+testscheck:
+       @find ${top_srcdir}/tests/zfs-tests/tests -type f \
+               \( -name '*.ksh' -not -executable \) -o \
+               \( -name '*.kshlib' -executable \) -o \
+               \( -name '*.cfg' -executable \) | \
+               xargs -r stat -c '%A %n' | \
+               awk '{c++; print} END {if(c>0) exit 1}'
+
 lint: cppcheck paxcheck
 
 cppcheck: