nixosTests.systemd-binfmt: init
This adds a simple test running GNU Hello cross-compiled for armv7l and aarch64 inside a x86_64 VM with configured binfmt. We already build the cross toolchains in other invocations, and building hello itself is small.
This commit is contained in:
parent
4e2715934e
commit
fd49155848
|
@ -304,6 +304,7 @@ in
|
||||||
syncthing-relay = handleTest ./syncthing-relay.nix {};
|
syncthing-relay = handleTest ./syncthing-relay.nix {};
|
||||||
systemd = handleTest ./systemd.nix {};
|
systemd = handleTest ./systemd.nix {};
|
||||||
systemd-analyze = handleTest ./systemd-analyze.nix {};
|
systemd-analyze = handleTest ./systemd-analyze.nix {};
|
||||||
|
systemd-binfmt = handleTestOn ["x86_64-linux"] ./systemd-binfmt.nix {};
|
||||||
systemd-boot = handleTestOn ["x86_64-linux"] ./systemd-boot.nix {};
|
systemd-boot = handleTestOn ["x86_64-linux"] ./systemd-boot.nix {};
|
||||||
systemd-confinement = handleTest ./systemd-confinement.nix {};
|
systemd-confinement = handleTest ./systemd-confinement.nix {};
|
||||||
systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
|
systemd-timesyncd = handleTest ./systemd-timesyncd.nix {};
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
# Teach the kernel how to run armv7l and aarch64-linux binaries,
|
||||||
|
# and run GNU Hello for these architectures.
|
||||||
|
import ./make-test-python.nix ({ pkgs, ... }: {
|
||||||
|
name = "systemd-binfmt";
|
||||||
|
machine = {
|
||||||
|
boot.binfmt.emulatedSystems = [
|
||||||
|
"armv7l-linux"
|
||||||
|
"aarch64-linux"
|
||||||
|
];
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = let
|
||||||
|
helloArmv7l = pkgs.pkgsCross.armv7l-hf-multiplatform.hello;
|
||||||
|
helloAarch64 = pkgs.pkgsCross.aarch64-multiplatform.hello;
|
||||||
|
in ''
|
||||||
|
machine.start()
|
||||||
|
assert "world" in machine.succeed(
|
||||||
|
"${helloArmv7l}/bin/hello"
|
||||||
|
)
|
||||||
|
assert "world" in machine.succeed(
|
||||||
|
"${helloAarch64}/bin/hello"
|
||||||
|
)
|
||||||
|
'';
|
||||||
|
})
|
Loading…
Reference in New Issue