summary refs log tree commit diff
path: root/nixos/tests/jenkins.nix
diff options
context:
space:
mode:
authorCorey O'Connor <coreyoconnor@gmail.com>2014-02-10 12:07:12 -0800
committerCorey O'Connor <coreyoconnor@gmail.com>2014-03-13 13:01:49 -0700
commit9b79d5b298ead3bfdc14e32b179aec1b08434c10 (patch)
tree3038c355c4617ddd46591fd801e6da815ac0bd44 /nixos/tests/jenkins.nix
parent0f72effdd96e46401b5c3c3a6839f9c880822585 (diff)
downloadnixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.tar
nixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.tar.gz
nixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.tar.bz2
nixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.tar.lz
nixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.tar.xz
nixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.tar.zst
nixpkgs-9b79d5b298ead3bfdc14e32b179aec1b08434c10.zip
Add jenkins continuous integration server and user.
By default the jenkins server is executed under the user "jenkins". Which can be configured using
users.jenkins.* options. If a different user is requested by changing services.jenkins.user then
none of the users.jenkins options apply.

This patch does not include jenkins slave configuration. Some config options will probably change
when this is implemented.

Aspects like the user and environment are typically identical between slave and master. The service
configs are different. The design is for users.jenkins to cover the shared aspects while
services.jenkins and services.jenkins-slave cover the master and slave specific aspects,
respectively.

Another option would be to place everything under services.jenkins and have a config that selects
master vs slave.
Diffstat (limited to 'nixos/tests/jenkins.nix')
-rw-r--r--nixos/tests/jenkins.nix14
1 files changed, 14 insertions, 0 deletions
diff --git a/nixos/tests/jenkins.nix b/nixos/tests/jenkins.nix
new file mode 100644
index 00000000000..b05a9d3eaf9
--- /dev/null
+++ b/nixos/tests/jenkins.nix
@@ -0,0 +1,14 @@
+{ pkgs, ... }:
+{
+  nodes = {
+    master = { pkgs, config, ... }: {
+        services.jenkins.enable = true;
+      };
+  };
+
+  testScript = ''
+    startAll;
+
+    $master->waitForUnit("jenkins");
+  '';
+}