From patchwork Wed Sep 18 08:55:19 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Kevin Wolf X-Patchwork-Id: 11149925 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1D87914DB for ; Wed, 18 Sep 2019 08:56:18 +0000 (UTC) Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id AD4DD2053B for ; Wed, 18 Sep 2019 08:56:17 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AD4DD2053B Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=redhat.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Received: from localhost ([::1]:56036 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iAVl2-0005XY-Mo for patchwork-qemu-devel@patchwork.kernel.org; Wed, 18 Sep 2019 04:56:16 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51293) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iAVkJ-00052M-S8 for qemu-devel@nongnu.org; Wed, 18 Sep 2019 04:55:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iAVkI-0001IN-Qy for qemu-devel@nongnu.org; Wed, 18 Sep 2019 04:55:31 -0400 Received: from mx1.redhat.com ([209.132.183.28]:54898) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1iAVkG-0001C3-01; Wed, 18 Sep 2019 04:55:28 -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 5399B3086268; Wed, 18 Sep 2019 08:55:26 +0000 (UTC) Received: from localhost.localdomain.com (ovpn-116-230.ams2.redhat.com [10.36.116.230]) by smtp.corp.redhat.com (Postfix) with ESMTP id 86D0D60167; Wed, 18 Sep 2019 08:55:22 +0000 (UTC) From: Kevin Wolf To: qemu-block@nongnu.org Date: Wed, 18 Sep 2019 10:55:19 +0200 Message-Id: <20190918085519.17290-1-kwolf@redhat.com> MIME-Version: 1.0 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.49]); Wed, 18 Sep 2019 08:55:26 +0000 (UTC) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 209.132.183.28 Subject: [Qemu-devel] [PATCH] iotests: Require Python 3.5 or later X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: kwolf@redhat.com, qemu-devel@nongnu.org, jsnow@redhat.com, ehabkost@redhat.com, mreitz@redhat.com Errors-To: qemu-devel-bounces+patchwork-qemu-devel=patchwork.kernel.org@nongnu.org Sender: "Qemu-devel" Running iotests is not required to build QEMU, so we can have stricter version requirements for Python here and can make use of new features and drop compatibility code earlier. This makes qemu-iotests skip all Python tests if a Python version before 3.5 is used for the build. Suggested-by: Eduardo Habkost Signed-off-by: Kevin Wolf Reviewed-by: Thomas Huth Reviewed-by: Max Reitz Reviewed-by: Philippe Mathieu-Daudé Reviewed-by: John Snow --- tests/qemu-iotests/check | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/tests/qemu-iotests/check b/tests/qemu-iotests/check index 875399d79f..a68f414d6c 100755 --- a/tests/qemu-iotests/check +++ b/tests/qemu-iotests/check @@ -633,6 +633,13 @@ then export SOCKET_SCM_HELPER="$build_iotests/socket_scm_helper" fi +# Note that if the Python conditional here evaluates True we will exit +# with status 1 which is a shell 'false' value. +python_usable=false +if ! $PYTHON -c 'import sys; sys.exit(sys.version_info >= (3,5))'; then + python_usable=true +fi + default_machine=$($QEMU_PROG -machine help | sed -n '/(default)/ s/ .*//p') default_alias_machine=$($QEMU_PROG -machine help | \ sed -n "/(alias of $default_machine)/ { s/ .*//p; q; }") @@ -809,7 +816,12 @@ do start=$(_wallclock) if [ "$(head -n 1 "$source_iotests/$seq")" == "#!/usr/bin/env python" ]; then - run_command="$PYTHON $seq" + if $python_usable; then + run_command="$PYTHON $seq" + else + run_command="false" + echo "Unsupported Python version" > $seq.notrun + fi else run_command="./$seq" fi