aboutsummaryrefslogtreecommitdiff
path: root/nixos/tests
diff options
context:
space:
mode:
authorWilliButz <WilliButz@users.noreply.github.com>2019-09-14 13:16:07 +0200
committerGitHub <noreply@github.com>2019-09-14 13:16:07 +0200
commitcbb6293dcea87e0537bafe71a264d5f73cc2051c (patch)
treee7f117b42e620089eac6deb3679c4f3d5da4e985 /nixos/tests
parent859dd2199715582515f2ee17e9974ddd7a9d35fc (diff)
parentce37a040c262aed26e9c6fd63ba527ba1bc028cc (diff)
Merge pull request #68291 from Ma27/bump-hydra
hydra: 2019-05-06 -> 2019-08-30
Diffstat (limited to 'nixos/tests')
-rwxr-xr-xnixos/tests/hydra/create-trivial-project.sh2
-rw-r--r--nixos/tests/hydra/default.nix23
2 files changed, 18 insertions, 7 deletions
diff --git a/nixos/tests/hydra/create-trivial-project.sh b/nixos/tests/hydra/create-trivial-project.sh
index 39122c9b473..5aae2d5bf90 100755
--- a/nixos/tests/hydra/create-trivial-project.sh
+++ b/nixos/tests/hydra/create-trivial-project.sh
@@ -44,6 +44,8 @@ cat >data.json <<EOF
"enabled": "1",
"visible": "1",
"keepnr": "1",
+ "enableemail": true,
+ "emailoverride": "hydra@localhost",
"nixexprinput": "trivial",
"nixexprpath": "trivial.nix",
"inputs": {
diff --git a/nixos/tests/hydra/default.nix b/nixos/tests/hydra/default.nix
index f99b367ac9b..6ca05a2c779 100644
--- a/nixos/tests/hydra/default.nix
+++ b/nixos/tests/hydra/default.nix
@@ -8,8 +8,10 @@ let
trivialJob = pkgs.writeTextDir "trivial.nix" ''
{ trivial = builtins.derivation {
name = "trivial";
- system = "x86_64-linux";
+ system = "${system}";
builder = "/bin/sh";
+ allowSubstitutes = false;
+ preferLocalBuild = true;
args = ["-c" "echo success > $out; exit 0"];
};
}
@@ -53,11 +55,16 @@ let
notificationSender = "example@example.com";
package = pkgs.hydra.override { inherit nix; };
+
+ extraConfig = ''
+ email_notification = 1
+ '';
};
+ services.postfix.enable = true;
nix = {
buildMachines = [{
hostName = "localhost";
- systems = [ "x86_64-linux" ];
+ systems = [ system ];
}];
binaryCaches = [];
@@ -68,12 +75,12 @@ let
# let the system boot up
$machine->waitForUnit("multi-user.target");
# test whether the database is running
- $machine->succeed("systemctl status postgresql.service");
+ $machine->waitForUnit("postgresql.service");
# test whether the actual hydra daemons are running
- $machine->succeed("systemctl status hydra-queue-runner.service");
- $machine->succeed("systemctl status hydra-init.service");
- $machine->succeed("systemctl status hydra-evaluator.service");
- $machine->succeed("systemctl status hydra-send-stats.service");
+ $machine->waitForUnit("hydra-init.service");
+ $machine->requireActiveUnit("hydra-queue-runner.service");
+ $machine->requireActiveUnit("hydra-evaluator.service");
+ $machine->requireActiveUnit("hydra-notify.service");
$machine->succeed("hydra-create-user admin --role admin --password admin");
@@ -84,6 +91,8 @@ let
$machine->succeed("create-trivial-project.sh");
$machine->waitUntilSucceeds('curl -L -s http://localhost:3000/build/1 -H "Accept: application/json" | jq .buildstatus | xargs test 0 -eq');
+
+ $machine->waitUntilSucceeds('journalctl -eu hydra-notify.service -o cat | grep -q "sending mail notification to hydra@localhost"');
'';
})));