Continuing discussion from https://lore.kernel.org/qemu-devel/20250311131327.903329-1-npig...@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(-) -- 2.47.1