Run tests on ARM targets #251

Open
opened 2022-02-24 14:59:46 +00:00 by quentin · 0 comments
Owner

Why

We built invalid ARM binaries (dynamically linked instead of statically) and did not notice it. Then I built an invalid i386 binary but directly noticed it because we run integration tests against it. Running these tests on ARM would give us better confidence on our binaries.

How

It is possible to run our ARM binaries with qemu in user mode.

This method is quite fast as the native kernel is used, only the binary is emulated.

It is very also easy for us to implement it as our binary is statically compiled and does not require any rootfs.

For example, from Nix, it is as simple as:

nix-shell -p qemu --run 'bash -c "qemu-arm result/bin/garage"'
## Why We built invalid ARM binaries (dynamically linked instead of statically) and did not notice it. Then I built an invalid i386 binary but directly noticed it because we run integration tests against it. Running these tests on ARM would give us better confidence on our binaries. ## How It is possible to run our ARM binaries with qemu in user mode. This method is quite fast as the native kernel is used, only the binary is emulated. It is very also easy for us to implement it as our binary is statically compiled and does not require any rootfs. For example, from Nix, it is as simple as: ```bash nix-shell -p qemu --run 'bash -c "qemu-arm result/bin/garage"' ```
quentin added this to the Speculative milestone 2022-02-24 14:59:46 +00:00
quentin added the
prio
low
scope
build
labels 2022-02-24 14:59:46 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: Deuxfleurs/garage#251
No description provided.