diff options
Diffstat (limited to 'nixos/tests')
37 files changed, 90 insertions, 16 deletions
diff --git a/nixos/tests/avahi.nix b/nixos/tests/avahi.nix index b6f18087c56f..3898ddb4e8e6 100644 --- a/nixos/tests/avahi.nix +++ b/nixos/tests/avahi.nix @@ -1,6 +1,7 @@ # Test whether `avahi-daemon' and `libnss-mdns' work as expected. import ./make-test.nix { + name = "avahi"; nodes = { one = diff --git a/nixos/tests/bittorrent.nix b/nixos/tests/bittorrent.nix index b58657a5ecdb..002e012f65f0 100644 --- a/nixos/tests/bittorrent.nix +++ b/nixos/tests/bittorrent.nix @@ -23,6 +23,7 @@ let in { + name = "bittorrent"; nodes = { tracker = diff --git a/nixos/tests/check-filesystems.nix b/nixos/tests/check-filesystems.nix index 09401f9a3f44..71aa9649840f 100644 --- a/nixos/tests/check-filesystems.nix +++ b/nixos/tests/check-filesystems.nix @@ -6,6 +6,8 @@ with import ../lib/build-vms.nix { inherit nixos nixpkgs system; }; rec { + name = "check-filesystems"; + nodes = { share = {pkgs, config, ...}: { services.nfs.server.enable = true; diff --git a/nixos/tests/containers.nix b/nixos/tests/containers.nix index 8ad9cd6e0d79..f7dc8eb491d6 100644 --- a/nixos/tests/containers.nix +++ b/nixos/tests/containers.nix @@ -1,6 +1,7 @@ # Test for NixOS' container support. import ./make-test.nix { + name = "containers"; machine = { config, pkgs, ... }: diff --git a/nixos/tests/firefox.nix b/nixos/tests/firefox.nix index b42d473b8025..77a6f6ac9e71 100644 --- a/nixos/tests/firefox.nix +++ b/nixos/tests/firefox.nix @@ -1,4 +1,5 @@ import ./make-test.nix ({ pkgs, ... }: { + name = "firefox"; machine = { config, pkgs, ... }: diff --git a/nixos/tests/firewall.nix b/nixos/tests/firewall.nix index d10e10b1d91c..16922508c7c5 100644 --- a/nixos/tests/firewall.nix +++ b/nixos/tests/firewall.nix @@ -1,6 +1,7 @@ # Test the firewall module. import ./make-test.nix { + name = "firewall"; nodes = { walled = diff --git a/nixos/tests/gnome3.nix b/nixos/tests/gnome3.nix index f1a6ce633313..44668f57fc1e 100644 --- a/nixos/tests/gnome3.nix +++ b/nixos/tests/gnome3.nix @@ -1,4 +1,5 @@ import ./make-test.nix { + name = "gnome3"; machine = { config, pkgs, ... }: diff --git a/nixos/tests/gnome3_12.nix b/nixos/tests/gnome3_12.nix index 92a1919b8cb2..439674b69d5d 100644 --- a/nixos/tests/gnome3_12.nix +++ b/nixos/tests/gnome3_12.nix @@ -1,4 +1,5 @@ import ./make-test.nix { + name = "gnome3_12"; machine = { config, pkgs, ... }: diff --git a/nixos/tests/influxdb.nix b/nixos/tests/influxdb.nix index 278b264170fa..9f8ea061b960 100644 --- a/nixos/tests/influxdb.nix +++ b/nixos/tests/influxdb.nix @@ -1,6 +1,8 @@ # This test runs influxdb and checks if influxdb is up and running import ./make-test.nix { + name = "influxdb"; + nodes = { one = { config, pkgs, ... }: { services.influxdb.enable = true; diff --git a/nixos/tests/installer.nix b/nixos/tests/installer.nix index 98e8142a0dfd..1cd1aa63a55b 100644 --- a/nixos/tests/installer.nix +++ b/nixos/tests/installer.nix @@ -215,10 +215,11 @@ let ''; - makeInstallerTest = + makeInstallerTest = name: { createPartitions, testChannel ? false, useEFI ? false, grubVersion ? 2, grubDevice ? "/dev/vda" }: makeTest { inherit iso; + name = "installer-" + name; nodes = if testChannel then { inherit webserver; } else { }; testScript = testScriptFun { inherit createPartitions testChannel useEFI grubVersion grubDevice; @@ -233,7 +234,7 @@ in { # The (almost) simplest partitioning scheme: a swap partition and # one big filesystem partition. - simple = makeInstallerTest + simple = makeInstallerTest "simple" { createPartitions = '' $machine->succeed( @@ -251,7 +252,7 @@ in { }; # Same as the previous, but now with a separate /boot partition. - separateBoot = makeInstallerTest + separateBoot = makeInstallerTest "separateBoot" { createPartitions = '' $machine->succeed( @@ -273,7 +274,7 @@ in { # Create two physical LVM partitions combined into one volume group # that contains the logical swap and root partitions. - lvm = makeInstallerTest + lvm = makeInstallerTest "lvm" { createPartitions = '' $machine->succeed( @@ -295,7 +296,7 @@ in { ''; }; - swraid = makeInstallerTest + swraid = makeInstallerTest "swraid" { createPartitions = '' $machine->succeed( @@ -328,7 +329,7 @@ in { }; # Test a basic install using GRUB 1. - grub1 = makeInstallerTest + grub1 = makeInstallerTest "grub1" { createPartitions = '' $machine->succeed( @@ -348,7 +349,7 @@ in { }; # Test an EFI install. - efi = makeInstallerTest + efi = makeInstallerTest "efi" { createPartitions = '' $machine->succeed( @@ -369,6 +370,7 @@ in { # Rebuild the CD configuration with a little modification. rebuildCD = makeTest { inherit iso; + name = "rebuild-CD"; nodes = { }; testScript = '' diff --git a/nixos/tests/ipv6.nix b/nixos/tests/ipv6.nix index eb15363d3c32..af6fec6bfbf5 100644 --- a/nixos/tests/ipv6.nix +++ b/nixos/tests/ipv6.nix @@ -2,6 +2,7 @@ # solicication/advertisement using radvd works. import ./make-test.nix { + name = "ipv6"; nodes = { client = { config, pkgs, ... }: { }; diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix index ad7ea78ac49b..28027c294bc6 100644 --- a/nixos/tests/jenkins.nix +++ b/nixos/tests/jenkins.nix @@ -4,6 +4,7 @@ # 3. jenkins service not started on slave node import ./make-test.nix { + name = "jenkins"; nodes = { diff --git a/nixos/tests/kde4.nix b/nixos/tests/kde4.nix index 99a82a6b95df..90c37397821e 100644 --- a/nixos/tests/kde4.nix +++ b/nixos/tests/kde4.nix @@ -1,4 +1,5 @@ import ./make-test.nix ({ pkgs, ... }: { + name = "kde4"; machine = { config, pkgs, ... }: diff --git a/nixos/tests/kexec.nix b/nixos/tests/kexec.nix index b09287682c01..0f0565a60e95 100644 --- a/nixos/tests/kexec.nix +++ b/nixos/tests/kexec.nix @@ -1,6 +1,7 @@ # Test whether fast reboots via kexec work. import ./make-test.nix { + name = "kexec"; machine = { config, pkgs, ... }: { virtualisation.vlans = [ ]; }; diff --git a/nixos/tests/login.nix b/nixos/tests/login.nix index 44c53c231c81..e8373219ca68 100644 --- a/nixos/tests/login.nix +++ b/nixos/tests/login.nix @@ -1,6 +1,7 @@ import ./make-test.nix ({ pkgs, latestKernel ? false, ... }: { + name = "login"; machine = { config, pkgs, lib, ... }: diff --git a/nixos/tests/logstash.nix b/nixos/tests/logstash.nix index e6aba7a10126..7284cde7a33c 100644 --- a/nixos/tests/logstash.nix +++ b/nixos/tests/logstash.nix @@ -2,6 +2,7 @@ # elasticsearch is started. import ./make-test.nix { + name = "logstash"; nodes = { one = diff --git a/nixos/tests/misc.nix b/nixos/tests/misc.nix index 8caef146ec87..c03db6c43353 100644 --- a/nixos/tests/misc.nix +++ b/nixos/tests/misc.nix @@ -1,6 +1,7 @@ # Miscellaneous small tests that don't warrant their own VM run. import ./make-test.nix { + name = "misc"; machine = { config, lib, pkgs, ... }: diff --git a/nixos/tests/mpich.nix b/nixos/tests/mpich.nix index 13cd0960d07c..a4ef7b624267 100644 --- a/nixos/tests/mpich.nix +++ b/nixos/tests/mpich.nix @@ -1,6 +1,8 @@ # Simple example to showcase distributed tests using NixOS VMs. import ./make-test.nix { + name = "mpich"; + nodes = { master = { config, pkgs, ... }: { diff --git a/nixos/tests/mumble.nix b/nixos/tests/mumble.nix index 68ab8b642b01..32aae9161399 100644 --- a/nixos/tests/mumble.nix +++ b/nixos/tests/mumble.nix @@ -7,6 +7,8 @@ let }; in { + name = "mumble"; + nodes = { server = { config, pkgs, ... }: { services.murmur.enable = true; diff --git a/nixos/tests/munin.nix b/nixos/tests/munin.nix index acc4b949ab57..31676c10df1b 100644 --- a/nixos/tests/munin.nix +++ b/nixos/tests/munin.nix @@ -2,6 +2,7 @@ # machine. import ./make-test.nix { + name = "munin"; nodes = { one = diff --git a/nixos/tests/mysql-replication.nix b/nixos/tests/mysql-replication.nix index 7d0cf6d85a1a..5786fdbc58cd 100644 --- a/nixos/tests/mysql-replication.nix +++ b/nixos/tests/mysql-replication.nix @@ -6,6 +6,8 @@ let in { + name = "mysql-replication"; + nodes = { master = { pkgs, config, ... }: diff --git a/nixos/tests/mysql.nix b/nixos/tests/mysql.nix index 566d03baf367..0a753b9b625b 100644 --- a/nixos/tests/mysql.nix +++ b/nixos/tests/mysql.nix @@ -1,4 +1,5 @@ import ./make-test.nix { + name = "mysql"; nodes = { master = diff --git a/nixos/tests/nat.nix b/nixos/tests/nat.nix index 02981469e106..5fdcc0e97ca9 100644 --- a/nixos/tests/nat.nix +++ b/nixos/tests/nat.nix @@ -5,6 +5,7 @@ # for the client. import ./make-test.nix { + name = "nat"; nodes = { client = diff --git a/nixos/tests/nfs.nix b/nixos/tests/nfs.nix index 864d05626b67..61b2431c04c7 100644 --- a/nixos/tests/nfs.nix +++ b/nixos/tests/nfs.nix @@ -17,6 +17,7 @@ let in { + name = "nfs"; nodes = { client1 = client; diff --git a/nixos/tests/openssh.nix b/nixos/tests/openssh.nix index 0b9714c275da..692618c5a84d 100644 --- a/nixos/tests/openssh.nix +++ b/nixos/tests/openssh.nix @@ -1,4 +1,22 @@ -import ./make-test.nix ({ pkgs, ... }: { +import ./make-test.nix ({ pkgs, ... }: + +let + snakeOilPrivateKey = pkgs.writeText "privkey.snakeoil" '' + -----BEGIN EC PRIVATE KEY----- + MHcCAQEEIHQf/khLvYrQ8IOika5yqtWvI0oquHlpRLTZiJy5dRJmoAoGCCqGSM49 + AwEHoUQDQgAEKF0DYGbBwbj06tA3fd/+yP44cvmwmHBWXZCKbS+RQlAKvLXMWkpN + r1lwMyJZoSGgBHoUahoYjTh9/sJL7XLJtA== + -----END EC PRIVATE KEY----- + ''; + + snakeOilPublicKey = pkgs.lib.concatStrings [ + "ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHA" + "yNTYAAABBBChdA2BmwcG49OrQN33f/sj+OHL5sJhwVl2Qim0vkUJQCry1zFpKTa" + "9ZcDMiWaEhoAR6FGoaGI04ff7CS+1yybQ= sakeoil" + ]; + +in { + name = "openssh"; nodes = { @@ -9,6 +27,9 @@ import ./make-test.nix ({ pkgs, ... }: { services.openssh.enable = true; security.pam.services.sshd.limits = [ { domain = "*"; item = "memlock"; type = "-"; value = 1024; } ]; + users.extraUsers.root.openssh.authorizedKeys.keys = [ + snakeOilPublicKey + ]; }; client = @@ -23,15 +44,25 @@ import ./make-test.nix ({ pkgs, ... }: { $server->waitForUnit("sshd"); - $server->succeed("mkdir -m 700 /root/.ssh"); - $server->copyFileFromHost("key.pub", "/root/.ssh/authorized_keys"); + subtest "manual-authkey", sub { + $server->succeed("mkdir -m 700 /root/.ssh"); + $server->copyFileFromHost("key.pub", "/root/.ssh/authorized_keys"); + + $client->succeed("mkdir -m 700 /root/.ssh"); + $client->copyFileFromHost("key", "/root/.ssh/id_dsa"); + $client->succeed("chmod 600 /root/.ssh/id_dsa"); - $client->succeed("mkdir -m 700 /root/.ssh"); - $client->copyFileFromHost("key", "/root/.ssh/id_dsa"); - $client->succeed("chmod 600 /root/.ssh/id_dsa"); + $client->waitForUnit("network.target"); + $client->succeed("ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no server 'echo hello world' >&2"); + $client->succeed("ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no server 'ulimit -l' | grep 1024"); + }; - $client->waitForUnit("network.target"); - $client->succeed("ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no server 'echo hello world' >&2"); - $client->succeed("ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no server 'ulimit -l' | grep 1024"); + subtest "configured-authkey", sub { + $client->succeed("cat ${snakeOilPrivateKey} > privkey.snakeoil"); + $client->succeed("chmod 600 privkey.snakeoil"); + $client->succeed("ssh -o UserKnownHostsFile=/dev/null" . + " -o StrictHostKeyChecking=no -i privkey.snakeoil" . + " server true"); + }; ''; }) diff --git a/nixos/tests/partition.nix b/nixos/tests/partition.nix index 120ecaad8812..72fd37e041e5 100644 --- a/nixos/tests/partition.nix +++ b/nixos/tests/partition.nix @@ -63,6 +63,8 @@ let logvol / --size=1000 --grow --fstype=ext4 --name=root --vgname=nixos ''; in { + name = "partitiion"; + machine = { config, pkgs, ... }: { environment.systemPackages = [ pkgs.pythonPackages.nixpart diff --git a/nixos/tests/phabricator.nix b/nixos/tests/phabricator.nix index 8a8c6cb784cc..53038474c91a 100644 --- a/nixos/tests/phabricator.nix +++ b/nixos/tests/phabricator.nix @@ -1,4 +1,5 @@ import ./make-test.nix ({ pkgs, ... }: { + name = "phabricator"; nodes = { storage = diff --git a/nixos/tests/printing.nix b/nixos/tests/printing.nix index 16f9812d93b5..a55e077c2696 100644 --- a/nixos/tests/printing.nix +++ b/nixos/tests/printing.nix @@ -1,6 +1,7 @@ # Test printing via CUPS. import ./make-test.nix ({pkgs, ... }: { + name = "printing"; nodes = { diff --git a/nixos/tests/proxy.nix b/nixos/tests/proxy.nix index 88dbdb2720fb..01f0f3fe17a3 100644 --- a/nixos/tests/proxy.nix +++ b/nixos/tests/proxy.nix @@ -14,6 +14,7 @@ let in { + name = "proxy"; nodes = { proxy = diff --git a/nixos/tests/quake3.nix b/nixos/tests/quake3.nix index 3ff12fd57c06..b16cb179982a 100644 --- a/nixos/tests/quake3.nix +++ b/nixos/tests/quake3.nix @@ -13,6 +13,7 @@ let in rec { + name = "quake3"; makeCoverageReport = true; diff --git a/nixos/tests/rabbitmq.nix b/nixos/tests/rabbitmq.nix index ffcdde9d87f2..3ef3f92764c9 100644 --- a/nixos/tests/rabbitmq.nix +++ b/nixos/tests/rabbitmq.nix @@ -1,6 +1,7 @@ # This test runs rabbitmq and checks if rabbitmq is up and running. import ./make-test.nix ({ pkgs, ... }: { + name = "rabbitmq"; nodes = { one = { config, pkgs, ... }: { diff --git a/nixos/tests/simple.nix b/nixos/tests/simple.nix index e21b919cdf80..62d748d64296 100644 --- a/nixos/tests/simple.nix +++ b/nixos/tests/simple.nix @@ -1,4 +1,5 @@ import ./make-test.nix { + name = "simple" machine = { config, pkgs, ... }: { }; diff --git a/nixos/tests/subversion.nix b/nixos/tests/subversion.nix index e6746dc08287..50277edbdd89 100644 --- a/nixos/tests/subversion.nix +++ b/nixos/tests/subversion.nix @@ -32,6 +32,7 @@ let in { + name = "subversion"; nodes = { webserver = diff --git a/nixos/tests/tomcat.nix b/nixos/tests/tomcat.nix index 3b0b1bb79117..f3ee3477b5ac 100644 --- a/nixos/tests/tomcat.nix +++ b/nixos/tests/tomcat.nix @@ -1,4 +1,5 @@ import ./make-test.nix { + name = "tomcat"; nodes = { server = diff --git a/nixos/tests/trac.nix b/nixos/tests/trac.nix index 3f17dafaca15..87a2d328b4a6 100644 --- a/nixos/tests/trac.nix +++ b/nixos/tests/trac.nix @@ -1,4 +1,5 @@ import ./make-test.nix ({ pkgs, ... }: { + name = "trac"; nodes = { storage = diff --git a/nixos/tests/udisks2.nix b/nixos/tests/udisks2.nix index e0c57d7c34d6..1d2f79e4f6c1 100644 --- a/nixos/tests/udisks2.nix +++ b/nixos/tests/udisks2.nix @@ -10,6 +10,7 @@ let in { + name = "udisks2"; machine = { config, pkgs, ... }: diff --git a/nixos/tests/xfce.nix b/nixos/tests/xfce.nix index ded37943e51d..ced0c6b9826b 100644 --- a/nixos/tests/xfce.nix +++ b/nixos/tests/xfce.nix @@ -1,4 +1,5 @@ import ./make-test.nix { + name = "xfce"; machine = { config, pkgs, ... }: |