mbox series

[0/3] tests/functional/asset: improve partial-download handling

Message ID 20250312051739.938441-1-npiggin@gmail.com (mailing list archive)
Headers show
Series tests/functional/asset: improve partial-download handling | expand

Message

Nicholas Piggin March 12, 2025, 5:17 a.m. UTC
Continuing discussion from 
https://lore.kernel.org/qemu-devel/20250311131327.903329-1-npiggin@gmail.com/

I added a basic short-download detection, cleaned up download retry
failure, and added an AssetError class that can help us be a bit
smarter about what to do with failures. That's extended to treating
short downloads similarly to non-404 HTTP errors in that it won't
fail the precache step, just skip the asset.

I still think that no asset errors should cache precache to fail
including 404 and hash mismatch, but that they should be punted to
the individual test cases that use those assets. IMO they should cause
test failure rather than test skip, so it's more obvious. But that can
be topic for later discussion. For now, this basically does the right
thing with the NetBSD archive short download problem and treats it the
way we would treat a 503 (which it essentially is), and that gets us
past the CI failures in functional-system-debian and
functional-system-fedora that are hitting upstream testing now.

Thanks,
Nick

Nicholas Piggin (3):
  tests/functional/asset: Fail assert fetch when retries are exceeded
  tests/functional/asset: Verify downloaded size
  tests/functional/asset: Add AssetError exception class

 tests/functional/qemu_test/asset.py | 60 +++++++++++++++++++++--------
 1 file changed, 45 insertions(+), 15 deletions(-)