1{ lib 2, buildPythonPackage 3, fetchFromGitHub 4, mock 5, parameterized 6, pip 7, pyelftools 8, pytestCheckHook 9, pythonOlder 10, six 11}: 12 13buildPythonPackage rec { 14 pname = "aws-lambda-builders"; 15 version = "1.41.0"; 16 format = "setuptools"; 17 18 disabled = pythonOlder "3.7"; 19 20 src = fetchFromGitHub { 21 owner = "awslabs"; 22 repo = "aws-lambda-builders"; 23 rev = "refs/tags/v${version}"; 24 hash = "sha256-Uxf52UzzCqXFFnQD1DwcSy3ylY+rYq6qbI5XK5JiVto="; 25 }; 26 27 postPatch = '' 28 substituteInPlace setup.py \ 29 --replace "version=read_version()," 'version="${version}",' 30 ''; 31 32 propagatedBuildInputs = [ 33 six 34 ]; 35 36 nativeCheckInputs = [ 37 mock 38 parameterized 39 pip 40 pyelftools 41 pytestCheckHook 42 ]; 43 44 disabledTests = [ 45 # CLI don't work in the sandbox 46 "test_run_hello_workflow" 47 # Don't tests integrations 48 "TestCustomMakeWorkflow" 49 "TestDotnet31" 50 "TestDotnet6" 51 "TestGoWorkflow" 52 "TestJavaGradle" 53 "TestJavaMaven" 54 "TestNodejsNpmWorkflow" 55 "TestNodejsNpmWorkflowWithEsbuild" 56 "TestPipRunner" 57 "TestPythonPipWorkflow" 58 "TestRubyWorkflow" 59 "TestRustCargo" 60 # Tests which are passing locally but not on Hydra 61 "test_copy_dependencies_action_1_multiple_files" 62 "test_move_dependencies_action_1_multiple_files" 63 ]; 64 65 pythonImportsCheck = [ 66 "aws_lambda_builders" 67 ]; 68 69 meta = with lib; { 70 description = "Tool to compile, build and package AWS Lambda functions"; 71 homepage = "https://github.com/awslabs/aws-lambda-builders"; 72 changelog = "https://github.com/aws/aws-lambda-builders/releases/tag/v${version}"; 73 longDescription = '' 74 Lambda Builders is a Python library to compile, build and package 75 AWS Lambda functions for several runtimes & frameworks. 76 ''; 77 license = licenses.asl20; 78 maintainers = with maintainers; [ dhkl ]; 79 }; 80}