From: David Gibson <david@gibson.dropbear.id.au>
To: passt-dev@passt.top
Subject: Re: [PATCH v2 00/11] Improve command dispatch in test scripts
Date: Sat, 10 Sep 2022 16:59:22 +1000 [thread overview]
Message-ID: <Yxw1yhwFCs0HkDd1@yekko> (raw)
In-Reply-To: <20220909172127.0878bfba@elisabeth>
[-- Attachment #1: Type: text/plain, Size: 2742 bytes --]
On Fri, Sep 09, 2022 at 05:21:27PM +0200, Stefano Brivio wrote:
> On Thu, 8 Sep 2022 11:49:09 +1000
> David Gibson <david(a)gibson.dropbear.id.au> wrote:
>
> > Sorry for the resend, but I found and fixed a couple of warts in this
> > series.
> >
> > The test scripts need to dispatch commands in various different
> > contexts: on the host, in namespaces, and in guests. Currently this
> > is done by running each context in a tmux pane and simulating typing
> > into that pane using tmux commands. This has a number of problems:
> >
> > * It's slow
> > * Getting the results from programs is tricky and error prone. We
> > can misparse output if:
> > * The window isn't large enough
> > * Commands produce output which looks like a shell prompt
> > * The shell doesn't have the prompt we expect
> > * A accidental keypress while the tests are running can mess up the
> > test run
> > * We have to issue explicit "echo $?" commands to check if things
> > succeeded
> >
> > This series adds a new subsystem to the test scripts for dispatching
> > commands which accurately preserves output (both stdout and stderr),
> > and exit codes.
> >
> > Most of the testsuite is converted to this new system. For now the
> > distro tests still rely on the old approach, since they have some
> > complications that require additional handling. That does, alas, mean
> > we have some ugly transitional code remaining. Oh well, we should be
> > able to clean that up at some point.
> >
> > This series is pased on the previous series cleaning up the
> > performance tests.
> >
> > Changes since v1:
> > * Removed a couple of commented debugging lines in patch 9/11
> > * Removed a no longer necessary pipe-pane in patch 9/11
>
> In general, this looks like a big improvement, and I would try to apply
> it basically as it is (I haven't run the tests yet).
>
> There are a few nits that might need to be addressed. I can fix them up
> on merge, unless you re-spin this, but I'd need some help with the
> comment on 11/11.
I'll send a respin next week when I can re-run the tests.
This weekend I've realized another problem with the current testsuite:
it reacts very poorly if the host has no IPv6 connectivity. Unusually
for Australia I do have IPv6 at home, but not while I'm travelling
with mobile data. I could get it using a VPN, of course, but it's a
hassle.
Anyway, that's another reason why having a more controlled artificial
network environment for the tests would be valuable; I'll tackle that
when I can.
--
David Gibson | I'll have my music baroque, and my code
david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_
| _way_ _around_!
http://www.ozlabs.org/~dgibson
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
prev parent reply other threads:[~2022-09-10 6:59 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-08 1:49 [PATCH v2 00/11] Improve command dispatch in test scripts David Gibson
2022-09-08 1:49 ` [PATCH v2 01/11] test: Correctly match "background" with "wait" commands David Gibson
2022-09-08 1:49 ` [PATCH v2 02/11] test: Context execution helpers David Gibson
2022-09-08 1:49 ` [PATCH v2 03/11] test: Allow a tmux pane to watch commands executed in contexts David Gibson
2022-09-09 15:18 ` Stefano Brivio
2022-09-10 6:36 ` David Gibson
2022-09-08 1:49 ` [PATCH v2 04/11] test: Integration of old-style pane execution and new context execution David Gibson
2022-09-08 1:49 ` [PATCH v2 05/11] test: Issue host commands via context for most tests David Gibson
2022-09-09 15:18 ` Stefano Brivio
2022-09-10 6:38 ` David Gibson
2022-09-08 1:49 ` [PATCH v2 06/11] test: Use new-style contexts for passt pane in the pasta and passt tests David Gibson
2022-09-08 1:49 ` [PATCH v2 07/11] test: Add nsholder utility David Gibson
2022-09-09 15:18 ` Stefano Brivio
2022-09-10 6:45 ` David Gibson
2022-09-08 1:49 ` [PATCH v2 08/11] test: Extend context system to run commands in namespace for pasta tests David Gibson
2022-09-08 1:49 ` [PATCH v2 09/11] test: Use context system for guest commands David Gibson
2022-09-08 1:49 ` [PATCH v2 10/11] test: Use context system for two_guests tests David Gibson
2022-09-08 1:49 ` [PATCH v2 11/11] test: Use new-style command issue for passt_in_ns tests David Gibson
2022-09-09 15:19 ` Stefano Brivio
2022-09-10 6:47 ` David Gibson
2022-09-10 20:40 ` Stefano Brivio
2022-09-09 15:21 ` [PATCH v2 00/11] Improve command dispatch in test scripts Stefano Brivio
2022-09-10 6:59 ` David Gibson [this message]
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=Yxw1yhwFCs0HkDd1@yekko \
--to=david@gibson.dropbear.id.au \
--cc=passt-dev@passt.top \
/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.
Code repositories for project(s) associated with this public inbox
https://passt.top/passt
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for IMAP folder(s).