at 24.05-pre 1.3 kB view raw
1{ lib 2, aws-sam-cli 3, boto3 4, buildPythonPackage 5, cfn-lint 6, fetchFromGitHub 7, mock 8, moto 9, mypy-boto3-ebs 10, poetry-core 11, pytestCheckHook 12, pythonOlder 13, typer 14, urllib3 15}: 16 17buildPythonPackage rec { 18 pname = "dsnap"; 19 version = "1.0.0"; 20 format = "pyproject"; 21 22 disabled = pythonOlder "3.7"; 23 24 src = fetchFromGitHub { 25 owner = "RhinoSecurityLabs"; 26 repo = "dsnap"; 27 rev = "refs/tags/v${version}"; 28 hash = "sha256-yKch+tKjFhvZfzloazMH378dkERF8gnZEX1Som+d670="; 29 }; 30 31 nativeBuildInputs = [ 32 poetry-core 33 ]; 34 35 propagatedBuildInputs = [ 36 boto3 37 urllib3 38 ]; 39 40 passthru.optional-dependencies = { 41 cli = [ 42 typer 43 ]; 44 scannerd = [ 45 aws-sam-cli 46 cfn-lint 47 ]; 48 }; 49 50 nativeCheckInputs = [ 51 mock 52 moto 53 mypy-boto3-ebs 54 pytestCheckHook 55 ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); 56 57 pythonImportsCheck = [ 58 "dsnap" 59 ]; 60 61 meta = with lib; { 62 description = "Utility for downloading and mounting EBS snapshots using the EBS Direct API's"; 63 homepage = "https://github.com/RhinoSecurityLabs/dsnap"; 64 changelog = "https://github.com/RhinoSecurityLabs/dsnap/releases/tag/v${version}"; 65 license = licenses.bsd3; 66 maintainers = with maintainers; [ fab ]; 67 }; 68} 69