mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-23 02:44:41 +03:00
OpenZFS 7503 - zfs-test should tail ::zfs_dbgmsg on test failure
Authored by: Pavel Zakharov <pavel.zakharov@delphix.com> Reviewed by: John Kennedy <john.kennedy@delphix.com> Reviewed by: Matt Ahrens <mahrens@delphix.com> Approved by: Gordon Ross <gordon.w.ross@gmail.com> Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov> Reviewed-by: George Melikov <mail@gmelikov.ru> Ported-by: Brian Behlendorf <behlendorf1@llnl.gov> Porting Notes: - Enable internal log for DEBUG builds and in zfs-tests.sh. - callbacks/zfs_dbgmsg.ksh - Dump interal log via kstat. - callbacks/zfs_dmesg.ksh - Dump dmesg log. - default.cfg - 'Test Suite Specific Commands' dropped. OpenZFS-issue: https://www.illumos.org/issues/7503 OpenZFS-commit: https://github.com/openzfs/openzfs/commit/55a1300 Closes #6002
This commit is contained in:
@@ -24,7 +24,7 @@
|
||||
# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
|
||||
# Use is subject to license terms.
|
||||
#
|
||||
# Copyright (c) 2012 by Delphix. All rights reserved.
|
||||
# Copyright (c) 2012, 2016 by Delphix. All rights reserved.
|
||||
#
|
||||
|
||||
. ${STF_TOOLS}/include/stf.shlib
|
||||
@@ -392,6 +392,22 @@ function log_other
|
||||
# Internal functions
|
||||
#
|
||||
|
||||
# Execute custom callback scripts on test failure
|
||||
#
|
||||
# callback script paths are stored in TESTFAIL_CALLBACKS, delimited by ':'.
|
||||
|
||||
function _execute_testfail_callbacks
|
||||
{
|
||||
typeset callback
|
||||
|
||||
print "$TESTFAIL_CALLBACKS:" | while read -d ":" callback; do
|
||||
if [[ -n "$callback" ]] ; then
|
||||
log_note "Performing test-fail callback ($callback)"
|
||||
$callback
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
# Perform cleanup and exit
|
||||
#
|
||||
# $1 - stf exit code
|
||||
@@ -402,6 +418,10 @@ function _endlog
|
||||
typeset logfile="/tmp/log.$$"
|
||||
_recursive_output $logfile
|
||||
|
||||
if [[ $1 == $STF_FAIL ]] ; then
|
||||
_execute_testfail_callbacks
|
||||
fi
|
||||
|
||||
if [[ -n $_CLEANUP ]] ; then
|
||||
typeset cleanup=$_CLEANUP
|
||||
log_onexit ""
|
||||
|
||||
Reference in New Issue
Block a user