1{ lib
2, buildPythonPackage
3, fetchFromGitHub
4, poetry-core
5, pytestCheckHook
6, python-gvm
7, pythonAtLeast
8, pythonOlder
9}:
10
11buildPythonPackage rec {
12 pname = "gvm-tools";
13 version = "23.11.0";
14 format = "pyproject";
15
16 disabled = pythonOlder "3.7";
17
18 src = fetchFromGitHub {
19 owner = "greenbone";
20 repo = pname;
21 rev = "refs/tags/v${version}";
22 hash = "sha256-ZwImkTYYSscmGJYCpMWmZjToi41XjT4Znpo8j66BKIs=";
23 };
24
25 nativeBuildInputs = [
26 poetry-core
27 ];
28
29 propagatedBuildInputs = [
30 python-gvm
31 ];
32
33 nativeCheckInputs = [
34 pytestCheckHook
35 ];
36
37 disabledTests = [
38 # Don't test sending
39 "SendTargetTestCase"
40 ] ++ lib.optionals (pythonAtLeast "3.10") [
41 "HelpFormattingParserTestCase"
42 ];
43
44 pythonImportsCheck = [
45 "gvmtools"
46 ];
47
48 meta = with lib; {
49 description = "Collection of APIs that help with remote controlling a Greenbone Security Manager";
50 homepage = "https://github.com/greenbone/gvm-tools";
51 changelog = "https://github.com/greenbone/gvm-tools/releases/tag/v${version}";
52 license = with licenses; [ gpl3Plus ];
53 maintainers = with maintainers; [ fab ];
54 };
55}