Skip to content

Commit

Permalink
test: use QEMU from stable nixpkgs
Browse files Browse the repository at this point in the history
  • Loading branch information
erikarvstedt committed Sep 28, 2020
1 parent e278dbf commit ddead36
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 12 deletions.
10 changes: 0 additions & 10 deletions test/lib/make-test-vm.nix
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,6 @@ testArgs:
let
pkgs = import <nixpkgs> { config = {}; overlays = []; };

pkgs19_09 = import (pkgs.fetchzip {
url = "https://github.com/NixOS/nixpkgs-channels/archive/a7ceb2536ab11973c59750c4c48994e3064a75fa.tar.gz";
sha256 = "0hka65f31njqpq7i07l22z5rs7lkdfcl4pbqlmlsvnysb74ynyg1";
}) { config = {}; overlays = []; };

test = (import "${pkgs.path}/nixos/tests/make-test-python.nix") testArgs;

fixedTest = { system ? builtins.currentSystem, ... }@args:
Expand All @@ -23,11 +18,6 @@ let
exec ${pkgs.python3Packages.black}/bin/black $extraArgs "$@"
'';
};

# QEMU 4.20 from unstable fails on Travis build nodes with message
# "error: failed to set MSR 0x48b to 0x159ff00000000"
# Use version 4.0.1 instead.
inherit (pkgs19_09) qemu_test;
};
in
test (args // { pkgs = pkgsFixed; });
Expand Down
9 changes: 7 additions & 2 deletions test/run-tests.sh
Original file line number Diff line number Diff line change
Expand Up @@ -149,14 +149,19 @@ exprForCI() {
((memAvailableMiB < memoryMiB)) && memoryMiB=$memAvailableMiB
>&2 echo "VM stats: CPUs: $numCPUs, memory: $memoryMiB MiB"
>&2 echo "Host memory total: $((memTotalKiB / 1024)) MiB, available: $memAvailableMiB MiB"
vmTestNixExpr

# VMX is usually not available on CI nodes due to recursive virtualisation.
# Explicitly disable VMX, otherwise QEMU 4.20 fails with message
# "error: failed to set MSR 0x48b to 0x159ff00000000"
vmTestNixExpr "-cpu host,-vmx"
}

vmTestNixExpr() {
extraQEMUOpts="$1"
cat <<EOF
((import "$testDir/tests.nix" { scenario = "$scenario"; }).vm {}).overrideAttrs (old: rec {
buildCommand = ''
export QEMU_OPTS="-smp $numCPUs -m $memoryMiB"
export QEMU_OPTS="-smp $numCPUs -m $memoryMiB $extraQEMUOpts"
echo "VM stats: CPUs: $numCPUs, memory: $memoryMiB MiB"
'' + old.buildCommand;
})
Expand Down

0 comments on commit ddead36

Please sign in to comment.