Skip to content

Commit

Permalink
feat(googleads): Protos and build files for Google Ads API v11
Browse files Browse the repository at this point in the history
Committer: @aohren
PiperOrigin-RevId: 453727392
  • Loading branch information
Google APIs authored and Copybara-Service committed Jun 8, 2022
1 parent 9fda3a8 commit 96e83d1
Show file tree
Hide file tree
Showing 740 changed files with 72,739 additions and 0 deletions.
267 changes: 267 additions & 0 deletions google/ads/googleads/v11/BUILD.bazel
@@ -0,0 +1,267 @@
# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

package(default_visibility = ["//visibility:public"])

exports_files(["googleads_grpc_service_config.json"] + ["*.yaml"])

##############################################################################
# Common
##############################################################################
load("@rules_proto//proto:defs.bzl", "proto_library")
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")

proto_library(
name = "googleads_proto",
srcs = [],
deps = [
"//google/ads/googleads/v11/common:common_proto",
"//google/ads/googleads/v11/enums:enums_proto",
"//google/ads/googleads/v11/errors:errors_proto",
"//google/ads/googleads/v11/resources:resources_proto",
"//google/ads/googleads/v11/services:services_proto",
],
)

proto_library_with_info(
name = "googleads_proto_with_info",
deps = [
":googleads_proto",
],
)

##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_gapic_assembly_gradle_pkg",
"java_gapic_library",
"java_gapic_test",
)

java_gapic_library(
name = "googleads_java_gapic",
srcs = [
":googleads_proto_with_info",
],
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = ":googleads_grpc_service_config.json",
deps = [
"//google/ads/googleads/v11/common:common_java_proto",
"//google/ads/googleads/v11/enums:enums_java_proto",
"//google/ads/googleads/v11/resources:resources_java_proto",
"//google/ads/googleads/v11/services:services_java_grpc",
"//google/ads/googleads/v11/services:services_java_proto",
],
)

# TODO(ohren): Add more test classes when java_gapic_test is able to run more
# than a single test. Having at least one verifies proper compilation at least.
java_gapic_test(
name = "googleads_java_gapic_suite",
test_classes = [
"com.google.ads.googleads.v11.services.CampaignServiceClientTest",
],
runtime_deps = [":googleads_java_gapic_test"],
)

java_gapic_assembly_gradle_pkg(
name = "googleads-java",
deps = [
":googleads_java_gapic",
"//google/ads/googleads/v11:googleads_proto",
"//google/ads/googleads/v11/common:common_java_proto",
"//google/ads/googleads/v11/enums:enums_java_proto",
"//google/ads/googleads/v11/errors:errors_java_proto",
"//google/ads/googleads/v11/resources:resources_java_proto",
"//google/ads/googleads/v11/services:services_java_grpc",
"//google/ads/googleads/v11/services:services_java_proto",
],
)

##############################################################################
# PHP
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"php_gapic_assembly_pkg",
"php_gapic_library",
"php_grpc_library",
"php_proto_library",
)

php_proto_library(
name = "googleads_php_proto",
plugin_args = ["aggregate_metadata=google.ads.googleads"],
deps = [":googleads_proto"],
)

php_grpc_library(
name = "googleads_php_grpc",
srcs = [":googleads_proto"],
deps = [":googleads_php_proto"],
)

php_gapic_library(
name = "googleads_php_gapic",
srcs = [":googleads_proto"],
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
service_yaml = "googleads_v11.yaml",
deps = [
":googleads_php_grpc",
":googleads_php_proto",
],
)

php_gapic_assembly_pkg(
name = "googleads-php",
deps = [
":googleads_php_gapic",
":googleads_php_grpc",
":googleads_php_proto",
],
)

##############################################################################
# C#
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"csharp_gapic_assembly_pkg",
"csharp_gapic_library",
)

csharp_gapic_library(
name = "googleads_csharp_gapic",
generator_binary = "@gapic_generator_csharp_gax_v3//rules_csharp_gapic:csharp_gapic_generator_binary",
srcs = [
":googleads_proto_with_info",
],
grpc_service_config = "googleads_grpc_service_config.json",
deps = [
"//google/ads/googleads/v11/services:services_csharp_grpc",
],
)

