On 24/10/2022 11.02, Daniel P. Berrangé wrote:
On Sat, Oct 22, 2022 at 02:03:50PM -0300, Daniel Henrique Barboza wrote:
'make check-avocado' will download any images that aren't present in the
cache via 'get-vm-images' in tests/Makefile.include. The target that
downloads fedora 31 images, get-vm-image-fedora-31, will use 'avocado
vmimage get --distro=fedora --distro-version=31 --arch=(...)' to
download the image for each arch. Note that this command does not
support any argument to set the hash algorithm used and, based on the
avocado source code [1], DEFAULT_HASH_ALGORITHM is set to "sha1". The
sha1 hash is stored in a Fedora-Cloud-Base-31-1.9.{ARCH}.qcow2-CHECKSUM
in the cache.
For now, in QEMU, let's use sha1 for all Fedora 31 images. This will
immediately spares us at least one extra download for each Fedora 31
image that we're doing in all our CI runs.
[1] https://github.com/avocado-framework/avocado.git @ 942a5d6972906
[2] https://github.com/avocado-framework/avocado/issues/5496
Can we just ask Avocado maintainers to fix this problem on their
side to allow use of a modern hash alg as a priority item. We've
already had this problem in QEMU for over a year AFAICT, so doesn't
seem like we need to urgently do a workaround on QEMU side, so we
can get Avocado devs to commit to fixing it in the next month.
Do we have such a commitment? ... The avocado version in QEMU is completely
backlevel these days, it's still using version 88.1 from May 2021, i.e.
there hasn't been any update since more than a year. I recently tried to
bump it to a newer version on my own (since I'm still suffering from the
problem that find_free_port() does not work if you don't have a local IPv6
address), but it's not that straight forward since the recent versions of
avocado changed a lot of things (e.g. the new nrunner - do we want to run
tests in parallel? If so it breaks a lot of the timeout settings, I think),
so an update needs a lot of careful testing...
So unless someone is really committing to spend a lot of time on updating
Avocado in QEMU in the near future, I don't think that such a fix for the
hash algorithm will happen any time soon, and thus I think we should
consider to include this work-around for the time being.
Thomas