2019-11-18 20:57:08 +00:00
|
|
|
{ lib, fetchFromGitHub, python }:
|
2017-12-21 21:09:41 +00:00
|
|
|
|
2019-11-18 20:57:08 +00:00
|
|
|
let
|
|
|
|
py = python.override {
|
|
|
|
packageOverrides = self: super: {
|
|
|
|
click = super.click.overridePythonAttrs (oldAttrs: rec {
|
|
|
|
version = "6.7";
|
|
|
|
src = oldAttrs.src.override {
|
|
|
|
inherit version;
|
|
|
|
sha256 = "f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b";
|
|
|
|
};
|
|
|
|
});
|
|
|
|
};
|
|
|
|
};
|
|
|
|
in
|
|
|
|
|
|
|
|
with py.pkgs;
|
|
|
|
buildPythonApplication rec {
|
2017-12-21 21:09:41 +00:00
|
|
|
pname = "elasticsearch-curator";
|
2019-10-24 07:47:29 +01:00
|
|
|
version = "5.8.1";
|
2017-12-21 21:09:41 +00:00
|
|
|
|
2019-11-18 20:57:08 +00:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "elastic";
|
|
|
|
repo = "curator";
|
|
|
|
rev = "v${version}";
|
|
|
|
sha256 = "1shr9jslirjnbvma3p19djsnamxl7f3m9c8zrlclk57zv8rnwpkr";
|
2017-12-21 21:09:41 +00:00
|
|
|
};
|
|
|
|
|
2018-08-26 00:20:15 +01:00
|
|
|
# The test hangs so we disable it.
|
2018-08-25 15:44:27 +01:00
|
|
|
doCheck = false;
|
2017-12-21 21:09:41 +00:00
|
|
|
|
|
|
|
propagatedBuildInputs = [
|
|
|
|
click
|
|
|
|
certifi
|
2018-08-25 15:34:56 +01:00
|
|
|
requests-aws4auth
|
2019-11-18 20:57:08 +00:00
|
|
|
pyopenssl
|
2017-12-21 21:09:41 +00:00
|
|
|
voluptuous
|
|
|
|
pyyaml
|
|
|
|
elasticsearch
|
2018-08-21 16:41:26 +01:00
|
|
|
boto3
|
2017-12-21 21:09:41 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
checkInputs = [
|
|
|
|
nosexcover
|
|
|
|
coverage
|
|
|
|
nose
|
|
|
|
mock
|
|
|
|
funcsigs
|
|
|
|
];
|
|
|
|
|
2019-09-06 15:10:39 +01:00
|
|
|
postPatch = ''
|
2019-11-18 20:57:08 +00:00
|
|
|
sed -i s/pyyaml==3.13/pyyaml/g setup.cfg setup.py
|
|
|
|
sed -i s/pyyaml==3.12/pyyaml/g setup.cfg setup.py
|
|
|
|
substituteInPlace setup.py \
|
|
|
|
--replace "urllib3>=1.24.2,<1.25" "urllib3"
|
|
|
|
substituteInPlace setup.cfg \
|
|
|
|
--replace "urllib3>=1.24.2,<1.25" "urllib3"
|
2019-09-06 15:10:39 +01:00
|
|
|
'';
|
|
|
|
|
2019-11-18 20:57:08 +00:00
|
|
|
meta = with lib; {
|
2017-12-21 21:09:41 +00:00
|
|
|
homepage = https://github.com/elastic/curator;
|
|
|
|
description = "Curate, or manage, your Elasticsearch indices and snapshots";
|
|
|
|
license = licenses.asl20;
|
|
|
|
longDescription = ''
|
|
|
|
Elasticsearch Curator helps you curate, or manage, your Elasticsearch
|
|
|
|
indices and snapshots by:
|
|
|
|
|
|
|
|
* Obtaining the full list of indices (or snapshots) from the cluster, as the
|
|
|
|
actionable list
|
|
|
|
|
|
|
|
* Iterate through a list of user-defined filters to progressively remove
|
|
|
|
indices (or snapshots) from this actionable list as needed.
|
|
|
|
|
|
|
|
* Perform various actions on the items which remain in the actionable list.
|
|
|
|
'';
|
|
|
|
maintainers = with maintainers; [ basvandijk ];
|
2019-03-21 10:44:08 +00:00
|
|
|
|
|
|
|
# https://github.com/elastic/curator/pull/1280
|
2019-11-18 20:57:08 +00:00
|
|
|
#broken = versionAtLeast click.version "7.0";
|
2017-12-21 21:09:41 +00:00
|
|
|
};
|
|
|
|
}
|