csharp_gapic_assembly_pkg(
name = "googleads-csharp",
deps = [
":googleads_csharp_gapic",
"//google/ads/googleads/v11/common:common_csharp_proto",
"//google/ads/googleads/v11/enums:enums_csharp_proto",
"//google/ads/googleads/v11/errors:errors_csharp_proto",
"//google/ads/googleads/v11/resources:resources_csharp_proto",
"//google/ads/googleads/v11/services:services_csharp_grpc",
"//google/ads/googleads/v11/services:services_csharp_proto",
],
)

##############################################################################
# Ruby
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"ruby_ads_gapic_library",
"ruby_gapic_assembly_pkg",
)

ruby_ads_gapic_library(
name = "googleads_ruby_gapic",
srcs = ["googleads_proto_with_info"],
extra_protoc_parameters = [
":gem.:name=google-ads-googleads",
":defaults.:service.:default_host=googleads.googleapis.com",
":overrides.:namespace.Googleads=GoogleAds",
],
grpc_service_config = "googleads_grpc_service_config.json",
)

ruby_gapic_assembly_pkg(
name = "googleads-ruby",
deps = [
":googleads_ruby_gapic",
"//google/ads/googleads/v11/common:common_ruby_proto",
"//google/ads/googleads/v11/enums:enums_ruby_proto",
"//google/ads/googleads/v11/errors:errors_ruby_proto",
"//google/ads/googleads/v11/resources:resources_ruby_proto",
"//google/ads/googleads/v11/services:services_ruby_grpc",
"//google/ads/googleads/v11/services:services_ruby_proto",
],
)

##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg",
"py_gapic_library",
)

py_gapic_library(
name = "googleads_py_gapic",
srcs = [":googleads_proto_with_info"],
grpc_service_config = "googleads_grpc_service_config.json",
opt_args = [
"old-naming",
"lazy-import",
"python-gapic-name=googleads",
"python-gapic-templates=ads-templates",
"warehouse-package-name=google-ads",
],
)

py_gapic_assembly_pkg(
name = "googleads-py",
deps = [
":googleads_py_gapic",
"//google/ads/googleads/v11/common:common_py_proto",
"//google/ads/googleads/v11/enums:enums_py_proto",
"//google/ads/googleads/v11/errors:errors_py_proto",
"//google/ads/googleads/v11/resources:resources_py_proto",
"//google/ads/googleads/v11/services:services_py_grpc",
"//google/ads/googleads/v11/services:services_py_proto",
],
)

##############################################################################
# Node.js
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"nodejs_gapic_assembly_pkg",
"nodejs_gapic_library",
)

nodejs_gapic_library(
name = "googleads_nodejs_gapic",
package_name = "google-ads",
src = ":googleads_proto_with_info",
extra_protoc_parameters = ["metadata"],
grpc_service_config = "googleads_grpc_service_config.json",
main_service = "GoogleAdsService",
package = "google.ads.googleads.v11",
service_yaml = "googleads_v11.yaml",
deps = [],
)

nodejs_gapic_assembly_pkg(
name = "googleads-nodejs",
deps = [
":googleads_nodejs_gapic",
":googleads_proto",
],
)
94 changes: 94 additions & 0 deletions google/ads/googleads/v11/common/BUILD.bazel
@@ -0,0 +1,94 @@
# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

package(default_visibility = ["//visibility:public"])

##############################################################################
# Common
##############################################################################
load("@rules_proto//proto:defs.bzl", "proto_library")

# TODO(ohren): Change srcs to use an enumeration of each individual proto
# instead of *.proto globbing once the build file generator supports
# subpackages.
proto_library(
name = "common_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v11/enums:enums_proto",
"//google/api:annotations_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"@com_google_protobuf//:wrappers_proto",
],
)

##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)

java_proto_library(
name = "common_java_proto",
deps = [":common_proto"],
)

##############################################################################
# PHP
##############################################################################

# PHP targets are in the parent directory's BUILD.bazel file to facilitate
# aggregating metadata using a single underlying call to protoc.

##############################################################################
# C#
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"csharp_proto_library",
)

csharp_proto_library(
name = "common_csharp_proto",
deps = [":common_proto"],
)

##############################################################################
# Ruby
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"ruby_proto_library",
)

ruby_proto_library(
name = "common_ruby_proto",
deps = [":common_proto"],
)

##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)

py_proto_library(
name = "common_py_proto",
deps = [":common_proto"],
)

0 comments on commit 96e83d1

Please sign in to comment.