aboutsummaryrefslogtreecommitdiff
path: root/google/api/expr/v1alpha1/BUILD.bazel
diff options
context:
space:
mode:
Diffstat (limited to 'google/api/expr/v1alpha1/BUILD.bazel')
-rw-r--r--google/api/expr/v1alpha1/BUILD.bazel199
1 files changed, 199 insertions, 0 deletions
diff --git a/google/api/expr/v1alpha1/BUILD.bazel b/google/api/expr/v1alpha1/BUILD.bazel
new file mode 100644
index 000000000..816426264
--- /dev/null
+++ b/google/api/expr/v1alpha1/BUILD.bazel
@@ -0,0 +1,199 @@
+# This is an API workspace, having public visibility by default makes perfect sense.
+package(default_visibility = ["//visibility:public"])
+
+##############################################################################
+# Common
+##############################################################################
+load("@com_google_api_codegen//rules_gapic:gapic.bzl", "proto_library_with_info")
+
+proto_library(
+ name = "cel_service_proto",
+ srcs = ["cel_service.proto"],
+ deps = [
+ ":conformance_service_proto",
+ ],
+)
+
+proto_library(
+ name = "checked_proto",
+ srcs = ["checked.proto"],
+ deps = [
+ ":syntax_proto",
+ "@com_google_protobuf//:empty_proto",
+ "@com_google_protobuf//:struct_proto",
+ ],
+)
+
+proto_library(
+ name = "conformance_service_proto",
+ srcs = ["conformance_service.proto"],
+ deps = [
+ ":checked_proto",
+ ":eval_proto",
+ ":syntax_proto",
+ "//google/rpc:status_proto",
+ ],
+)
+
+proto_library(
+ name = "eval_proto",
+ srcs = ["eval.proto"],
+ deps = [
+ ":value_proto",
+ "//google/rpc:status_proto",
+ ],
+)
+
+proto_library(
+ name = "explain_proto",
+ srcs = ["explain.proto"],
+ deps = [
+ ":value_proto",
+ ],
+)
+
+proto_library(
+ name = "syntax_proto",
+ srcs = ["syntax.proto"],
+ deps = [
+ "@com_google_protobuf//:duration_proto",
+ "@com_google_protobuf//:struct_proto",
+ "@com_google_protobuf//:timestamp_proto",
+ ],
+)
+
+proto_library(
+ name = "value_proto",
+ srcs = ["value.proto"],
+ deps = [
+ "@com_google_protobuf//:any_proto",
+ "@com_google_protobuf//:struct_proto",
+ ],
+)
+
+proto_library(
+ name = "cel_proto",
+ srcs = [
+ "cel_service.proto",
+ "checked.proto",
+ "conformance_service.proto",
+ "eval.proto",
+ "explain.proto",
+ "syntax.proto",
+ "value.proto",
+ ],
+ deps = [
+ "//google/rpc:status_proto",
+ "@com_google_protobuf//:any_proto",
+ "@com_google_protobuf//:duration_proto",
+ "@com_google_protobuf//:empty_proto",
+ "@com_google_protobuf//:struct_proto",
+ "@com_google_protobuf//:timestamp_proto",
+ ],
+)
+
+proto_library_with_info(
+ name = "cel_proto_with_info",
+ deps = [":cel_proto"],
+)
+
+##############################################################################
+# Java
+##############################################################################
+load("@io_grpc_grpc_java//:java_grpc_library.bzl", "java_grpc_library")
+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")
+
+_JAVA_GRPC_DEPS = [
+ "@com_google_api_grpc_proto_google_common_protos//jar",
+]
+
+java_proto_library(
+ name = "cel_java_proto",
+ deps = [":cel_proto"],
+)
+
+java_grpc_library(
+ name = "cel_java_grpc",
+ srcs = [":cel_proto"],
+ deps = [":cel_java_proto"] + _JAVA_GRPC_DEPS,
+)
+
+java_gapic_library(
+ name = "cel_java_gapic",
+ src = ":cel_proto_with_info",
+ gapic_yaml = "cel_gapic.yaml",
+ service_yaml = "//google/api/expr:cel.yaml",
+ test_deps = [":cel_java_grpc"],
+ deps = [":cel_java_proto"] + _JAVA_GRPC_DEPS,
+)
+
+[java_test(
+ name = test_name,
+ test_class = test_name,
+ runtime_deps = [":cel_java_gapic_test"],
+) for test_name in [
+ "com.google.cloud.api.expr.v1alpha1.CelServiceClientTest",
+ "com.google.cloud.api.expr.v1alpha1.ConformanceServiceClientTest",
+]]
+
+# Opensource Packages
+java_gapic_assembly_gradle_pkg(
+ name = "google-cloud-cel-v1alpha1-java",
+ client_deps = [":cel_java_gapic"],
+ client_group = "com.google.cloud",
+ client_test_deps = [":cel_java_gapic_test"],
+ grpc_deps = [":cel_java_grpc"],
+ grpc_group = "com.google.api.grpc",
+ proto_deps = [
+ ":cel_java_proto",
+ ":cel_proto",
+ ] + _JAVA_GRPC_DEPS,
+ version = "0.0.0-SNAPSHOT",
+)
+
+##############################################################################
+# Go
+##############################################################################
+load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library")
+load("@com_google_api_codegen//rules_gapic/go:go_gapic.bzl", "go_gapic_srcjar", "go_gapic_library")
+load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
+load("@com_google_api_codegen//rules_gapic/go:go_gapic_pkg.bzl", "go_gapic_assembly_pkg")
+
+go_proto_library(
+ name = "cel_go_proto",
+ compilers = ["@io_bazel_rules_go//proto:go_grpc"],
+ importpath = "google.golang.org/genproto/googleapis/api/expr/v1alpha1",
+ protos = [":cel_proto_with_info"],
+ deps = [
+ "//google/api:annotations_go_proto",
+ "//google/rpc:status_go_proto",
+ ],
+)
+
+go_gapic_library(
+ name = "cel_go_gapic",
+ src = ":cel_proto_with_info",
+ gapic_yaml = "cel_gapic.yaml",
+ importpath = "cloud.google.com/go/expr/apiv1alpha1",
+ service_yaml = "//google/api/expr:cel.yaml",
+ deps = [":cel_go_proto"],
+)
+
+go_test(
+ name = "cel_go_gapic_test",
+ srcs = [":cel_go_gapic_srcjar_test"],
+ embed = [":cel_go_gapic"],
+ importpath = "cloud.google.com/go/expr/apiv1alpha1",
+)
+
+# Opensource Packages
+go_gapic_assembly_pkg(
+ name = "gapi-cloud-cel-v1alpha1-go",
+ deps = [
+ ":cel_go_gapic",
+ ":cel_go_gapic_srcjar-smoke-test.srcjar",
+ ":cel_go_gapic_srcjar-test.srcjar",
+ ":cel_go_proto",
+ ],
+)