liminix

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

test.nix (1013B)


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