1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 pythonOlder,
6 google-api-core,
7 mock,
8 proto-plus,
9 protobuf,
10 pytest-asyncio,
11 pytestCheckHook,
12 setuptools,
13}:
14
15buildPythonPackage rec {
16 pname = "google-cloud-compute";
17 version = "1.37.0";
18 pyproject = true;
19
20 disabled = pythonOlder "3.7";
21
22 src = fetchPypi {
23 pname = "google_cloud_compute";
24 inherit version;
25 hash = "sha256-J/ApQytSkwN59YnPP6XjOs6WajOepUzWRLK1+eCkgeM=";
26 };
27
28 build-system = [ setuptools ];
29
30 dependencies = [
31 google-api-core
32 proto-plus
33 protobuf
34 ]
35 ++ google-api-core.optional-dependencies.grpc;
36
37 nativeCheckInputs = [
38 mock
39 pytest-asyncio
40 pytestCheckHook
41 ];
42
43 pythonImportsCheck = [
44 "google.cloud.compute"
45 "google.cloud.compute_v1"
46 ];
47
48 disabledTestPaths = [
49 # Disable tests that require credentials
50 "tests/system/test_addresses.py"
51 "tests/system/test_instance_group.py"
52 "tests/system/test_pagination.py"
53 "tests/system/test_smoke.py"
54 ];
55
56 meta = with lib; {
57 description = "API Client library for Google Cloud Compute";
58 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-compute";
59 changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-compute-v${version}/packages/google-cloud-compute/CHANGELOG.md";
60 license = licenses.asl20;
61 maintainers = with maintainers; [ jpetrucciani ];
62 };
63}