depot/third_party/nixpkgs/pkgs/development/python-modules/troposphere/default.nix

55 lines
1.1 KiB
Nix
Raw Normal View History

{ lib
, buildPythonPackage
, fetchFromGitHub
, pythonOlder
, python
# python dependencies
, awacs
, cfn-flip
, typing-extensions
}:
buildPythonPackage rec {
pname = "troposphere";
version = "4.3.0";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "cloudtools";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-YciNwiLb/1fUYmlWtDRaJgtkgJi1mMt2FgeJKQi9yRg=";
};
propagatedBuildInputs = [
cfn-flip
] ++ lib.lists.optionals (pythonOlder "3.8") [
typing-extensions
];
nativeCheckInputs = [
awacs
];
passthru.optional-dependencies = {
policy = [ awacs ];
};
checkPhase = ''
${python.interpreter} -m unittest discover
'';
pythonImportsCheck = [ "troposphere" ];
meta = with lib; {
description = "Library to create AWS CloudFormation descriptions";
maintainers = with maintainers; [ jlesquembre ];
license = licenses.bsd2;
homepage = "https://github.com/cloudtools/troposphere";
changelog = "https://github.com/cloudtools/troposphere/blob/${version}/CHANGELOG.rst";
};
}