balena-os / leviathan

A distributed hardware testing framework
https://balena-os.github.io/leviathan
Apache License 2.0
22 stars 6 forks source link

Errors on container recreation #1188

Open alexgg opened 2 weeks ago

alexgg commented 2 weeks ago

Using a modern docker version:

Docker version 26.1.3, build b72abbb

The docker-compose used in Leviathan shows the following error on shutdown:

client_1  | *******  Final Test Result of Leviathan Run  *******
client_1  | [
client_1  |   {
client_1  |     suite: 'Unmanaged BalenaOS release suite',
client_1  |     stats: { tests: 2, ran: 0, skipped: 2, passed: 0, failed: 0 },
client_1  |     tests: {
client_1  |       'check UEFI secure boot': 'skipped',
client_1  |       'check RPI secure boot': 'skipped'
client_1  |     },
client_1  |     dateTime: 'Tue Jun 18 2024 09:45:33 GMT+0000 (Coordinated Universal Time)'
client_1  |   }
client_1  | ]
leviathan_client_1 exited with code 1
Aborting on container exit...
Stopping leviathan_core_1   ... done
ERROR: 1
make: *** [Makefile:81: test] Error 1

This is caused by a mismatch between docker and docker-compose. Updating docker-compose would allow to use:

docker compose up --force-recreate --remove-orphans --exit-code-from client

Which should solve the problem.

However, there seems to be a compatibility problem with QEMU that might cause issues:

we require a specific release version that correctly supports device_cgroup_rules for the qemu worker