1{
2 lib,
3 buildPythonPackage,
4 debtcollector,
5 fetchFromGitHub,
6 jsonschema,
7 keystoneauth1,
8 openstackdocstheme,
9 osc-lib,
10 oslo-serialization,
11 oslo-utils,
12 oslotest,
13 pbr,
14 pythonOlder,
15 requests-mock,
16 requests,
17 setuptools,
18 sphinxHook,
19 sphinxcontrib-apidoc,
20 stestr,
21}:
22
23buildPythonPackage rec {
24 pname = "python-designateclient";
25 version = "6.3.0";
26 pyproject = true;
27
28 disabled = pythonOlder "3.9";
29
30 src = fetchFromGitHub {
31 owner = "openstack";
32 repo = "python-designateclient";
33 tag = version;
34 hash = "sha256-Upfu6FDaCRXniJLacuIt6K0qi8aOvHU0t43F3uWvhG8=";
35 };
36
37 env.PBR_VERSION = version;
38
39 nativeBuildInputs = [
40 openstackdocstheme
41 sphinxHook
42 sphinxcontrib-apidoc
43 ];
44
45 sphinxBuilders = [ "man" ];
46
47 build-system = [
48 pbr
49 setuptools
50 ];
51
52 dependencies = [
53 debtcollector
54 jsonschema
55 keystoneauth1
56 osc-lib
57 oslo-serialization
58 oslo-utils
59 requests
60 ];
61
62 nativeCheckInputs = [
63 oslotest
64 requests-mock
65 stestr
66 ];
67
68 checkPhase = ''
69 runHook preCheck
70 stestr run
71 runHook postCheck
72 '';
73
74 pythonImportsCheck = [ "designateclient" ];
75
76 meta = {
77 homepage = "https://opendev.org/openstack/python-designateclient";
78 description = "Client library for OpenStack Designate API";
79 license = lib.licenses.asl20;
80 teams = [ lib.teams.openstack ];
81 };
82}