xref: /aosp_15_r20/external/tink/cc/integration/gcpkms/BUILD.bazel (revision e7b1675dde1b92d52ec075b0a92829627f2c52a5)
1package(default_visibility = ["//:__subpackages__"])
2
3licenses(["notice"])
4
5cc_library(
6    name = "gcp_kms_aead",
7    srcs = ["gcp_kms_aead.cc"],
8    hdrs = ["gcp_kms_aead.h"],
9    include_prefix = "tink/integration/gcpkms",
10    visibility = ["//visibility:public"],
11    deps = [
12        "@com_github_grpc_grpc//:grpc++",
13        "@com_google_absl//absl/status",
14        "@com_google_googleapis//google/cloud/kms/v1:kms_cc_grpc",
15        "@tink_cc//:aead",
16        "@tink_cc//util:status",
17        "@tink_cc//util:statusor",
18    ],
19)
20
21cc_library(
22    name = "gcp_kms_client",
23    srcs = ["gcp_kms_client.cc"],
24    hdrs = ["gcp_kms_client.h"],
25    include_prefix = "tink/integration/gcpkms",
26    visibility = ["//visibility:public"],
27    deps = [
28        ":gcp_kms_aead",
29        "@com_github_grpc_grpc//:grpc++",
30        "@com_google_absl//absl/status",
31        "@com_google_absl//absl/strings",
32        "@com_google_absl//absl/synchronization",
33        "@tink_cc//:aead",
34        "@tink_cc//:kms_client",
35        "@tink_cc//:kms_clients",
36        "@tink_cc//:version",
37        "@tink_cc//util:status",
38        "@tink_cc//util:statusor",
39    ],
40)
41
42cc_test(
43    name = "gcp_kms_aead_integration_test",
44    size = "medium",
45    srcs = ["gcp_kms_aead_integration_test.cc"],
46    data = [
47      "//testdata/gcp:credentials",
48      "@google_root_pem//file"
49    ],
50    # This target requires valid credentials to interact with the Google Cloud
51    # KMS.
52    tags = ["manual"],
53    deps = [
54        ":gcp_kms_aead",
55        ":gcp_kms_client",
56        "@bazel_tools//tools/cpp/runfiles",
57        "@com_google_absl//absl/log:check",
58        "@com_google_googletest//:gtest_main",
59        "@tink_cc//util:statusor",
60        "@tink_cc//util:test_matchers",
61    ],
62)
63
64cc_test(
65    name = "gcp_kms_client_test",
66    size = "medium",
67    srcs = ["gcp_kms_client_test.cc"],
68    data = ["//testdata/gcp:credentials"],
69    deps = [
70        ":gcp_kms_client",
71        "@com_google_absl//absl/status",
72        "@com_google_googletest//:gtest_main",
73        "@tink_cc//util:status",
74        "@tink_cc//util:statusor",
75        "@tink_cc//util:test_matchers",
76        "@tink_cc//util:test_util",
77    ],
78)
79