Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 buildPythonPackage, 4 callPackage, 5 fetchPypi, 6 platformdirs, 7 cryptography, 8 dogpile-cache, 9 jmespath, 10 jsonpatch, 11 keystoneauth1, 12 munch, 13 netifaces, 14 openstackdocstheme, 15 os-service-types, 16 pbr, 17 pythonOlder, 18 pyyaml, 19 requestsexceptions, 20 setuptools, 21 sphinxHook, 22}: 23 24buildPythonPackage rec { 25 pname = "openstacksdk"; 26 version = "3.3.0"; 27 pyproject = true; 28 29 disabled = pythonOlder "3.7"; 30 31 outputs = [ 32 "out" 33 "man" 34 ]; 35 36 src = fetchPypi { 37 inherit pname version; 38 hash = "sha256-BghpDKN8pzMnsPo3YdF+ZTlb43/yALhzXY8kJ3tPSYA="; 39 }; 40 41 postPatch = '' 42 # Disable rsvgconverter not needed to build manpage 43 substituteInPlace doc/source/conf.py \ 44 --replace-fail "'sphinxcontrib.rsvgconverter'," "#'sphinxcontrib.rsvgconverter'," 45 ''; 46 47 build-system = [ 48 openstackdocstheme 49 setuptools 50 sphinxHook 51 ]; 52 53 sphinxBuilders = [ "man" ]; 54 55 dependencies = [ 56 platformdirs 57 cryptography 58 dogpile-cache 59 jmespath 60 jsonpatch 61 keystoneauth1 62 munch 63 netifaces 64 os-service-types 65 pbr 66 requestsexceptions 67 pyyaml 68 ]; 69 70 # Checks moved to 'passthru.tests' to workaround slowness 71 doCheck = false; 72 73 passthru.tests = { 74 tests = callPackage ./tests.nix { }; 75 }; 76 77 pythonImportsCheck = [ "openstack" ]; 78 79 meta = with lib; { 80 description = "SDK for building applications to work with OpenStack"; 81 mainProgram = "openstack-inventory"; 82 homepage = "https://github.com/openstack/openstacksdk"; 83 license = licenses.asl20; 84 maintainers = teams.openstack.members; 85 }; 86}