1{ stdenv
2, buildPythonPackage
3, fetchPypi
4, boto3
5, click
6, certifi
7, requests-aws4auth
8, voluptuous
9, pyyaml
10, elasticsearch
11, nosexcover
12, coverage
13, nose
14, mock
15, funcsigs
16} :
17
18buildPythonPackage rec {
19 pname = "elasticsearch-curator";
20 version = "5.5.4";
21
22 src = fetchPypi {
23 inherit pname version;
24 sha256 = "e75abeb7f7be939b1c64c071898760dc10ab5f08307c253fc074abf8a41a76f0";
25 };
26
27 # The test hangs so we disable it.
28 doCheck = false;
29
30 propagatedBuildInputs = [
31 click
32 certifi
33 requests-aws4auth
34 voluptuous
35 pyyaml
36 elasticsearch
37 boto3
38 ];
39
40 checkInputs = [
41 nosexcover
42 coverage
43 nose
44 mock
45 funcsigs
46 ];
47
48 meta = with stdenv.lib; {
49 homepage = https://github.com/elastic/curator;
50 description = "Curate, or manage, your Elasticsearch indices and snapshots";
51 license = licenses.asl20;
52 longDescription = ''
53 Elasticsearch Curator helps you curate, or manage, your Elasticsearch
54 indices and snapshots by:
55
56 * Obtaining the full list of indices (or snapshots) from the cluster, as the
57 actionable list
58
59 * Iterate through a list of user-defined filters to progressively remove
60 indices (or snapshots) from this actionable list as needed.
61
62 * Perform various actions on the items which remain in the actionable list.
63 '';
64 maintainers = with maintainers; [ basvandijk ];
65 };
66}