Merge pull request #307098 from r-ryantm/auto-update/cilium-cli
[NixPkgs.git] / pkgs / development / python-modules / aetcd / default.nix
blob8a2652450cd1cf825e55124eca97814959304b49
1 { lib
2 , buildPythonPackage
3 , fetchFromGitHub
4 , grpcio
5 , protobuf
6 , pytest-asyncio
7 , pytest-mock
8 , pytestCheckHook
9 , pythonOlder
10 , setuptools
11 , setuptools-scm
14 buildPythonPackage rec {
15   pname = "aetcd";
16   version = "1.0.0a4";
17   pyproject = true;
19   disabled = pythonOlder "3.8";
21   src = fetchFromGitHub {
22     owner = "martyanov";
23     repo = "aetcd";
24     rev = "refs/tags/v${version}";
25     hash = "sha256-g49ppfh8dyGpZeu/HdTDX8RAk5VTcZmqENRpNY12qkg=";
26   };
28   postPatch = ''
29     substituteInPlace setup.py \
30       --replace-fail "setuptools_scm==6.3.2" "setuptools_scm"
31     substituteInPlace setup.cfg \
32       --replace-fail "--cov=aetcd" ""
33   '';
35   nativeBuildInputs = [
36     setuptools
37     setuptools-scm
38   ];
40   propagatedBuildInputs = [
41     grpcio
42     protobuf
43   ];
45   nativeCheckInputs = [
46     pytest-asyncio
47     pytest-mock
48     pytestCheckHook
49   ];
51   pythonImportsCheck = [
52     "aetcd"
53   ];
55   disabledTestPaths = [
56     # Tests require a running ectd instance
57     "tests/integration/"
58   ];
60   meta = with lib; {
61     description = "Python asyncio-based client for etcd";
62     homepage = "https://github.com/martyanov/aetcd";
63     changelog = "https://github.com/martyanov/aetcd/blob/v${version}/docs/changelog.rst";
64     license = licenses.asl20;
65     maintainers = with maintainers; [ fab ];
66   };