Skip to content

Commit 9c899a3

Browse files
committed
python3Packages.python-heatclient: use stestrCheckHook
Signed-off-by: Vinetos <contact+git@vinetos.fr>
1 parent ebfe9ee commit 9c899a3

File tree

1 file changed

+63
-22
lines changed
  • pkgs/development/python-modules/python-heatclient

1 file changed

+63
-22
lines changed

pkgs/development/python-modules/python-heatclient/default.nix

Lines changed: 63 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
lib,
33
buildPythonPackage,
44
cliff,
5-
fetchPypi,
5+
fetchFromGitHub,
66
iso8601,
77
keystoneauth1,
88
openstackdocstheme,
@@ -19,25 +19,30 @@
1919
requests,
2020
setuptools,
2121
sphinxHook,
22-
stestr,
22+
stestrCheckHook,
2323
testscenarios,
24+
versionCheckHook,
2425
}:
2526

26-
buildPythonPackage rec {
27+
buildPythonPackage (finalAttrs: {
2728
pname = "python-heatclient";
2829
version = "5.0.0";
2930
pyproject = true;
3031

31-
src = fetchPypi {
32-
pname = "python_heatclient";
33-
inherit version;
34-
hash = "sha256-q3CtG+bRPo9gNHl6KJSutDU33EKUun/7C0pBe1ahpx4=";
32+
src = fetchFromGitHub {
33+
owner = "openstack";
34+
repo = "python-heatclient";
35+
tag = finalAttrs.version;
36+
hash = "sha256-BpxUUQTBZLR89ks31q5BcBajIP2vcD3Oot1dsXLalX4=";
3537
};
3638

39+
env.PBR_VERSION = finalAttrs.version;
40+
3741
build-system = [
3842
openstackdocstheme
3943
python-openstackclient
4044
setuptools
45+
pbr
4146
sphinxHook
4247
];
4348

@@ -51,37 +56,73 @@ buildPythonPackage rec {
5156
oslo-i18n
5257
oslo-serialization
5358
oslo-utils
54-
pbr
5559
prettytable
5660
python-swiftclient
5761
pyyaml
5862
requests
5963
];
6064

6165
nativeCheckInputs = [
62-
stestr
66+
stestrCheckHook
6367
testscenarios
6468
requests-mock
6569
];
6670

67-
checkPhase = ''
68-
runHook preCheck
69-
70-
stestr run -e <(echo "
71-
heatclient.tests.unit.test_common_http.HttpClientTest.test_get_system_ca_file
72-
heatclient.tests.unit.test_deployment_utils.TempURLSignalTest.test_create_temp_url
73-
")
71+
# These tests are failing on Python 3.14 because request.pathname2url fails to add // after the protocol's name.
72+
# https://github.com/NixOS/nixpkgs/pull/488828#:~:text=discuss%2Epython%2Eorg%2Ft%2Fpathname2url%2Dchanges%2Din%2Dpython%2D3%2D14%2Dbreaking%2Dpip%2Dtests%2F97091
73+
disabledTests = [
74+
"heatclient.tests.unit.test_shell.ShellTestConfig.test_config_create"
75+
"heatclient.tests.unit.test_shell.ShellTestStandaloneToken.test_stack_create_param_file"
76+
"heatclient.tests.unit.test_template_utils.TestTemplateGetFileFunctions.test_hot_template"
77+
"heatclient.tests.unit.test_template_utils.TestTemplateTypeFunctions.test_hot_template"
78+
"heatclient.tests.unit.test_utils.TestURLFunctions.test_get_template_url"
79+
"heatclient.tests.unit.test_shell.ShellTestStandaloneToken.test_stack_create_only_param_file"
80+
"heatclient.tests.unit.test_shell.ShellTestUserPass.test_stack_create_param_file"
81+
"heatclient.tests.unit.test_template_utils.TestTemplateGetFileFunctions.test_hot_template_same_file"
82+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_multiple_environments_empty_registry"
83+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_multiple_environments_default_resources"
84+
"heatclient.tests.unit.test_shell.ShellTestUserPassKeystoneV3.test_stack_create_only_param_file"
85+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_ignore_env_keys"
86+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_multiple_environments_and_files"
87+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_environment_empty_file"
88+
"heatclient.tests.unit.test_shell.ShellTestToken.test_stack_create_param_file"
89+
"heatclient.tests.unit.test_template_utils.TestGetTemplateContents.test_get_template_contents_parse_error"
90+
"heatclient.tests.unit.test_utils.TestURLFunctions.test_normalise_file_path_to_url_absolute"
91+
"heatclient.tests.unit.test_shell.ShellTestUserPass.test_stack_create_only_param_file"
92+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_environment_file"
93+
"heatclient.tests.unit.test_shell.ShellTestToken.test_stack_create_only_param_file"
94+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_environment_relative_file"
95+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_environment_relative_file_up"
96+
"heatclient.tests.unit.test_shell.ShellTestUserPassKeystoneV3.test_stack_create_param_file"
97+
"heatclient.tests.unit.test_template_utils.TestNestedIncludes.test_env_nested_includes"
98+
"heatclient.tests.unit.test_utils.TestURLFunctions.test_normalise_file_path_to_url_relative"
99+
"heatclient.tests.unit.test_template_utils.TestTemplateInFileFunctions.test_hot_template"
100+
"heatclient.tests.unit.test_template_utils.TestTemplateGetFileFunctions.test_hot_template_outputs"
101+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_environment_relative_file_tracker"
102+
"heatclient.tests.unit.test_template_utils.ShellEnvironmentTest.test_process_multiple_environments_and_files_tracker"
103+
"heatclient.tests.unit.test_template_utils.TestGetTemplateContents.test_get_template_contents_file_empty"
104+
];
74105

75-
runHook postCheck
76-
'';
106+
pythonImportsCheck = [
107+
"heatclient"
108+
"heatclient.client"
109+
"heatclient.common"
110+
"heatclient.osc"
111+
"heatclient.osc.v1"
112+
"heatclient.tests"
113+
];
77114

78-
pythonImportsCheck = [ "heatclient" ];
115+
nativeInstallCheckInputs = [
116+
versionCheckHook
117+
];
118+
doInstallCheck = true;
79119

80120
meta = {
81-
description = "Library for Heat built on the Heat orchestration API";
121+
description = "OpenStack Heat Client and bindings";
82122
mainProgram = "heat";
83-
homepage = "https://github.com/openstack/python-heatclient";
123+
homepage = "https://docs.openstack.org/python-heatclient/latest/";
124+
downloadPage = "https://github.com/openstack/python-heatclient/releases/tag/${finalAttrs.src.tag}";
84125
license = lib.licenses.asl20;
85126
teams = [ lib.teams.openstack ];
86127
};
87-
}
128+
})

0 commit comments

Comments
 (0)