Bug#901030: add "needs-binfmt" to "Defined restrictions"
Simon McVittie [2018-06-14 18:21 +0100]:
> Having tests be able to probe for their own requirements and declare
> themselves to have been skipped, as they could in Automake (exit 77)
> or TAP (print "1..0 # SKIP ${details}"), would be one way out of that.
There doesn't need to be much formality around that. At the beginning, a test
can check for arbitrary conditions and then just do something like
if ! <conditions>; then
echo "SKIP: Machine does not support a hyperdrive"
exit 0
fi
> So I think tests that rely on binfmt_misc are always going to require
> Restrictions: isolation-machine, unless/until the kernel can be made to
> keep a separate table of binfmt_misc (pattern -> interpreter) mappings
> for each "container" (in kernel terms, for each mount namespace or user
> namespace or some new namespace type). That does not seem likely to
> happen any time soon.
Agreed. Let's keep things simple and not overdesign this. The more complicated
the Restrictions: schema becomes, the more edge cases you will find [1].
I daresay autopkgtests became so successful because they are structurally so
simple and easy to explain ("declare list, give dependencies, run program, exit
code 0 and no stderr")
Martin
[1] https://mikehadlow.blogspot.com/2012/05/configuration-complexity-clock.html
Reply to: