All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Alex Bennée" <alex.bennee@linaro.org>
To: Max Reitz <mreitz@redhat.com>
Cc: "Fam Zheng" <fam@euphon.net>,
	"Aleksandar Rikalo" <aleksandar.rikalo@syrmia.com>,
	"Beraldo Leal" <bleal@redhat.com>,
	"Wainer dos Santos Moschetta" <wainersm@redhat.com>,
	"John Snow" <jsnow@redhat.com>,
	"Philippe Mathieu-Daudé" <f4bug@amsat.org>,
	qemu-devel@nongnu.org, "Eric Auger" <eauger@redhat.com>,
	"Willian Rampazzo" <wrampazz@redhat.com>,
	"Cleber Rosa" <crosa@redhat.com>,
	"Thomas Huth" <thuth@redhat.com>,
	"Marc-André Lureau" <marcandre.lureau@redhat.com>,
	"Philippe Mathieu-Daudé" <philmd@redhat.com>,
	"Aurelien Jarno" <aurelien@aurel32.net>,
	"Eduardo Habkost" <ehabkost@redhat.com>
Subject: Re: [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length
Date: Tue, 09 Feb 2021 16:15:12 +0000	[thread overview]
Message-ID: <87eehp9pzz.fsf@linaro.org> (raw)
In-Reply-To: <158ab9b4-9d1c-b2b7-48d1-2cc10b54f55f@redhat.com>


Max Reitz <mreitz@redhat.com> writes:

> On 09.02.21 13:52, Alex Bennée wrote:
>> 
>> Max Reitz <mreitz@redhat.com> writes:
>> 
>>> On 09.02.21 12:24, Alex Bennée wrote:
>>>>
>>>> Max Reitz <mreitz@redhat.com> writes:
>>>>
>>>>> On 04.02.21 14:23, Alex Bennée wrote:
>>>>>>
>>>>>> Cleber Rosa <crosa@redhat.com> writes:
>>>>>>
>>>>>>> If the vmlinuz variable is set to anything that evaluates to True,
>>>>>>> then the respective arguments should be set.  If the variable contains
>>>>>>> an empty string, than it will evaluate to False, and the extra
>>>>>>> arguments will not be set.
>>>>>>>
>>>>>>> This keeps the same logic, but improves readability a bit.
>>>>>>>
>>>>>>> Signed-off-by: Cleber Rosa <crosa@redhat.com>
>>>>>>> ---
>>>>>>>     tests/acceptance/virtiofs_submounts.py | 2 +-
>>>>>>>     1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>>
>>>>>>> diff --git a/tests/acceptance/virtiofs_submounts.py b/tests/acceptance/virtiofs_submounts.py
>>>>>>> index f1b49f03bb..f25a386a19 100644
>>>>>>> --- a/tests/acceptance/virtiofs_submounts.py
>>>>>>> +++ b/tests/acceptance/virtiofs_submounts.py
>>>>>>> @@ -241,7 +241,7 @@ class VirtiofsSubmountsTest(BootLinux):
>>>>>>>     
>>>>>>>             super(VirtiofsSubmountsTest, self).setUp(pubkey)
>>>>>>>     
>>>>>>> -        if len(vmlinuz) > 0:
>>>>>>> +        if vmlinuz:
>>>>>>>                 self.vm.add_args('-kernel', vmlinuz,
>>>>>>>                                  '-append', 'console=ttyS0 root=/dev/sda1')
>>>>>>
>>>>>> And this is were I gave up because I can't see how to run the test:
>>>>>>
>>>>>>      ./tests/venv/bin/avocado run ./tests/acceptance/virtiofs_submounts.py
>>>>>>      JOB ID     : b3d9bfcfcd603189a471bec7d770fca3b50a81ee
>>>>>>      JOB LOG    : /home/alex/avocado/job-results/job-2021-02-04T13.21-b3d9bfc/job.log
>>>>>>       (1/5) ./tests/acceptance/virtiofs_submounts.py:VirtiofsSubmountsTest.test_pre_virtiofsd_set_up: CANCEL: vmlinuz parameter not set; you must point it to a Linux kernel binary to test (to run this test with the on-image kernel, set it to an empty string) (0.00 s)
>>>>>>       (2/5) ./tests/acceptance/virtiofs_submounts.py:VirtiofsSubmountsTest.test_pre_launch_set_up: CANCEL: vmlinuz parameter not set; you must point it to a Linux kernel binary to test (to run this test with the on-image kernel, set it to an empty string) (0.00 s)
>>>>>>       (3/5) ./tests/acceptance/virtiofs_submounts.py:VirtiofsSubmountsTest.test_post_launch_set_up: CANCEL: vmlinuz parameter not set; you must point it to a Linux kernel binary
>>>>>>      to test (to run this test with the on-image kernel, set it to an empty string) (0.00 s)
>>>>>>       (4/5) ./tests/acceptance/virtiofs_submounts.py:VirtiofsSubmountsTest.test_post_mount_set_up: CANCEL: vmlinuz parameter not set; you must point it to a Linux kernel binary to test (to run this test with the on-image kernel, set it to an empty string) (0.00 s)
>>>>>>       (5/5) ./tests/acceptance/virtiofs_submounts.py:VirtiofsSubmountsTest.test_two_runs: CANCEL: vmlinuz parameter not set; you must point it to a Linux kernel binary to test (to run this test with the on-image kernel, set it to an empty string) (0.00 s)
>>>>>>      RESULTS    : PASS 0 | ERROR 0 | FAIL 0 | SKIP 0 | WARN 0 | INTERRUPT 0 | CANCEL 5
>>>>>>      JOB TIME   : 0.56 s
>>>>>>
>>>>>> Given the test seems to make assumptions about an environment being
>>>>>> setup for it I think we need some documentation somewhere about what
>>>>>> those pre-requisites are.
>>>>>
>>>>> I find the cancel message pretty clear, but then again it was me who
>>>>> wrote it...
>>>>>
>>>>> Either you point the vmlinuz parameter to some Linux kernel you built
>>>>> yourself, or you set it to the empty string to just use the kernel
>>>>> that’s part of the image.  Setting Avocado parameters is done via -p,
>>>>> i.e. “-p key=value”.  So in this case
>>>>> “-p vmlinuz=/path/to/linux/build/arch/x86/boot/bzImage”, or
>>>>> “-p vmlinuz=''”.
>>>>>
>>>>> Ideally, vmlinuz='' would be the default, but there’s a problem with
>>>>> that: I submitted this test along with the patches that added the
>>>>> required feature to the Linux kernel, so at that point that feature was
>>>>> not part of Linux.  That’s why you generally have to point it to a Linux
>>>>> kernel binary you built yourself that has this feature (5.10 does).
>>>>
>>>> This is where it deviates from the rest of the check-acceptance tests.
>>>> Generally I don't have to worry about finding the right image myself.
>>>
>>> Yes, but there’s nothing I can do apart from just not having the test as
>>> part of qemu, which I don’t find better than to just cancel it when not
>>> run with the necessary parameters.
>> 
>> No I agree having the tests is useful.
>> 
>>>
>>> Or, well, I could let the test download and compile the Linux sources,
>>> but I don’t think that’s a viable alternative.
>> 
>> There has been discussion before but I agree it's not viable given the
>> compile times for such things.
>> 
>>>> At the least it would be worth pointing to a part of our docs on how
>>>> to build such an image.
>>>
>>> Well, I could perhaps come up with a comprehensive kernel configuration
>>> that works, but I really don’t think that’s valuable for people who just
>>> want to run the acceptance tests and don’t care about this test in
>>> particular.  I just don’t think they’re actually going to build a Linux
>>> kernel just for it.
>> 
>> Sure - but I was trying to review the series and as part of my review I
>> generally like to run the things I review. Hence why I stopped as I
>> couldn't get things running.
>> 
>>> (Alternatively, I could just build a Linux kernel here on my machine,
>>> upload the binary and point to it somewhere, e.g. in the cancel message.
>>>    That would be OK for me, and perhaps something I could imagine someone
>>> might actually use.)
>> 
>> I've actually done this with some Xen patches I'm working on at the
>> moment. I'll probably decorate the test with:
>> 
>>    @skipUnless(os.getenv('AVOCADO_ALLOW_UNTRUSTED_CODE'), 'untrusted code')
>> 
>> with a comment explaining what's waiting to be upstreamed. Once there
>> are upstream binaries I plan on transitioning the test to those.
>
> Oh, so you’d be fine with an in-code comment that explains why the 
> parameter is required right now, but will be optional in the future?  If 
> so, sounds good to me.

Yes that would be great ;-)

