summaryrefslogtreecommitdiff
path: root/pkgs/development/python-modules/python-openstackclient
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/python-modules/python-openstackclient')
-rw-r--r--pkgs/development/python-modules/python-openstackclient/default.nix102
1 files changed, 73 insertions, 29 deletions
diff --git a/pkgs/development/python-modules/python-openstackclient/default.nix b/pkgs/development/python-modules/python-openstackclient/default.nix
index 9663fce022f1..2933fa619b55 100644
--- a/pkgs/development/python-modules/python-openstackclient/default.nix
+++ b/pkgs/development/python-modules/python-openstackclient/default.nix
@@ -1,62 +1,106 @@
-{ lib
-, buildPythonPackage
-, fetchPypi
-, ddt
-, installShellFiles
-, openstackdocstheme
-, osc-lib
-, pbr
-, python-cinderclient
-, python-keystoneclient
-, python-novaclient
-, requests-mock
-, sphinx
-, sphinxcontrib-apidoc
-, stestr
+{
+ lib,
+ buildPythonPackage,
+ fetchPypi,
+ ddt,
+ openstackdocstheme,
+ osc-lib,
+ osc-placement,
+ pbr,
+ python-aodhclient,
+ python-barbicanclient,
+ python-cinderclient,
+ python-designateclient,
+ python-heatclient,
+ python-ironicclient,
+ python-keystoneclient,
+ python-magnumclient,
+ python-manilaclient,
+ python-mistralclient,
+ python-neutronclient,
+ python-openstackclient,
+ python-watcherclient,
+ python-zaqarclient,
+ python-zunclient,
+ pythonOlder,
+ requests-mock,
+ requests,
+ setuptools,
+ sphinxHook,
+ sphinxcontrib-apidoc,
+ stestr,
+ testers,
}:
buildPythonPackage rec {
pname = "python-openstackclient";
- version = "6.6.0";
- format = "setuptools";
+ version = "7.2.0";
+ pyproject = true;
+
+ disabled = pythonOlder "3.9";
src = fetchPypi {
inherit pname version;
- hash = "sha256-u+8e00gpxBBSsuyiZIDinKH3K+BY0UMNpTQexExPKVw=";
+ hash = "sha256-9je3W78PU3iZJjzVMSPXPxBZ0vMYY5xSLJA9zBJ7O5I=";
};
- nativeBuildInputs = [
- installShellFiles
+ build-system = [
openstackdocstheme
- sphinx
+ setuptools
+ sphinxHook
sphinxcontrib-apidoc
];
- propagatedBuildInputs = [
+ sphinxBuilders = [ "man" ];
+
+ dependencies = [
osc-lib
pbr
python-cinderclient
python-keystoneclient
- python-novaclient
+ requests
];
- postInstall = ''
- sphinx-build -a -E -d doc/build/doctrees -b man doc/source doc/build/man
- installManPage doc/build/man/openstack.1
- '';
-
nativeCheckInputs = [
ddt
- stestr
requests-mock
+ stestr
];
checkPhase = ''
+ runHook preCheck
stestr run
+ runHook postCheck
'';
pythonImportsCheck = [ "openstackclient" ];
+ optional-dependencies = {
+ # See https://github.com/openstack/python-openstackclient/blob/master/doc/source/contributor/plugins.rst
+ cli-plugins = [
+ osc-placement
+ python-aodhclient
+ python-barbicanclient
+ python-designateclient
+ python-heatclient
+ python-ironicclient
+ python-magnumclient
+ python-manilaclient
+ python-mistralclient
+ python-neutronclient
+ python-watcherclient
+ python-zaqarclient
+ python-zunclient
+ ];
+ };
+
+ passthru = {
+ tests.version = testers.testVersion {
+ package = python-openstackclient;
+ command = "openstack --version";
+ };
+ };
+
meta = with lib; {
description = "OpenStack Command-line Client";
mainProgram = "openstack";