1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 paramiko,
6 pytestCheckHook,
7 pythonOlder,
8 requests,
9 requests-toolbelt,
10 responses,
11 setuptools,
12}:
13
14buildPythonPackage rec {
15 pname = "proxmoxer";
16 version = "2.2.0-unstable-2025-02-18";
17 pyproject = true;
18
19 disabled = pythonOlder "3.7";
20
21 src = fetchFromGitHub {
22 owner = "proxmoxer";
23 repo = "proxmoxer";
24 rev = "cf1bcde696537c74ef00d8e71fb86735fb4c2c79";
25 hash = "sha256-h5Sla7/4XiZSGwKstyiqs/T2Qgi13jI9YMVPqDcF3sA=";
26 };
27
28 build-system = [ setuptools ];
29
30 dependencies = [
31 paramiko
32 requests
33 ];
34
35 nativeCheckInputs = [
36 pytestCheckHook
37 requests-toolbelt
38 responses
39 ];
40
41 disabledTestPaths = [
42 # Tests require openssh_wrapper which is outdated and not available
43 "tests/test_openssh.py"
44 ];
45
46 disabledTests = [
47 # Tests require openssh_wrapper which is outdated and not available
48 "test_repr_openssh"
49
50 # Test fails randomly
51 "test_timeout"
52 ];
53
54 pythonImportsCheck = [ "proxmoxer" ];
55
56 meta = with lib; {
57 description = "Python wrapper for Proxmox API v2";
58 homepage = "https://github.com/proxmoxer/proxmoxer";
59 changelog = "https://github.com/proxmoxer/proxmoxer/releases/tag/${version}";
60 license = with licenses; [ bsd3 ];
61 maintainers = with maintainers; [ fab ];
62 };
63}