nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib
2, python
3}:
4
5let
6 py = python.override {
7 packageOverrides = self: super: {
8 click = super.click.overridePythonAttrs (oldAttrs: rec {
9 version = "6.7";
10 src = oldAttrs.src.override {
11 inherit version;
12 sha256 = "f15516df478d5a56180fbf80e68f206010e6d160fc39fa508b65e035fd75130b";
13 };
14 });
15
16 aws-sam-translator = super.aws-sam-translator.overridePythonAttrs (oldAttrs: rec {
17 version = "1.10.0";
18 src = oldAttrs.src.override {
19 inherit version;
20 sha256 = "0e1fa094c6791b233f5e73f2f0803ec6e0622f2320ec5a969f0986855221b92b";
21 };
22 });
23 };
24 };
25
26in
27
28with py.pkgs;
29
30buildPythonApplication rec {
31 pname = "aws-sam-cli";
32 version = "0.16.1";
33
34 src = fetchPypi {
35 inherit pname version;
36 sha256 = "2dd68800723c76f52980141ba704e105d77469b6ba465781fbc9120e8121e76c";
37 };
38
39 # Tests are not included in the PyPI package
40 doCheck = false;
41
42 propagatedBuildInputs = [
43 aws-lambda-builders
44 aws-sam-translator
45 chevron
46 click
47 cookiecutter
48 dateparser
49 docker
50 flask
51 idna
52 pathlib2
53 requests
54 serverlessrepo
55 six
56 ];
57
58 postPatch = ''
59 substituteInPlace requirements/base.txt --replace "requests==2.20.1" "requests==2.22.0"
60 substituteInPlace requirements/base.txt --replace "six~=1.11.0" "six~=1.12.0"
61 substituteInPlace requirements/base.txt --replace "PyYAML~=3.12" "PyYAML~=5.1"
62 '';
63
64 meta = with lib; {
65 homepage = https://github.com/awslabs/aws-sam-cli;
66 description = "CLI tool for local development and testing of Serverless applications";
67 license = licenses.asl20;
68 maintainers = with maintainers; [ andreabedini dhkl ];
69 };
70}