1{ lib 2, appdirs 3, buildPythonPackage 4, defusedxml 5, fetchFromGitHub 6, marshmallow 7, pytest-datafiles 8, pytest-vcr 9, pytestCheckHook 10, python-box 11, python-dateutil 12, pythonOlder 13, requests 14, requests-pkcs12 15, responses 16, restfly 17, semver 18, typing-extensions 19}: 20 21buildPythonPackage rec { 22 pname = "pytenable"; 23 version = "1.4.9"; 24 format = "setuptools"; 25 26 disabled = pythonOlder "3.7"; 27 28 src = fetchFromGitHub { 29 owner = "tenable"; 30 repo = "pyTenable"; 31 rev = "refs/tags/${version}"; 32 hash = "sha256-Cj1/f/e+j5CJMl+afF+HStd419Uh053jKk/vmObaBl8="; 33 }; 34 35 propagatedBuildInputs = [ 36 semver 37 ]; 38 39 buildInputs = [ 40 appdirs 41 defusedxml 42 marshmallow 43 python-box 44 python-dateutil 45 requests 46 requests-pkcs12 47 restfly 48 typing-extensions 49 ]; 50 51 checkInputs = [ 52 responses 53 pytest-datafiles 54 pytest-vcr 55 pytestCheckHook 56 ]; 57 58 disabledTests = [ 59 # Disable tests that requires a Docker container 60 "test_uploads_docker_push_name_typeerror" 61 "test_uploads_docker_push_tag_typeerror" 62 "test_uploads_docker_push_cs_name_typeerror" 63 "test_uploads_docker_push_cs_tag_typeerror" 64 ]; 65 66 pythonImportsCheck = [ 67 "tenable" 68 ]; 69 70 meta = with lib; { 71 description = "Python library for the Tenable.io and TenableSC API"; 72 homepage = "https://github.com/tenable/pyTenable"; 73 license = with licenses; [ mit ]; 74 maintainers = with maintainers; [ fab ]; 75 }; 76}