From patchwork Wed Aug 30 16:52:47 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jeff Cody X-Patchwork-Id: 9930203 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 4C50560309 for ; Wed, 30 Aug 2017 16:55:30 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3CAD520856 for ; Wed, 30 Aug 2017 16:55:30 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 31355286F5; Wed, 30 Aug 2017 16:55:30 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.9 required=2.0 tests=BAYES_00,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) (using TLSv1 with cipher AES256-SHA (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id AFB07286FC for ; Wed, 30 Aug 2017 16:55:29 +0000 (UTC) Received: from localhost ([::1]:51614 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dn6GA-0001Nz-C2 for patchwork-qemu-devel@patchwork.kernel.org; Wed, 30 Aug 2017 12:54:34 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:56322) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dn6Er-0001Ls-Cc for qemu-devel@nongnu.org; Wed, 30 Aug 2017 12:53:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dn6Eq-0004wy-HQ for qemu-devel@nongnu.org; Wed, 30 Aug 2017 12:53:13 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36600) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dn6El-0004vX-Fj; Wed, 30 Aug 2017 12:53:07 -0400 Received: from smtp.corp.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 656E213A47; Wed, 30 Aug 2017 16:53:06 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 656E213A47 Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=fail smtp.mailfrom=jcody@redhat.com Received: from localhost (ovpn-116-70.phx2.redhat.com [10.3.116.70]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 30FB68F341; Wed, 30 Aug 2017 16:53:06 +0000 (UTC) From: Jeff Cody To: qemu-devel@nongnu.org Date: Wed, 30 Aug 2017 12:52:47 -0400 Message-Id: In-Reply-To: References: In-Reply-To: References: X-Scanned-By: MIMEDefang 2.79 on 10.5.11.11 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Wed, 30 Aug 2017 16:53:06 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH v3 5/5] qemu-iotests: add option to save temp files on error X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, qemu-block@nongnu.org, armbru@redhat.com, stefanha@redhat.com, jsnow@redhat.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" X-Virus-Scanned: ClamAV using ClamSMTP Now that ./check takes care of cleaning up after each tests, it can also selectively not clean up. Add option to leave all output from tests intact if that test encountered an error. Note: this currently only works for bash tests, as the python tests still clean up after themselves manually. Signed-off-by: Jeff Cody Reviewed-by: Eric Blake Tested-by: John Snow Reviewed-by: John Snow --- tests/qemu-iotests/check | 10 +++++++++- tests/qemu-iotests/common | 6 ++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check index f6ca85d..8a5fc0d 100755 --- a/tests/qemu-iotests/check +++ b/tests/qemu-iotests/check @@ -370,7 +370,15 @@ do fi fi - rm -rf "$TEST_DIR_SEQ" + #TODO: There is some intial work to save intermediate files + # in python tests, but it is imperfect. Having each + # test record its test name, and the tearDown function + # just move intermediate images to a subdirectory with + # the test name may prove more useful. + if [ "$save_on_err" != "true" ] || [ "$err" != "true" ] + then + rm -rf "$TEST_DIR_SEQ" + fi fi diff --git a/tests/qemu-iotests/common b/tests/qemu-iotests/common index d34c11c..d08b233 100644 --- a/tests/qemu-iotests/common +++ b/tests/qemu-iotests/common @@ -42,6 +42,7 @@ expunge=true have_test_arg=false randomize=false cachemode=false +save_on_err=false rm -f $tmp.list $tmp.tmp $tmp.sed export IMGFMT=raw @@ -172,6 +173,7 @@ other options -T output timestamps -r randomize test order -c mode cache mode + -s save test scratch directory on test failure testlist options -g group[,group...] include tests from these groups @@ -349,6 +351,10 @@ testlist options xgroup=true xpand=false ;; + -s) + save_on_err=true + xpand=false + ;; '[0-9][0-9][0-9] [0-9][0-9][0-9][0-9]') echo "No tests?" status=1