summary refs log tree commit diff
path: root/nixos/tests/slurm.nix
diff options
context:
space:
mode:
authorMarkus Kowalewski <markus.kowalewski@gmail.com>2018-06-01 23:42:21 +0200
committerMarkus Kowalewski <markus.kowalewski@gmail.com>2018-06-02 00:19:03 +0200
commitc8faa482fa3eae065f011505c4d244d5511171c0 (patch)
tree6e57bb012e89567303b06dda519e93181c076598 /nixos/tests/slurm.nix
parent8026127e47398df660cc818d6266a552ecca8c1c (diff)
downloadnixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.tar
nixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.tar.gz
nixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.tar.bz2
nixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.tar.lz
nixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.tar.xz
nixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.tar.zst
nixpkgs-c8faa482fa3eae065f011505c4d244d5511171c0.zip
nixos/slurm: update test, add test for enableStools
* Add pure submit host to test 'enableStools'
* Disable client.enable on control machine
Diffstat (limited to 'nixos/tests/slurm.nix')
-rw-r--r--nixos/tests/slurm.nix23
1 files changed, 18 insertions, 5 deletions
diff --git a/nixos/tests/slurm.nix b/nixos/tests/slurm.nix
index dc4f62af564..c23d85e4002 100644
--- a/nixos/tests/slurm.nix
+++ b/nixos/tests/slurm.nix
@@ -1,7 +1,6 @@
 import ./make-test.nix ({ pkgs, ... }:
 let mungekey = "mungeverryweakkeybuteasytointegratoinatest";
     slurmconfig = {
-      client.enable = true;
       controlMachine = "control";
       nodeName = ''
         control
@@ -20,9 +19,12 @@ in {
         # TODO slrumd port and slurmctld port should be configurations and
         # automatically allowed by the  firewall.
         networking.firewall.enable = false;
-        services.slurm = slurmconfig;
+        services.slurm = {
+          client.enable = true;
+        } // slurmconfig;
       };
     in {
+
     control =
       { config, pkgs, ...}:
       {
@@ -31,17 +33,28 @@ in {
           server.enable = true;
         } // slurmconfig;
       };
+
+    submit =
+      { config, pkgs, ...}:
+      {
+        networking.firewall.enable = false;
+        services.slurm = {
+          enableStools = true;
+        } // slurmconfig;
+      };
+
     node1 = computeNode;
     node2 = computeNode;
     node3 = computeNode;
   };
 
+
   testScript =
   ''
   startAll;
 
   # Set up authentification across the cluster
-  foreach my $node (($control,$node1,$node2,$node3))
+  foreach my $node (($submit,$control,$node1,$node2,$node3))
   {
     $node->waitForUnit("default.target");
 
@@ -60,7 +73,7 @@ in {
   };
 
   subtest "can_start_slurmd", sub {
-    foreach my $node (($control,$node1,$node2,$node3))
+    foreach my $node (($node1,$node2,$node3))
     {
       $node->succeed("systemctl restart slurmd.service");
       $node->waitForUnit("slurmd");
@@ -72,7 +85,7 @@ in {
   subtest "run_distributed_command", sub {
     # Run `hostname` on 3 nodes of the partition (so on all the 3 nodes).
     # The output must contain the 3 different names
-    $control->succeed("srun -N 3 hostname | sort | uniq | wc -l | xargs test 3 -eq");
+    $submit->succeed("srun -N 3 hostname | sort | uniq | wc -l | xargs test 3 -eq");
   };
   '';
 })