1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 google-api-core,
6 grpc-google-iam-v1,
7 mock,
8 proto-plus,
9 protobuf,
10 pytest-asyncio,
11 pytestCheckHook,
12 pythonOlder,
13 setuptools,
14}:
15
16buildPythonPackage rec {
17 pname = "google-cloud-kms";
18 version = "3.4.1";
19 pyproject = true;
20
21 disabled = pythonOlder "3.7";
22
23 src = fetchPypi {
24 pname = "google_cloud_kms";
25 inherit version;
26 hash = "sha256-9BqX3B7SlAgM2LZaOFvHPeMlPG+PtnPcneWWlZhZbqU=";
27 };
28
29 nativeBuildInputs = [ setuptools ];
30
31 propagatedBuildInputs = [
32 grpc-google-iam-v1
33 google-api-core
34 proto-plus
35 protobuf
36 ] ++ google-api-core.optional-dependencies.grpc;
37
38 nativeCheckInputs = [
39 mock
40 pytest-asyncio
41 pytestCheckHook
42 ];
43
44 disabledTests = [
45 # Disable tests that need credentials
46 "test_list_global_key_rings"
47 # Tests require PROJECT_ID
48 "test_list_ekm_connections"
49 ];
50
51 pythonImportsCheck = [
52 "google.cloud.kms"
53 "google.cloud.kms_v1"
54 ];
55
56 meta = with lib; {
57 description = "Cloud Key Management Service (KMS) API API client library";
58 homepage = "https://github.com/googleapis/google-cloud-python/tree/main/packages/google-cloud-kms";
59 changelog = "https://github.com/googleapis/google-cloud-python/blob/google-cloud-kms-v${version}/packages/google-cloud-kms/CHANGELOG.md";
60 license = licenses.asl20;
61 maintainers = [ ];
62 };
63}