public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
From: Baurzhan Ismagulov <ibr@radix50.net>
To: isar-users@googlegroups.com
Subject: Re: [PATCH v10 17/17] ci_build: Install Avocado if needed
Date: Thu, 16 Sep 2021 16:11:32 +0200	[thread overview]
Message-ID: <20210916141132.GO8902@yssyq.m.ilbers.de> (raw)
In-Reply-To: <20210812175858.4264d095@md1za8fc.ad001.siemens.net>

On Thu, Aug 12, 2021 at 05:58:58PM +0200, Henning Schild wrote:
> > diff --git a/scripts/ci_build.sh b/scripts/ci_build.sh
...
> > +# Install Avocado if needed
...
> I do not like this.
...
> apt must not be used in scripts ... and it tells you about it.

That was only intended to help testing the series, dropped in v11. The
execution environment should provide the tools, with Debian packages or pip.


> The package should be mainlined into debian

We've filed an ITP: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=993862


> And i want more than "buster".

Provided stretch, buster, bullseye, bookworm at
http://deb.isar-build.org/debian-isar. The bookworm one should work for sid,
but we haven't tested it.


> I started looking into the avocado tests we currently have. Seems that they
> are still pretty different from what we used to have. Will this new version
> implement all the tests we used to have?
...
> I was only playing with what we currently have in next. But that seems to
> serialize the builds listed in that yaml. While before bitbake did run them
> all at once.

The initial Avocado implementation (in next today) provided only a matrix for
building all of individual multiconfigs, one per testcase. Yes, v11 intends to
provide exactly the same testcases that we have in ci_build.sh today. We could
add the individual single multiconfigs later if needed.


> My solution was to install that very unlucky choice of software with
> virtualenv

I assume this is about Avocado -- perhaps you could share some specific issues
you'd like to have addressed?

We did spend some time to evaluate our alternatives before choosing a specific
tool. Avocado is suitable for running Python and shell testcases, is not
limited to module testing, and is written in Python. It is a part of an
ecosystem supporting use cases like virtual machines, parallel execution,
easy testsuite composing via testcase tags, etc. It is the successor of
Autotest and has wide and very active community. We've used it in other
projects before Isar and got good impression. Having a test framework is waaay
better than maintaining ci_build.sh -- in the same way Isar is better than
build.sh ;) .

Of course, we are open to suggestions and improvements. One thing we have on
our radar is artifact reusing and testcase dependencies. E.g., with parallel
testcase execution, a start_vm testcase could depend on a bitbake one.


> I think the tests from that yaml should run in parallel to cause the same
> kind of stress ... just parallel in the testsuite instead of bitbake. And to
> hopefully speed things up a bit.

For the migration step, we aim at providing exactly the same testsuite as in
ci_build.sh and rework in later steps -- we'll share an RFC for that. Regarding
parallel execution, I think we need both parallel and bitbake with several
multiconfigs. This tradeoff isn't only about performance and stress; the latter
use case is necessary for per-build stuff (build numbers, release management,
etc.) and could potentially catch issues like missing dependencies, locking,
etc. that would be missed with the parallel execution of single multiconfig
builds.

A note on yaml -- that approach was very rigid, it supported only combinations
of single multiconfigs per testcase (we need more as described above) and
executed all of them (we need less to minimize the execution time).


With kind regards,
Baurzhan.

  reply	other threads:[~2021-09-16 14:11 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-30  8:27 [PATCH v10 00/17] Update Avocado testsuite Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 01/17] start_vm.py: Fix target name handling Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 02/17] start_vm.py: Add output and PID file vm_start.py options Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 03/17] start_vm.py: Add MIPS support Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 04/17] start_vm.py: Fix ubuntu image name Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 05/17] vm_boot_test: Fix log file path in vm_boot_test Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 06/17] vm_boot_test: Remove external varianter Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 07/17] vm_boot_test: Improve QEMU images checking Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 08/17] build_test: Refactoring build tests cases Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 09/17] testsuite: Add Python generations for testsuite in gitignore Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 10/17] testsuite: Fix test suite prepare guide Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 11/17] gitlab-ci: Add Avocado build artifacts Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 12/17] gitlab-ci: Add debug flag Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 13/17] vm_boot_test: Add automatic bitbake init Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 14/17] build_test: Protect ubuntu target with KFAIL Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 15/17] ci_build: Migrate to Avocado Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 16/17] vm_smoke_test: " Anton Mikanovich
2021-07-30  8:27 ` [PATCH v10 17/17] ci_build: Install Avocado if needed Anton Mikanovich
2021-08-12 15:58   ` Henning Schild
2021-09-16 14:11     ` Baurzhan Ismagulov [this message]
2021-08-12 16:13 ` [PATCH v10 00/17] Update Avocado testsuite Henning Schild
2021-08-12 16:19 ` Henning Schild

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=20210916141132.GO8902@yssyq.m.ilbers.de \
    --to=ibr@radix50.net \
    --cc=isar-users@googlegroups.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox