mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-11-10 16:45:51 +03:00
Test that CD configuration can be rebuild.
svn path=/nixos/trunk/; revision=23908
This commit is contained in:
parent
de1ba135ac
commit
1a232545a0
@ -296,5 +296,43 @@ in {
|
||||
'';
|
||||
fileSystems = rootFS + bootFS;
|
||||
};
|
||||
|
||||
# Rebuild the CD configuration with a little modification.
|
||||
rebuildCD =
|
||||
{ inherit iso;
|
||||
nodes = { };
|
||||
testScript =
|
||||
''
|
||||
# damn, it's costly to evaluate nixos-rebuild (1G of ram)
|
||||
my $machine = Machine->new({ cdrom => glob("${iso}/iso/*.iso"), qemuFlags => '${qemuNICFlags 1 1} -m 1024' });
|
||||
$machine->start;
|
||||
|
||||
# Make sure that we get a login prompt etc.
|
||||
$machine->mustSucceed("echo hello");
|
||||
$machine->waitForJob("tty1");
|
||||
$machine->waitForJob("rogue");
|
||||
$machine->waitForJob("nixos-manual");
|
||||
|
||||
# Make sure that we don't try to download anything.
|
||||
$machine->stopJob("dhclient");
|
||||
$machine->mustSucceed("rm /etc/resolv.conf");
|
||||
|
||||
# Enable sshd service.
|
||||
$machine->mustSucceed(
|
||||
"sed -i 's,^}\$,jobs.sshd.startOn = pkgs.lib.mkOverride 0 \"startup\"; },' /etc/nixos/configuration.nix"
|
||||
);
|
||||
|
||||
my $cfg = $machine->mustSucceed("cat /etc/nixos/configuration.nix");
|
||||
print STDERR "New CD config:\n$cfg\n";
|
||||
|
||||
# Apply the new CD configuration.
|
||||
$machine->mustSucceed("nixos-rebuild build --no-pull"); # test / switch make it fails :(
|
||||
|
||||
# Connect to it-self.
|
||||
#$machine->waitForJob("sshd");
|
||||
#$machine->mustSucceed("ssh root@127.0.0.1 echo hello");
|
||||
|
||||
$machine->shutdown;
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user