liminix

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

test.nix (915B)


      1 {
      2   liminix
      3 , nixpkgs
      4 }:
      5 let lmx = (import liminix {
      6       device = import "${liminix}/devices/qemu/";
      7       liminix-config = ./configuration.nix;
      8     });
      9     rogue = lmx.pkgs.rogue;
     10     img = lmx.outputs.vmroot;
     11     pkgs = import <nixpkgs> { overlays = [(import ../../overlay.nix)]; };
     12 in pkgs.runCommand "check" {
     13   nativeBuildInputs = with pkgs; [
     14     expect
     15     socat
     16     min-copy-closure
     17     rogue
     18   ] ;
     19 } ''
     20 . ${../test-helpers.sh}
     21 
     22 (
     23 mkdir vm
     24 ${img}/run.sh --lan user,hostfwd=tcp::2022-:22  --background ./vm
     25 expect ${./wait-until-ready.expect}
     26 export SSH_COMMAND="ssh -o StrictHostKeyChecking=no -p 2022 -i ${./id}"
     27 $SSH_COMMAND root@localhost echo ready
     28 IN_NIX_BUILD=true min-copy-closure --quiet root@localhost ${rogue}
     29 $SSH_COMMAND root@localhost ls -ld ${rogue}
     30 IN_NIX_BUILD=true min-copy-closure --root /run root@localhost ${rogue}
     31 $SSH_COMMAND root@localhost ls -ld /run/${rogue}
     32 ) 2>&1 | tee $out
     33 ''