diff --git a/pkgs/development/python-modules/python-troveclient/default.nix b/pkgs/development/python-modules/python-troveclient/default.nix new file mode 100644 index 000000000000..891a907e55bf --- /dev/null +++ b/pkgs/development/python-modules/python-troveclient/default.nix @@ -0,0 +1,87 @@ +{ + lib, + buildPythonPackage, + fetchFromGitHub, + httplib2, + keystoneauth1, + openstackdocstheme, + osc-lib, + oslo-i18n, + oslo-utils, + pbr, + prettytable, + python-mistralclient, + python-openstackclient, + python-swiftclient, + pythonOlder, + requests-mock, + requests, + setuptools, + sphinxcontrib-apidoc, + sphinxHook, + stestr, +}: + +buildPythonPackage rec { + pname = "python-troveclient"; + version = "8.5.0"; + pyproject = true; + + disabled = pythonOlder "3.8"; + + src = fetchFromGitHub { + owner = "openstack"; + repo = "python-troveclient"; + rev = "refs/tags/${version}"; + hash = "sha256-lfnAmQ/IxEdc+XxC0dYxK2FgY7csNewGPuQuq0dNffM="; + }; + + env.PBR_VERSION = version; + + nativeBuildInputs = [ + openstackdocstheme + sphinxHook + sphinxcontrib-apidoc + ]; + + sphinxBuilders = [ "man" ]; + + build-system = [ + pbr + setuptools + ]; + + dependencies = [ + keystoneauth1 + osc-lib + oslo-i18n + oslo-utils + prettytable + python-mistralclient + python-openstackclient + python-swiftclient + requests + ]; + + nativeCheckInputs = [ + httplib2 + requests-mock + stestr + ]; + + checkPhase = '' + runHook preCheck + stestr run + runHook postCheck + ''; + + pythonImportsCheck = [ "troveclient" ]; + + meta = { + homepage = "https://github.com/openstack/python-troveclient"; + description = "Client library for OpenStack Trove API"; + license = lib.licenses.asl20; + mainProgram = "trove"; + maintainers = lib.teams.openstack.members; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 89010d628c39..b5ebfb6ac4cb 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -22952,6 +22952,7 @@ with pkgs; manilaclient = with python311Packages; toPythonApplication python-manilaclient; mistralclient = with python311Packages; toPythonApplication python-mistralclient; swiftclient = with python311Packages; toPythonApplication python-swiftclient; + troveclient = with python311Packages; toPythonApplication python-troveclient; openvdb = callPackage ../development/libraries/openvdb { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 53d67680d8da..cdc249d42eb4 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -10264,6 +10264,8 @@ self: super: with self; { python-tado = callPackage ../development/python-modules/python-tado { }; + python-troveclient = callPackage ../development/python-modules/python-troveclient { }; + python-idzip = callPackage ../development/python-modules/python-idzip { }; pythonfinder = callPackage ../development/python-modules/pythonfinder { };