about summary refs log tree commit diff
path: root/pkgs/by-name
diff options
context:
space:
mode:
authorMario Rodas <marsam@users.noreply.github.com>2024-03-26 18:22:18 -0500
committerGitHub <noreply@github.com>2024-03-26 18:22:18 -0500
commit4fd1a2c849ab7c0504fb1fe21a6ca908dba056f6 (patch)
tree14fca2f72f26671af88109b12a8f694aa02cd587 /pkgs/by-name
parent93975548e26626de3f39d97406b1866226cf5039 (diff)
parent2ac8d67212c46e60f8383bed96a107c9cd309e48 (diff)
Merge pull request #298600 from anthonyroussel/update/elasticsearch-curator
elasticsearch-curator: 8.0.10 -> 8.0.12
Diffstat (limited to 'pkgs/by-name')
-rw-r--r--pkgs/by-name/el/elasticsearch-curator/package.nix100
1 files changed, 100 insertions, 0 deletions
diff --git a/pkgs/by-name/el/elasticsearch-curator/package.nix b/pkgs/by-name/el/elasticsearch-curator/package.nix
new file mode 100644
index 0000000000000..3e12c03cbece8
--- /dev/null
+++ b/pkgs/by-name/el/elasticsearch-curator/package.nix
@@ -0,0 +1,100 @@
+{ lib
+, elasticsearch-curator
+, fetchFromGitHub
+, nix-update-script
+, python3
+, testers
+}:
+
+python3.pkgs.buildPythonApplication rec {
+  pname = "elasticsearch-curator";
+  version = "8.0.12";
+  format = "pyproject";
+
+  src = fetchFromGitHub {
+    owner = "elastic";
+    repo = "curator";
+    rev = "refs/tags/v${version}";
+    hash = "sha256-CU/8l5607eKodcdpMKu0Wdlg+K6YnFX6uoDju12NDR0=";
+  };
+
+  build-system = with python3.pkgs; [
+    hatchling
+  ];
+
+  dependencies = with python3.pkgs; [
+    certifi
+    click
+    ecs-logging
+    elasticsearch8
+    es-client
+    pyyaml
+    six
+    voluptuous
+  ];
+
+  nativeCheckInputs = with python3.pkgs; [
+    requests
+    pytestCheckHook
+  ];
+
+  disabledTestPaths = [
+    # Test requires running elasticsearch
+    "tests/integration/test_alias.py"
+    "tests/integration/test_allocation.py"
+    "tests/integration/test_cli.py"
+    "tests/integration/test_close.py"
+    "tests/integration/test_clusterrouting.py"
+    "tests/integration/test_count_pattern.py"
+    "tests/integration/test_create_index.py"
+    "tests/integration/test_datemath.py"
+    "tests/integration/test_delete_indices.py"
+    "tests/integration/test_delete_snapshots.py"
+    "tests/integration/test_delete_snapshots.py"
+    "tests/integration/test_es_repo_mgr.py"
+    "tests/integration/test_forcemerge.py"
+    "tests/integration/test_integrations.py"
+    "tests/integration/test_open.py"
+    "tests/integration/test_reindex.py"
+    "tests/integration/test_replicas.py"
+    "tests/integration/test_restore.py"
+    "tests/integration/test_rollover.py"
+    "tests/integration/test_shrink.py"
+    "tests/integration/test_snapshot.py"
+  ];
+
+  disabledTests = [
+    # Test require access network
+    "test_api_key_not_set"
+    "test_api_key_set"
+  ];
+
+  passthru = {
+    tests.version = testers.testVersion {
+      package = elasticsearch-curator;
+      command = "${lib.getExe elasticsearch-curator} --version";
+    };
+    updateScript = nix-update-script { };
+  };
+
+  meta = with lib; {
+    description = "Curate, or manage, your Elasticsearch indices and snapshots";
+    homepage = "https://github.com/elastic/curator";
+    changelog = "https://github.com/elastic/curator/releases/tag/v${version}";
+    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.
+    '';
+    mainProgram = "curator";
+    maintainers = with maintainers; [ basvandijk ];
+  };
+}