-- 
Alex Bennée


  reply	other threads:[~2021-02-09 16:18 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-03 17:23 [PATCH 00/22] Acceptance Test: introduce base class for Linux based tests Cleber Rosa
2021-02-03 17:23 ` [PATCH 01/22] tests/acceptance/boot_linux.py: fix typo on cloudinit error message Cleber Rosa
2021-02-03 17:41   ` Philippe Mathieu-Daudé
2021-02-04 10:34   ` Alex Bennée
2021-02-04 10:44   ` Beraldo Leal
2021-02-03 17:23 ` [PATCH 02/22] tests/acceptance/boot_linux.py: rename misleading cloudinit method Cleber Rosa
2021-02-04  6:50   ` Thomas Huth
2021-02-04 10:47   ` Alex Bennée
2021-02-04 10:48   ` Beraldo Leal
2021-02-03 17:23 ` [PATCH 03/22] Acceptance Tests: remove unnecessary tag from documentation example Cleber Rosa
2021-02-03 17:41   ` Philippe Mathieu-Daudé
2021-02-04 10:47   ` Alex Bennée
2021-02-03 17:23 ` [PATCH 04/22] tests/acceptance/virtiofs_submounts.py: use workdir property Cleber Rosa
2021-02-04 10:48   ` Alex Bennée
2021-02-04 10:50   ` Beraldo Leal
2021-02-03 17:23 ` [PATCH 05/22] tests/acceptance/virtiofs_submounts.py: do not ask for ssh key password Cleber Rosa
2021-02-04 10:49   ` Alex Bennée
2021-02-04 11:05   ` Beraldo Leal
2021-02-03 17:23 ` [PATCH 06/22] tests/acceptance/virtiofs_submounts.py: use a virtio-net device instead Cleber Rosa
2021-02-04 13:22   ` Alex Bennée
2021-02-03 17:23 ` [PATCH 07/22] tests/acceptance/virtiofs_submounts.py: evaluate string not length Cleber Rosa
2021-02-04 11:07   ` Beraldo Leal
2021-02-04 13:23   ` Alex Bennée
2021-02-09 10:25     ` Max Reitz
2021-02-09 11:24       ` Alex Bennée
2021-02-09 12:03         ` Max Reitz
2021-02-09 12:52           ` Alex Bennée
2021-02-09 13:35             ` Max Reitz
2021-02-09 16:15               ` Alex Bennée [this message]
2021-02-09 17:15             ` Philippe Mathieu-Daudé
2021-02-15 17:56               ` Cleber Rosa
2021-02-03 17:23 ` [PATCH 08/22] tests/acceptance/virtiofs_submounts.py: standardize port as integer Cleber Rosa
2021-02-04 11:14   ` Beraldo Leal
2021-02-03 17:23 ` [PATCH 09/22] tests/acceptance/virtiofs_submounts.py: required space between IP and port Cleber Rosa
2021-02-08 11:21   ` Philippe Mathieu-Daudé
2021-02-03 17:23 ` [PATCH 10/22] Python: add utility function for retrieving port redirection Cleber Rosa
2021-02-05  0:25   ` John Snow
2021-03-23 21:53     ` Cleber Rosa
2021-02-09 14:50   ` Wainer dos Santos Moschetta
2021-02-15 18:27     ` Cleber Rosa
2021-02-15 19:43       ` John Snow
2021-02-15 20:31       ` Wainer dos Santos Moschetta
2021-02-03 17:23 ` [PATCH 11/22] tests/acceptance/linux_ssh_mips_malta.py: standardize port as integer Cleber Rosa
2021-02-08 11:24   ` Philippe Mathieu-Daudé
2021-02-15 18:58   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 12/22] Acceptance tests: clarify ssh connection failure reason Cleber Rosa
2021-02-03 17:42   ` Philippe Mathieu-Daudé
2021-02-03 17:23 ` [PATCH 13/22] tests/acceptance/virtiofs_submounts.py: add missing accel tag Cleber Rosa
2021-02-08 11:28   ` Philippe Mathieu-Daudé
2021-02-15 17:37     ` Cleber Rosa
2021-02-09 14:54   ` Wainer dos Santos Moschetta
2021-02-15 20:05   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 14/22] Acceptance Tests: introduce LinuxTest base class Cleber Rosa
2021-02-09 19:27   ` Wainer dos Santos Moschetta
2021-02-15 19:06   ` Willian Rampazzo
2021-02-16  3:21     ` Cleber Rosa
2021-02-03 17:23 ` [PATCH 15/22] Acceptance Tests: move useful ssh methods to " Cleber Rosa
2021-02-09 19:56   ` Wainer dos Santos Moschetta
2021-02-15 19:15   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 16/22] Acceptance Tests: introduce method for requiring an accelerator Cleber Rosa
2021-02-04 11:25   ` Beraldo Leal
2021-02-15 19:20   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 17/22] Acceptance Tests: fix population of public key in cloudinit image Cleber Rosa
2021-02-11 10:08   ` Marc-André Lureau
2021-02-15 14:48   ` Wainer dos Santos Moschetta
2021-02-15 19:23   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 18/22] Acceptance Tests: set up existing ssh keys by default Cleber Rosa
2021-02-11 10:15   ` Marc-André Lureau
2021-02-16  3:28     ` Cleber Rosa
2021-02-15 19:25   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 19/22] Acceptance Tests: add port redirection for ssh " Cleber Rosa
2021-02-03 17:46   ` Philippe Mathieu-Daudé
2021-02-03 17:51     ` Philippe Mathieu-Daudé
2021-03-23 17:56       ` Cleber Rosa
2021-02-03 17:23 ` [PATCH 20/22] Acceptance Tests: add basic documentation on LinuxTest base class Cleber Rosa
2021-02-11 10:24   ` Marc-André Lureau
2021-02-12 20:30   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 21/22] Acceptance Tests: introduce CPU hotplug test Cleber Rosa
2021-02-11 10:25   ` Marc-André Lureau
2021-02-15 19:57   ` Willian Rampazzo
2021-02-03 17:23 ` [PATCH 22/22] [NOTFORMERGE] Bump Avocado version to latest master Cleber Rosa
2021-02-11 10:45   ` Marc-André Lureau
2021-02-08 11:35 ` [PATCH 00/22] Acceptance Test: introduce base class for Linux based tests Philippe Mathieu-Daudé
2021-02-15 15:49   ` Wainer dos Santos Moschetta
2021-02-15 17:03     ` Philippe Mathieu-Daudé
2021-02-16  3:35       ` Cleber Rosa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87eehp9pzz.fsf@linaro.org \
    --to=alex.bennee@linaro.org \
    --cc=aleksandar.rikalo@syrmia.com \
    --cc=aurelien@aurel32.net \
    --cc=bleal@redhat.com \
    --cc=crosa@redhat.com \
    --cc=eauger@redhat.com \
    --cc=ehabkost@redhat.com \
    --cc=f4bug@amsat.org \
    --cc=fam@euphon.net \
    --cc=jsnow@redhat.com \
    --cc=marcandre.lureau@redhat.com \
    --cc=mreitz@redhat.com \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=thuth@redhat.com \
    --cc=wainersm@redhat.com \
    --cc=wrampazz@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.