1{ lib
2, buildPythonPackage
3, fetchPypi
4, ddt
5, installShellFiles
6, openstackdocstheme
7, osc-lib
8, pbr
9, python-cinderclient
10, python-keystoneclient
11, python-novaclient
12, requests-mock
13, sphinx
14, stestr
15}:
16
17buildPythonPackage rec {
18 pname = "python-openstackclient";
19 version = "6.3.0";
20
21 src = fetchPypi {
22 inherit pname version;
23 hash = "sha256-m6C9+NAwh+WFtAqNzEKc673V/ewkwdYKECv58zEyDfE=";
24 };
25
26 nativeBuildInputs = [
27 installShellFiles
28 openstackdocstheme
29 sphinx
30 ];
31
32 propagatedBuildInputs = [
33 osc-lib
34 pbr
35 python-cinderclient
36 python-keystoneclient
37 python-novaclient
38 ];
39
40 postInstall = ''
41 sphinx-build -a -E -d doc/build/doctrees -b man doc/source doc/build/man
42 installManPage doc/build/man/openstack.1
43 '';
44
45 nativeCheckInputs = [
46 ddt
47 stestr
48 requests-mock
49 ];
50
51 checkPhase = ''
52 stestr run
53 '';
54
55 pythonImportsCheck = [ "openstackclient" ];
56
57 meta = with lib; {
58 description = "OpenStack Command-line Client";
59 homepage = "https://github.com/openstack/python-openstackclient";
60 license = licenses.asl20;
61 maintainers = teams.openstack.members;
62 };
63}