123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233 |
- load("@rules_proto//proto:defs.bzl", "proto_library")
- ##############################################################################
- # Common
- ##############################################################################
- load(
- "@com_google_googleapis_imports//:imports.bzl",
- "cc_grpc_library",
- "cc_proto_library",
- "csharp_gapic_assembly_pkg",
- "csharp_gapic_library",
- "csharp_grpc_library",
- "csharp_proto_library",
- "go_gapic_assembly_pkg",
- "go_proto_library",
- "java_gapic_assembly_gradle_pkg",
- "java_grpc_library",
- "java_proto_library",
- "proto_library_with_info",
- "py_proto_library",
- "ruby_cloud_gapic_library",
- "ruby_gapic_assembly_pkg",
- "ruby_grpc_library",
- "ruby_proto_library",
- )
- # This is an API workspace, having public visibility by default makes perfect sense.
- package(default_visibility = ["//visibility:public"])
- proto_library(
- name = "iam_policy_proto",
- srcs = ["iam_policy.proto"],
- deps = [
- ":options_proto",
- ":policy_proto",
- "//google/api:annotations_proto",
- "//google/api:client_proto",
- "//google/api:field_behavior_proto",
- "//google/api:resource_proto",
- "@com_google_protobuf//:field_mask_proto",
- ],
- )
- proto_library(
- name = "policy_proto",
- srcs = ["policy.proto"],
- deps = [
- "//google/api:annotations_proto",
- "//google/type:expr_proto",
- ],
- )
- proto_library(
- name = "options_proto",
- srcs = ["options.proto"],
- deps = [
- "//google/api:annotations_proto",
- ],
- )
- proto_library_with_info(
- name = "iam_proto_with_info",
- deps = [
- ":iam_policy_proto",
- ":options_proto",
- ":policy_proto",
- ],
- )
- java_proto_library(
- name = "iam_java_proto",
- deps = [
- ":iam_policy_proto",
- ":options_proto",
- ":policy_proto",
- ],
- )
- java_grpc_library(
- name = "iam_java_grpc",
- srcs = [":iam_policy_proto"],
- deps = [":iam_java_proto"],
- )
- # Please DO-NOT-REMOVE this section.
- # This is required to generate java files for these protos.
- # Open Source Packages
- java_gapic_assembly_gradle_pkg(
- name = "google-iam-v1-java",
- include_samples = True,
- transport = "grpc+rest",
- deps = [
- "iam_java_grpc",
- "iam_java_proto",
- ],
- )
- go_proto_library(
- name = "iam_go_proto",
- compilers = ["@io_bazel_rules_go//proto:go_grpc"],
- importpath = "google.golang.org/genproto/googleapis/iam/v1",
- protos = [
- ":iam_policy_proto",
- ":options_proto",
- ":policy_proto",
- ],
- deps = [
- "//google/api:annotations_go_proto",
- "//google/type:expr_go_proto",
- ],
- )
- go_gapic_assembly_pkg(
- name = "gapi-cloud-iam-v1-go",
- deps = [
- ":iam_go_proto",
- ],
- )
- cc_proto_library(
- name = "iam_policy_cc_proto",
- deps = [":iam_policy_proto"],
- )
- cc_proto_library(
- name = "options_cc_proto",
- deps = [":options_proto"],
- )
- cc_proto_library(
- name = "policy_cc_proto",
- deps = [":policy_proto"],
- )
- cc_grpc_library(
- name = "iam_cc_grpc",
- srcs = [":iam_policy_proto"],
- grpc_only = True,
- deps = [":iam_policy_cc_proto"],
- )
- py_proto_library(
- name = "iam_policy_py_proto",
- deps = [":iam_policy_proto"],
- )
- py_proto_library(
- name = "policy_py_proto",
- deps = [":policy_proto"],
- )
- py_proto_library(
- name = "options_py_proto",
- deps = [":options_proto"],
- )
- ruby_proto_library(
- name = "iam_ruby_proto",
- deps = [
- ":iam_policy_proto",
- ":options_proto",
- ":policy_proto",
- "//google/iam/v1/logging:audit_data_proto",
- ],
- )
- ruby_grpc_library(
- name = "iam_ruby_grpc",
- srcs = [":iam_policy_proto"],
- deps = [":iam_ruby_proto"],
- )
- ruby_cloud_gapic_library(
- name = "iam_ruby_gapic",
- srcs = [":iam_proto_with_info"],
- extra_protoc_parameters = [
- "ruby-cloud-gem-name=google-iam-v1",
- ],
- rest_numeric_enums = False,
- ruby_cloud_description = "An add-on interface used by some Google API clients to provide IAM Policy calls.",
- ruby_cloud_title = "IAM",
- deps = [
- ":iam_ruby_grpc",
- ":iam_ruby_proto",
- ],
- )
- # Open Source Packages
- ruby_gapic_assembly_pkg(
- name = "google-cloud-iam-v1-ruby",
- deps = [
- ":iam_ruby_gapic",
- ":iam_ruby_grpc",
- ":iam_ruby_proto",
- ],
- )
- csharp_proto_library(
- name = "iam_csharp_proto",
- deps = [
- ":iam_policy_proto",
- ":options_proto",
- ":policy_proto",
- "//google/iam/v1/logging:audit_data_proto",
- ],
- )
- csharp_grpc_library(
- name = "iam_csharp_grpc",
- srcs = [":iam_policy_proto"],
- deps = [":iam_csharp_proto"],
- )
- csharp_gapic_library(
- name = "iam_csharp_gapic",
- srcs = [":iam_proto_with_info"],
- common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json",
- rest_numeric_enums = False,
- deps = [
- ":iam_csharp_grpc",
- ":iam_csharp_proto",
- ],
- )
- # Open Source Packages
- csharp_gapic_assembly_pkg(
- name = "google-cloud-iam-v1-csharp",
- deps = [
- ":iam_csharp_gapic",
- ":iam_csharp_grpc",
- ":iam_csharp_proto",
- ],
- )
|