aboutsummaryrefslogtreecommitdiff
path: root/google/cloud/asset/v1beta1/BUILD.bazel
diff options
context:
space:
mode:
Diffstat (limited to 'google/cloud/asset/v1beta1/BUILD.bazel')
-rw-r--r--google/cloud/asset/v1beta1/BUILD.bazel90
1 files changed, 90 insertions, 0 deletions
diff --git a/google/cloud/asset/v1beta1/BUILD.bazel b/google/cloud/asset/v1beta1/BUILD.bazel
new file mode 100644
index 000000000..936525efd
--- /dev/null
+++ b/google/cloud/asset/v1beta1/BUILD.bazel
@@ -0,0 +1,90 @@
+load("@io_grpc_grpc_java//:java_grpc_library.bzl", "java_grpc_library")
+load("@com_google_api_codegen//rules_gapic:gapic.bzl", "proto_library_with_info")
+load("@com_google_api_codegen//rules_gapic/java:java_gapic.bzl", "java_gapic_library")
+load("@com_google_api_codegen//rules_gapic/java:java_gapic_pkg.bzl", "java_gapic_assembly_gradle_pkg")
+
+# This is an API workspace, having public visibility by default makes perfect sense.
+package(default_visibility = ["//visibility:public"])
+
+##############################################################################
+# Common
+##############################################################################
+proto_library(
+ name = "asset_proto",
+ srcs = [
+ "asset_service.proto",
+ "assets.proto",
+ ],
+ deps = [
+ "//google/api:api_proto",
+ "//google/iam/v1:iam_proto",
+ "//google/longrunning:longrunning_proto",
+ "@com_google_protobuf//:any_proto",
+ "@com_google_protobuf//:struct_proto",
+ "@com_google_protobuf//:timestamp_proto",
+ ],
+)
+
+proto_library_with_info(
+ name = "asset_proto_with_info",
+ deps = [":asset_proto"],
+)
+
+##############################################################################
+# Java
+##############################################################################
+_JAVA_GRPC_DEPS = [
+ "@com_google_api_grpc_proto_google_common_protos//jar",
+ "@com_google_api_grpc_proto_google_iam_v1//jar",
+]
+
+java_proto_library(
+ name = "asset_java_proto",
+ deps = [":asset_proto"],
+)
+
+java_grpc_library(
+ name = "asset_java_grpc",
+ srcs = [":asset_proto"],
+ deps = [":asset_java_proto"] + _JAVA_GRPC_DEPS,
+)
+
+java_gapic_library(
+ name = "asset_java_gapic",
+ src = ":asset_proto_with_info",
+ gapic_yaml = "cloudasset_gapic.yaml",
+ service_yaml = "//google/cloud/asset:asset_v1beta1.yaml",
+ test_deps = [":asset_java_grpc"],
+ deps = [":asset_java_proto"] + _JAVA_GRPC_DEPS,
+)
+
+# TODO: configure flattened methods in AssetServiceClient so
+# com.google.cloud.asset.v1beta1.AssetServiceClientTest has actual methods to test (now it is empty,
+# and Bazel does not allow to run empty test classes (test classes without test methods)).
+#
+#[java_test(
+# name = test_name,
+# test_class = test_name,
+# runtime_deps = [
+# ":asset_java_gapic_test",
+# ],
+#) for test_name in [
+# "com.google.cloud.asset.v1beta1.AssetServiceClientTest",
+#]]
+
+##############################################################################
+# Opensource Packages
+##############################################################################
+java_gapic_assembly_gradle_pkg(
+ name = "google-cloud-asset-v1beta1-java",
+ client_deps = [":asset_java_gapic"],
+ client_group = "com.google.cloud",
+ client_test_deps = [":asset_java_gapic_test"],
+ grpc_deps = [":asset_java_grpc"],
+ grpc_group = "com.google.api.grpc",
+ proto_deps = [
+ ":asset_java_proto",
+ ":asset_proto",
+ ] + _JAVA_GRPC_DEPS,
+ version = "0.0.0-SNAPSHOT",
+)