1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 ddt, 6 iso8601, 7 keystoneauth1, 8 openssl, 9 openstackdocstheme, 10 oslo-i18n, 11 oslo-serialization, 12 pbr, 13 prettytable, 14 pythonOlder, 15 requests-mock, 16 setuptools, 17 sphinxcontrib-apidoc, 18 sphinxHook, 19 stestr, 20 testscenarios, 21}: 22 23buildPythonPackage rec { 24 pname = "python-novaclient"; 25 version = "18.11.0"; 26 pyproject = true; 27 28 disabled = pythonOlder "3.9"; 29 30 src = fetchPypi { 31 pname = "python_novaclient"; 32 inherit version; 33 hash = "sha256-CjGuIHedTNFxuynB/k5rIrnH2Xx5Zw21FJu9+sA/V9w="; 34 }; 35 36 nativeBuildInputs = [ 37 openstackdocstheme 38 sphinxcontrib-apidoc 39 sphinxHook 40 ]; 41 42 sphinxBuilders = [ "man" ]; 43 44 build-system = [ setuptools ]; 45 46 dependencies = [ 47 iso8601 48 keystoneauth1 49 oslo-i18n 50 oslo-serialization 51 pbr 52 prettytable 53 ]; 54 55 nativeCheckInputs = [ 56 ddt 57 openssl 58 requests-mock 59 stestr 60 testscenarios 61 ]; 62 63 checkPhase = '' 64 runHook preCheck 65 stestr run -e <(echo " 66 novaclient.tests.unit.test_shell.ParserTest.test_ambiguous_option 67 novaclient.tests.unit.test_shell.ParserTest.test_not_really_ambiguous_option 68 novaclient.tests.unit.test_shell.ShellTest.test_osprofiler 69 novaclient.tests.unit.test_shell.ShellTestKeystoneV3.test_osprofiler 70 ") 71 runHook postCheck 72 ''; 73 74 pythonImportsCheck = [ "novaclient" ]; 75 76 meta = with lib; { 77 description = "Client library for OpenStack Compute API"; 78 mainProgram = "nova"; 79 homepage = "https://github.com/openstack/python-novaclient"; 80 license = licenses.asl20; 81 teams = [ teams.openstack ]; 82 }; 83}