33afbf39f6
checkInputs used to be added to nativeBuildInputs. Now we have nativeCheckInputs to do that instead. Doing this treewide change allows to keep hashes identical to before the introduction of nativeCheckInputs.
69 lines
1.7 KiB
Nix
69 lines
1.7 KiB
Nix
{ lib
|
|
, fetchFromGitHub
|
|
, python3Packages
|
|
, prometheus-alertmanager
|
|
, fetchpatch
|
|
, runCommand
|
|
, prometheus-xmpp-alerts
|
|
}:
|
|
|
|
python3Packages.buildPythonApplication rec {
|
|
pname = "prometheus-xmpp-alerts";
|
|
version = "0.5.6";
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "jelmer";
|
|
repo = pname;
|
|
rev = "v${version}";
|
|
sha256 = "sha256-PwShGS1rbfZCK5OS6Cnn+mduOpWAD4fC69mcGB5GB1c=";
|
|
};
|
|
|
|
patches = [
|
|
# Required until https://github.com/jelmer/prometheus-xmpp-alerts/pull/33 is merged
|
|
# and contained in a release
|
|
(fetchpatch {
|
|
name = "Fix-outdated-entrypoint-definiton.patch";
|
|
url = "https://github.com/jelmer/prometheus-xmpp-alerts/commit/c41dd41dbd3c781b874bcf0708f6976e6252b621.patch";
|
|
hash = "sha256-G7fRLSXbkI5EDgGf4n9xSVs54IPD0ev8rTEFffRvLY0=";
|
|
})
|
|
];
|
|
|
|
postPatch = ''
|
|
substituteInPlace setup.cfg \
|
|
--replace "bs4" "beautifulsoup4"
|
|
'';
|
|
|
|
propagatedBuildInputs = [
|
|
prometheus-alertmanager
|
|
] ++ (with python3Packages; [
|
|
aiohttp
|
|
aiohttp-openmetrics
|
|
beautifulsoup4
|
|
jinja2
|
|
slixmpp
|
|
prometheus-client
|
|
pyyaml
|
|
]);
|
|
|
|
nativeCheckInputs = with python3Packages; [
|
|
unittestCheckHook
|
|
pytz
|
|
];
|
|
|
|
pythonImportsCheck = [ "prometheus_xmpp" ];
|
|
|
|
passthru.tests = {
|
|
binaryWorks = runCommand "${pname}-binary-test" {} ''
|
|
# Running with --help to avoid it erroring due to a missing config file
|
|
${prometheus-xmpp-alerts}/bin/prometheus-xmpp-alerts --help | tee $out
|
|
grep "usage: prometheus-xmpp-alerts" $out
|
|
'';
|
|
};
|
|
|
|
meta = {
|
|
description = "XMPP Web hook for Prometheus";
|
|
homepage = "https://github.com/jelmer/prometheus-xmpp-alerts";
|
|
maintainers = with lib.maintainers; [ fpletz ];
|
|
license = with lib.licenses; [ asl20 ];
|
|
};
|
|
}
|