1
0
Fork 0
mirror of https://github.com/LnL7/nix-darwin.git synced 2024-12-14 11:57:34 +00:00
nix-darwin/tests/services-buildkite-agent.nix

33 lines
1 KiB
Nix
Raw Normal View History

2018-02-26 18:19:22 +00:00
{ config, pkgs, ... }:
let
buildkite-agent = pkgs.runCommand "buildkite-agent-0.0.0" {} "mkdir $out";
2018-02-26 18:19:22 +00:00
tokenPath = pkgs.writeText "buildkite_token" "TEST_TOKEN";
in
{
2018-02-26 18:19:22 +00:00
services.buildkite-agent = {
enable = true;
package = buildkite-agent;
2018-02-26 18:19:22 +00:00
extraConfig = "yolo=1";
openssh.privateKeyPath = "/dev/null";
openssh.publicKeyPath = "/dev/null";
hooks.command = "echo test hook";
2018-02-26 18:19:22 +00:00
inherit tokenPath;
};
test = ''
echo "checking buildkite-agent service in /Library/LaunchDaemons" >&2
grep "org.nixos.buildkite-agent" ${config.out}/Library/LaunchDaemons/org.nixos.buildkite-agent.plist
echo "checking creation of buildkite-agent service config" >&2
script=$(cat ${config.out}/Library/LaunchDaemons/org.nixos.buildkite-agent.plist | awk -F'[< ]' '$3 ~ "^/nix/store/.*" {print $3}')
grep "yolo=1" "$script"
grep "${tokenPath}" "$script"
echo "checking that a buildkite-agent hook works" >&2
hooks_path=$(cat $script | awk -F'"' '/^hooks-path/ {print $2;}')
$hooks_path/command | grep test
2018-02-26 18:19:22 +00:00
'';
}