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.30.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-iy0/43OA3lhZp4YIHZvMEgOg86IFMAg5on+CjVmCiic=";
26 };
27
28 build-system = [ setuptools ];
29
30 dependencies = [
31 google-api-core
32 proto-plus
33 protobuf
34 ] ++ google-api-core.optional-dependencies.grpc;
35
36 nativeCheckInputs = [
37 mock
38 pytest-asyncio
39 pytestCheckHook
40 ];
41
42 pythonImportsCheck = [
43 "google.cloud.compute"
44 "google.cloud.compute_v1"
45 ];
46
47 disabledTestPaths = [
48 # Disable tests that require credentials
49 "tests/system/test_addresses.py"
50 "tests/system/test_instance_group.py"
51 "tests/system/test_pagination.py"
52 "tests/system/test_smoke.py"
53 ];
54
55 meta = with lib; {
56 description = "API Client library for Google Cloud Compute";
57 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-compute";
58 changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-compute-v${version}/packages/google-cloud-compute/CHANGELOG.md";
59 license = licenses.asl20;
60 maintainers = with maintainers; [ jpetrucciani ];
61 };
62}