Commit Graph

102 Commits

Author SHA1 Message Date
Eelco Dolstra
a65b5ec81c * Added an option boot.loader.grub.extraConfig to add commands to
grub.cfg before the menu entries.  (This could also be done using
  `extraEntriesBeforeNixOS', but then you can't have entries *after*
  the main entry anymore.)
* In the installer test, redirect GRUB output to the serial port.

svn path=/nixos/branches/boot-order/; revision=22300
2010-06-16 22:18:26 +00:00
Eelco Dolstra
a5c433696c * Put all of /var/run (not just /var/run/nscd) on a tmpfs to simplify
shutdown.  (Portmap and statd are needed during shutdown to unmount
  NFS volumes but have open files in /var/run.)
* In the shutdown job, don't kill PIDs belonging to Upstart jobs that
  are still running.  If they don't stop on the "starting shutdown"
  event, then they're needed during shutdown (such as portmap and
  statd).
* NFS test: test whether the shutdown quickly unmounts NFS volumes
  (i.e. whether portmap and statd are still running).

svn path=/nixos/branches/boot-order/; revision=22204
2010-06-09 22:29:06 +00:00
Eelco Dolstra
e519b0652a * Test whether locks survive a reboot of the server.
svn path=/nixos/branches/boot-order/; revision=22201
2010-06-09 15:11:46 +00:00
Eelco Dolstra
b56b4c22d5 * Test whether clients release their locks when they reboot.
svn path=/nixos/branches/boot-order/; revision=22199
2010-06-09 13:46:18 +00:00
Eelco Dolstra
6e27ce8e8e * Test whether distributed locking works on NFS.
svn path=/nixos/branches/boot-order/; revision=22197
2010-06-09 13:18:49 +00:00
Eelco Dolstra
5ddaf9b963 * Set `services.nfsKernel.client.enable' automatically if there is a
filesystem with type "nfs" or "nfs4".

svn path=/nixos/branches/boot-order/; revision=22189
2010-06-08 16:14:41 +00:00
Eelco Dolstra
2678f947fb * Add a test for the NFS server/client.
svn path=/nixos/branches/boot-order/; revision=22188
2010-06-08 16:02:22 +00:00
Eelco Dolstra
48255afa61 * This passwd doesn't have a --stdin flag.
svn path=/nixos/trunk/; revision=22110
2010-06-02 21:59:19 +00:00
Eelco Dolstra
046af078bb * We don't need Linux 2.6.27 anymore in the tests to get a writable
Nix store.  AUFS2 on 2.6.32 seems to work.

svn path=/nixos/trunk/; revision=22034
2010-05-28 07:10:17 +00:00
Eelco Dolstra
77a4004df1 * The installer test lost the QEMU flags to set up the NIC to talk to
the web server somewhere, so put them back in
  (http://hydra.nixos.org/build/424923).

svn path=/nixos/trunk/; revision=22003
2010-05-27 12:20:37 +00:00
Eelco Dolstra
894435ce5e * Slight cleanup.
svn path=/nixos/trunk/; revision=21998
2010-05-27 10:05:17 +00:00
Eelco Dolstra
fa89713c78 * Rename apply' and call'.
svn path=/nixos/trunk/; revision=21944
2010-05-23 12:02:54 +00:00
Eelco Dolstra
dd81311714 * Optionally pass the computed `nodes' to the test script as a
function argument, so that the test script can refer to computed
  values such as the assigned IP addresses of the virtual machines.

svn path=/nixos/trunk/; revision=21939
2010-05-21 14:31:05 +00:00
Eelco Dolstra
fa183e5472 * Expose networking.interfaces as an attribute set keyed on the
interface name through the derived option networking.ifaces.  This
  makes it easier to get information about specific interfaces
  (e.g. `nodes.router.config.networking.ifaces.eth2.ipAddress').
  Really networking.interfaces should be an attribute set.

svn path=/nixos/trunk/; revision=21938
2010-05-21 14:12:03 +00:00
Eelco Dolstra
3c7a6eb53c * Make the Bittorrent test more interesting by putting one client
behind a NAT router and verifying that another client can connect to
  it through the NAT (using a UPnP-IGD mapping created automatically
  by miniupnpd).

svn path=/nixos/trunk/; revision=21932
2010-05-20 23:07:21 +00:00
Eelco Dolstra
4dac9e5814 * Allow more complex network topologies in distributed tests. Each
machine can now declare an option `virtualisation.vlans' that causes
  it to have network interfaces connected to each listed virtual
  network.  For instance,

    virtualisation.vlans = [ 1 2 ];

  causes the machine to have two interfaces (in addition to eth0, used
  by the test driver to control the machine): eth1 connected to
  network 1 with IP address 192.168.1.<i>, and eth2 connected to
  network 2 with address 192.168.2.<i> (where <i> is the index of the
  machine in the `nodes' attribute set).  On the other hand,
  
    virtualisation.vlans = [ 2 ];

  causes the machine to only have an eth1 connected to network 2 with
  address 192.168.2.<i>.  So each virtual network <n> is assigned the
  IP range 192.168.<n>.0/24.

  Each virtual network is implemented using a separate multicast
  address on the host, so guests really cannot talk to networks to
  which they are not connected.

* Added a simple NAT test to demonstrate this.

* Added an option `virtualisation.qemu.options' to specify QEMU
  command-line options.  Used to factor out some commonality between
  the test driver script and the interactive test script.

svn path=/nixos/trunk/; revision=21928
2010-05-20 21:07:32 +00:00
Eelco Dolstra
85bd5bad32 * Another distributed test example: Bittorrent.
svn path=/nixos/trunk/; revision=21926
2010-05-20 14:56:04 +00:00
Eelco Dolstra
ec33622b48 * A test for installing NixOS on software RAID. Doesn't quite work
yet though - GRUB fails mysteriously on the second reboot.

svn path=/nixos/trunk/; revision=21808
2010-05-16 20:44:45 +00:00
Eelco Dolstra
835522e40d * Wait a bit more.
svn path=/nixos/trunk/; revision=21340
2010-04-27 12:24:16 +00:00
Sander van der Burg
97c20c8f4d Added openssh testcase
svn path=/nixos/trunk/; revision=20732
2010-03-18 13:07:56 +00:00
Eelco Dolstra
9d253ceca3 * Remove the obsolete gnu-integration.nix.
svn path=/nixos/trunk/; revision=20648
2010-03-16 12:10:50 +00:00
Eelco Dolstra
c1e313b5e1 * Remove obsolete references to kernelPackages in Nixpkgs.
svn path=/nixos/trunk/; revision=20647
2010-03-16 12:10:06 +00:00
Ludovic Courtès
8e16742b79 Update users of `services.sshd'.
svn path=/nixos/trunk/; revision=20575
2010-03-11 17:02:53 +00:00
Eelco Dolstra
cfcb5a1544 * Start of a GNU integration test (i.e. a variant of the NixOS
ISOs/tests that use the latest tarballs for GNU packages to provide
  a regression test for those GNU projects).

svn path=/nixos/trunk/; revision=20488
2010-03-09 12:21:26 +00:00
Eelco Dolstra
a8aefffa09 * Test whether logging into X assigns device ownership properly.
svn path=/nixos/trunk/; revision=20486
2010-03-09 11:43:56 +00:00
Eelco Dolstra
89d599bab1 * When switching between virtual terminals, check whether
ConsoleKit/udev change device ownership to the logged in user.

svn path=/nixos/trunk/; revision=20485
2010-03-09 11:38:24 +00:00
Eelco Dolstra
358f3cd79c * In tests/default.nix, only import lib/testing.nix.
svn path=/nixos/trunk/; revision=20483
2010-03-09 10:14:45 +00:00
Lluís Batlle i Rossell
0fb8300bb6 Updating the nixos NFS related expressions. Thanks to Oleksandr for the
help.
I tried not to break the tests.


svn path=/nixos/trunk/; revision=20157
2010-02-21 16:26:33 +00:00
Rob Vermaas
d79d934d85 move functions to lib/testing to allow easier use outside of nixos
svn path=/nixos/trunk/; revision=20072
2010-02-17 09:37:22 +00:00
Eelco Dolstra
eed3f9a118 * Remove a sleep that hopefully is no longer needed.
svn path=/nixos/trunk/; revision=20025
2010-02-15 19:30:35 +00:00
Eelco Dolstra
c373ac846d * Update test-upstart-job.sh for Upstart 0.6.
svn path=/nixos/trunk/; revision=19939
2010-02-11 16:14:47 +00:00
Eelco Dolstra
dbc03fbf68 * nixos-install: copy /etc/nsswitch.conf to the chroot. This seems
necessary to have it use /etc/hosts.

svn path=/nixos/trunk/; revision=19905
2010-02-10 14:31:46 +00:00
Eelco Dolstra
07cc5ac2fd * "python2.5" -> ${pkgs.python.libPrefix}
svn path=/nixos/trunk/; revision=19901
2010-02-10 12:39:47 +00:00
Eelco Dolstra
55c349fe20 * Added a test that checks whether users can log in on a virtual
console.  This uses the `sendkey' command in the QEMU monitor.
* For the block/unblock primitives, use the `set_link' command in the
  QEMU monitor.

svn path=/nixos/trunk/; revision=19854
2010-02-06 13:08:15 +00:00
Eelco Dolstra
5b60c280d7 * Make the Quake 3 test less timing-sensitive.
svn path=/nixos/trunk/; revision=19816
2010-02-04 13:59:31 +00:00
Ludovic Courtès
31f2d8ffbc Add simple portmap test.
svn path=/nixos/trunk/; revision=19700
2010-01-26 23:55:22 +00:00
Eelco Dolstra
3e3448a7df * Added an Upstart job to fetch the SSH key for logging into the root
account of the VM.  However, it doesn't work yet (the machine
  doesn't boot properly and there is no console output).  So use a
  hard-coded password for now (very dangerous!).

svn path=/nixos/trunk/; revision=19589
2010-01-21 08:03:58 +00:00
Eelco Dolstra
97668574dc * Doh.
svn path=/nixos/trunk/; revision=19584
2010-01-20 21:04:10 +00:00
Eelco Dolstra
dc137c54eb * Configuration used to generate an Amazon image. This doesn't belong
in `tests' but I don't have a better place right now.

svn path=/nixos/trunk/; revision=19583
2010-01-20 21:03:53 +00:00
Lluís Batlle i Rossell
473c9d8881 Fixing an additional missing check for linuxPackages/kernelPackages in tests.
svn path=/nixos/trunk/; revision=19444
2010-01-14 20:23:03 +00:00
Eelco Dolstra
73bdc861b7 * Added a test for a simple load-balancing web server. The tests
verify whether the reverse proxy works correctly if the back-ends go
  down and come up.  (Moved from the varia repo.)

svn path=/nixos/trunk/; revision=19356
2010-01-11 15:58:15 +00:00
Eelco Dolstra
f22a548c0d * Grrrr.
svn path=/nixos/trunk/; revision=19338
2010-01-10 19:19:52 +00:00
Eelco Dolstra
3219ad5587 * LVM test: use /dev/disk/by-label/nixos to see whether by-label works
for LVM.
* Add even more udevadm settle calls.  Urgh.

svn path=/nixos/trunk/; revision=19336
2010-01-10 19:05:30 +00:00
Eelco Dolstra
dcdbf68a68 * Add a sleep before initialising the Trac database. This shouldn't
be necessary, because waitForJob shouldn't return until Postgres is
  up and running, but we still get errors like this:

postgresql: running command: initctl status postgresql
postgresql: exit status 0
postgresql: running command: createdb trac
postgresql# createdb: could not connect to database postgres: FATAL:  the database system is starting up
postgresql: exit status 1
  

svn path=/nixos/trunk/; revision=19329
2010-01-10 16:31:19 +00:00
Eelco Dolstra
6cfe5e2746 * Add some more "udevadm settle" calls. Hopefully this fixes random
failures like this:

machine: running command: parted /dev/vda -- mkpart primary 1M 2048M
machine: exit status 0
machine: running command: parted /dev/vda -- set 1 lvm on
machine: exit status 1
machine: output: 
                                                                          
Warning: WARNING: the kernel failed to re-read the partition table on /dev/vda
(Device or resource busy).  As a result, it may not reflect all of your changes
until after reboot.
command `parted /dev/vda -- set 1 lvm on' did not succeed (exit code 1) at Machine.pm line 212, <GEN2> line 24.

svn path=/nixos/trunk/; revision=19328
2010-01-10 15:22:09 +00:00
Eelco Dolstra
1a0bb65901 * Added a regression test for whether the Nixpkgs channel works. This
is done by instantiating a webserver that simulates nixos.org.
  Using nix-push we create a channel that contains some stuff (namely
  the GNU Hello source tarball and the rlwrap program).  This was a
  bit tricky because nix-push requires a writable Nix store.  Using
  AUFS this is possible, but not on recent Linux kernels (AUFS1 over
  CIFS fails).

svn path=/nixos/trunk/; revision=19327
2010-01-10 01:26:01 +00:00
Eelco Dolstra
eee4b381ce * LVM test: don't use a /boot partition. GRUB 2 can boot directly
from LVM.

svn path=/nixos/trunk/; revision=19291
2010-01-07 14:59:43 +00:00
Eelco Dolstra
b74432218d * Test LVM installs.
svn path=/nixos/trunk/; revision=19289
2010-01-07 14:19:19 +00:00
Eelco Dolstra
a776afb085 * Parameterize the installer test to support different partitioning
schemes.
* Added a test for installing NixOS with a separate /boot partition.

svn path=/nixos/trunk/; revision=19283
2010-01-07 13:19:38 +00:00
Eelco Dolstra
381a38f5fe * Do a nixos-rebuild in the installed machine and then reboot again to
see if the system still boots.

svn path=/nixos/trunk/; revision=19279
2010-01-06 22:53:27 +00:00