1{ 2 lib, 3 buildPythonPackage, 4 fetchPypi, 5 ddt, 6 openstackdocstheme, 7 osc-lib, 8 osc-placement, 9 pbr, 10 python-aodhclient, 11 python-barbicanclient, 12 python-cinderclient, 13 python-designateclient, 14 python-heatclient, 15 python-ironicclient, 16 python-keystoneclient, 17 python-magnumclient, 18 python-manilaclient, 19 python-mistralclient, 20 python-neutronclient, 21 python-openstackclient, 22 python-watcherclient, 23 python-zaqarclient, 24 python-zunclient, 25 requests-mock, 26 requests, 27 setuptools, 28 sphinxHook, 29 sphinxcontrib-apidoc, 30 stestr, 31 testers, 32}: 33 34buildPythonPackage rec { 35 pname = "python-openstackclient"; 36 version = "8.2.0"; 37 pyproject = true; 38 39 src = fetchPypi { 40 pname = "python_openstackclient"; 41 inherit version; 42 hash = "sha256-1hKvGN/GbMjzHmzpZpC2wnOt6KJA7EC39INaiJb7vgE="; 43 }; 44 45 build-system = [ 46 openstackdocstheme 47 setuptools 48 sphinxHook 49 sphinxcontrib-apidoc 50 ]; 51 52 sphinxBuilders = [ "man" ]; 53 54 dependencies = [ 55 osc-lib 56 pbr 57 python-cinderclient 58 python-keystoneclient 59 requests 60 ] 61 # to support proxy envs like ALL_PROXY in requests 62 ++ requests.optional-dependencies.socks; 63 64 nativeCheckInputs = [ 65 ddt 66 requests-mock 67 stestr 68 ]; 69 70 checkPhase = '' 71 runHook preCheck 72 stestr run -E \ 73 "openstackclient.tests.unit.network.v2.test_security_group_network.(TestCreateSecurityGroupNetwork.(test_create_with_tags|test_create_with_no_tag|test_create_min_options|test_create_all_options)|TestShowSecurityGroupNetwork.test_show_all_options)" 74 runHook postCheck 75 ''; 76 77 pythonImportsCheck = [ "openstackclient" ]; 78 79 optional-dependencies = { 80 # See https://github.com/openstack/python-openstackclient/blob/master/doc/source/contributor/plugins.rst 81 cli-plugins = [ 82 osc-placement 83 python-aodhclient 84 python-barbicanclient 85 python-designateclient 86 python-heatclient 87 python-ironicclient 88 python-magnumclient 89 python-manilaclient 90 python-mistralclient 91 python-neutronclient 92 python-watcherclient 93 python-zaqarclient 94 python-zunclient 95 ]; 96 }; 97 98 passthru = { 99 tests.version = testers.testVersion { 100 package = python-openstackclient; 101 command = "openstack --version"; 102 }; 103 }; 104 105 meta = with lib; { 106 description = "OpenStack Command-line Client"; 107 mainProgram = "openstack"; 108 homepage = "https://github.com/openstack/python-openstackclient"; 109 license = licenses.asl20; 110 teams = [ teams.openstack ]; 111 }; 112}