1{
2 lib,
3 buildPythonPackage,
4 cryptography,
5 decorator,
6 fetchFromGitHub,
7 fixtures,
8 keystoneauth1,
9 openstacksdk,
10 openstackdocstheme,
11 osc-lib,
12 oslo-i18n,
13 oslo-log,
14 oslo-serialization,
15 oslo-utils,
16 oslotest,
17 osprofiler,
18 pbr,
19 prettytable,
20 python-openstackclient,
21 requests-mock,
22 requests,
23 setuptools,
24 sphinxHook,
25 stestr,
26 stevedore,
27 testtools,
28}:
29
30buildPythonPackage rec {
31 pname = "python-magnumclient";
32 version = "4.9.0";
33 pyproject = true;
34
35 src = fetchFromGitHub {
36 owner = "openstack";
37 repo = "python-magnumclient";
38 tag = version;
39 hash = "sha256-Ok211QgvsKqkotXrC4HwMyonLv7LzuCjs2hjruGDEvY=";
40 };
41
42 env.PBR_VERSION = version;
43
44 nativeBuildInputs = [
45 openstackdocstheme
46 sphinxHook
47 ];
48
49 sphinxBuilders = [ "man" ];
50
51 build-system = [
52 pbr
53 setuptools
54 ];
55
56 dependencies = [
57 cryptography
58 decorator
59 keystoneauth1
60 openstacksdk
61 osc-lib
62 oslo-i18n
63 oslo-log
64 oslo-serialization
65 oslo-utils
66 prettytable
67 requests
68 stevedore
69 ];
70
71 nativeCheckInputs = [
72 fixtures
73 python-openstackclient
74 osprofiler
75 oslotest
76 requests-mock
77 stestr
78 testtools
79 ];
80
81 checkPhase = ''
82 runHook preCheck
83 stestr run
84 runHook postCheck
85 '';
86
87 pythonImportsCheck = [ "magnumclient" ];
88
89 meta = {
90 homepage = "https://github.com/openstack/python-magnumclient";
91 description = "Client library for OpenStack Magnum API";
92 license = lib.licenses.asl20;
93 mainProgram = "magnum";
94 teams = [ lib.teams.openstack ];
95 };
96}