qemu-block
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-block] [PATCH] tests: Fix Python 3 detection on older GNU make


From: Philippe Mathieu-Daudé
Subject: Re: [Qemu-block] [PATCH] tests: Fix Python 3 detection on older GNU make versions
Date: Tue, 6 Nov 2018 15:27:25 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1

On 6/11/18 15:13, Eduardo Habkost wrote:
The $(SHELLSTATUS) variable requires GNU make >= 4.2, but Travis
seems to provide an older version.  Change the existing rules to
use command output instead of exit code, to make it compatible
with older GNU make versions.

You were quicker, I just found out :)


Signed-off-by: Eduardo Habkost <address@hidden>
---
I think that's the cause of the Travis failures.  I have
submitted a test job right now, at:
   https://travis-ci.org/ehabkost/qemu-hacks/jobs/451387962
Let's see if it fixes the issue.

You can run it locally:

$ make docker-image-travis
...
$ docker run --rm -it -v $(pwd):$(pwd) -w $(pwd) \
    -u 0 --entrypoint=/bin/bash qemu:travis
address@hidden:qemu# cd build/docker_travis/
address@hidden:qemu/build/docker_travis# make AVOCADO_SHOW=app check-acceptance
  VENV    qemu/build/docker_travis/tests/venv
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt-get install python3-venv

You may need to use sudo with that command. After installing the python3-venv
package, recreate your virtual environment.

address@hidden:qemu/build/docker_travis# apt install python3-pip python3.4-venv address@hidden:qemu/build/docker_travis# make AVOCADO_SHOW=app check-acceptance
  VENV    qemu/build/docker_travis/tests/venv
  PIP     qemu/tests/requirements.txt
  AVOCADO tests/acceptance
JOB ID     : 5e5529e79456c388e80323acdc71f3887341a498
JOB LOG : qemu/build/docker_travis/tests/results/job-2018-11-06T14.26-5e5529e/job.log (1/6) qemu/tests/acceptance/boot_linux_console.py:BootLinuxConsole.test: CANCEL: No QEMU binary defined or found in the source tree (0.01 s) (2/6) qemu/tests/acceptance/version.py:Version.test_qmp_human_info_version: CANCEL: No QEMU binary defined or found in the source tree (0.01 s) (3/6) qemu/tests/acceptance/vnc.py:Vnc.test_no_vnc: CANCEL: No QEMU binary defined or found in the source tree (0.00 s) (4/6) qemu/tests/acceptance/vnc.py:Vnc.test_no_vnc_change_password: CANCEL: No QEMU binary defined or found in the source tree (0.00 s) (5/6) qemu/tests/acceptance/vnc.py:Vnc.test_vnc_change_password_requires_a_password: CANCEL: No QEMU binary defined or found in the source tree (0.00 s) (6/6) qemu/tests/acceptance/vnc.py:Vnc.test_vnc_change_password: CANCEL: No QEMU binary defined or found in the source tree (0.00 s) RESULTS : PASS 0 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | CANCEL 6
JOB TIME   : 0.45 s

Reviewed-by: Philippe Mathieu-Daudé <address@hidden>
Tested-by: Philippe Mathieu-Daudé <address@hidden>

---
  tests/Makefile.include | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/Makefile.include b/tests/Makefile.include
index d2e577eabb..074eece558 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
@@ -913,8 +913,8 @@ TESTS_RESULTS_DIR=$(BUILD_DIR)/tests/results
  # information please refer to "avocado --help".
  AVOCADO_SHOW=none
-$(shell $(PYTHON) -c 'import sys; assert sys.version_info >= (3,0)' >/dev/null 2>&1)
-ifeq ($(.SHELLSTATUS),0)
+PYTHON3 = $(shell $(PYTHON) -c 'import sys; print(1 if sys.version_info >= (3, 
0) else 0)')
+ifeq ($(PYTHON3), 1)
  $(TESTS_VENV_DIR): $(TESTS_VENV_REQ)
        $(call quiet-command, \
              $(PYTHON) -m venv --system-site-packages $@, \




reply via email to

[Prev in Thread] Current Thread [Next in Thread]