summary refs log tree commit diff
path: root/nixos/tests/jenkins.nix
diff options
context:
space:
mode:
authorCorey O'Connor <coreyoconnor@gmail.com>2014-03-06 10:06:53 -0800
committerCorey O'Connor <coreyoconnor@gmail.com>2014-03-13 13:01:50 -0700
commit40de28afca0faa6673948bf99f444faad1d1a2d4 (patch)
tree0a7c874fde8a886f43de82b28c4cf0a924607696 /nixos/tests/jenkins.nix
parent4b6e67f6c43c49dd2cb950c152d22cf59b5364a6 (diff)
downloadnixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.tar
nixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.tar.gz
nixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.tar.bz2
nixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.tar.lz
nixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.tar.xz
nixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.tar.zst
nixpkgs-40de28afca0faa6673948bf99f444faad1d1a2d4.zip
remove users.jenkins config start on slave config.
Uses standard NixOS user config merging.
Work in progress: The slave config does not actually start the slave agent. This just configures a
jenkins user if required. Bare minimum to enable a nice jenkins SSH slave.
Diffstat (limited to 'nixos/tests/jenkins.nix')
-rw-r--r--nixos/tests/jenkins.nix21
1 files changed, 21 insertions, 0 deletions
diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix
index b05a9d3eaf9..e6524ec5653 100644
--- a/nixos/tests/jenkins.nix
+++ b/nixos/tests/jenkins.nix
@@ -1,8 +1,22 @@
+# verifies:
+#   1. jenkins service starts on master node
+#   2. jenkins user can be extended on both master and slave
+#   3. jenkins service not started on slave node
 { pkgs, ... }:
 {
   nodes = {
     master = { pkgs, config, ... }: {
         services.jenkins.enable = true;
+
+        # should have no effect
+        services.jenkinsSlave.enable = true;
+
+        users.extraUsers.jenkins.extraGroups = [ "users" ];
+      };
+    slave = { pkgs, config, ... }: {
+        services.jenkinsSlave.enable = true;
+
+        users.extraUsers.jenkins.extraGroups = [ "users" ];
       };
   };
 
@@ -10,5 +24,12 @@
     startAll;
 
     $master->waitForUnit("jenkins");
+    print $master->execute("sudo -u jenkins groups");
+    $master->mustSucceed("sudo -u jenkins groups | grep jenkins | grep users");
+
+    print $slave->execute("sudo -u jenkins groups");
+    $slave->mustSucceed("sudo -u jenkins groups | grep jenkins | grep users");
+
+    $slave->mustFail("systemctl status jenkins.service");
   '';
 }