My personal project and infrastructure archive
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
nomicon/pkgs/tools/system/runitor/default.nix

52 lines
1.5 KiB

{ lib, buildGoModule, fetchFromGitHub, testers, runitor }:
buildGoModule rec {
pname = "runitor";
version = "0.9.2";
vendorSha256 = null;
src = fetchFromGitHub {
owner = "bdd";
repo = "runitor";
rev = "v${version}";
sha256 = "sha256-LuCxn4j0MlnJjSh3d18YNzNrtbqtMPxgkZttqKUGJd4";
};
ldflags = [
"-s" "-w" "-X main.Version=v${version}"
];
# TODO(cole-h):
# End-to-end tests requiring localhost networking currently under
# OfBorg's Linux builders, while passing under Darwin.
#
# Ref: https://github.com/NixOS/nixpkgs/pull/170566#issuecomment-1114034891
#
# Temporarily disable tests.
doCheck = false;
passthru.tests.version = testers.testVersion {
package = runitor;
command = "runitor -version";
version = "v${version}";
};
# Unit tests require binding to local addresses for listening sockets.
__darwinAllowLocalNetworking = true;
meta = with lib; {
homepage = "https://bdd.fi/x/runitor";
description = "A command runner with healthchecks.io integration";
longDescription = ''
Runitor runs the supplied command, captures its output, and based on its exit
code reports successful or failed execution to https://healthchecks.io or your
private instance.
Healthchecks.io is a web service for monitoring periodic tasks. It's like a
dead man's switch for your cron jobs. You get alerted if they don't run on time
or terminate with a failure.
'';
license = licenses.bsd0;
maintainers = with maintainers; [ bdd ];
};
}