1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 pbr,
6 appdirs,
7 cliff,
8 dogpile-cache,
9 jsonschema,
10 keystoneauth1,
11 openstacksdk,
12 osc-lib,
13 oslo-utils,
14 pyyaml,
15 requests,
16 stevedore,
17 stestr,
18 requests-mock,
19 oslotest,
20}:
21
22buildPythonPackage rec {
23 pname = "python-ironicclient";
24 version = "5.6.0";
25 format = "setuptools";
26
27 src = fetchPypi {
28 inherit pname version;
29 hash = "sha256-zWlfy+Pfu0l7vBQnLOIP9vaXzx+i35k4oQqPUtLg3cE=";
30 };
31
32 propagatedBuildInputs = [
33 pbr
34 appdirs
35 cliff
36 dogpile-cache
37 jsonschema
38 keystoneauth1
39 openstacksdk
40 osc-lib
41 oslo-utils
42 pyyaml
43 requests
44 stevedore
45 ];
46
47 nativeCheckInputs = [
48 stestr
49 requests-mock
50 oslotest
51 ];
52
53 checkPhase = ''
54 stestr run
55 '';
56
57 pythonImportsCheck = [ "ironicclient" ];
58
59 meta = with lib; {
60 description = "A client for OpenStack bare metal provisioning API, includes a Python module (ironicclient) and CLI (baremetal).";
61 mainProgram = "baremetal";
62 homepage = "https://github.com/openstack/python-ironicclient";
63 license = licenses.asl20;
64 maintainers = teams.openstack.members;
65 };
66}