feat: Publish experimental build files for Google Ads API.

PiperOrigin-RevId: 351813340
This commit is contained in:
Google APIs 2021-01-14 09:18:05 -08:00 committed by Copybara-Service
parent 92fac3a00a
commit bbb3fc4239
25 changed files with 3253 additions and 3 deletions

View File

@ -1,8 +1,11 @@
# Google Ads API - proto definitions
# Google Ads API
This folder contains the [protocol
buffer](https://developers.google.com/protocol-buffers/) definitions for the
[Google Ads API](https://developers.google.com/google-ads/api/). To use this
buffer](https://developers.google.com/protocol-buffers/) definitions and
**experimental** build files (see below) for the [Google Ads
API](https://developers.google.com/google-ads/api/).
To use this
API, we encourage you to take a look at our [official client
libraries](https://developers.google.com/google-ads/api/docs/client-libs) for
Java, Ruby, PHP, Python or .NET. Refer to the
@ -19,3 +22,26 @@ Use [the official Google Ads API
forum](https://groups.google.com/d/forum/adwords-api) to request an official
client library in another programming language, report bugs, request new
features in the Google Ads API, or provide feedback.
## Build files (experimental)
> **IMPORTANT** The Bazel build files are **experimental**. The structure and
> content of the Bazel packages are subject to change, and the resulting
> generated API clients are not officially supported Google products.
The [Bazel](https://bazel.build/) build files contain targets for building
**generated API clients (GAPICs)** from the Google Ads API protocol buffer
descriptors. Our [officially supported
client libraries](https://developers.google.com/google-ads/api/docs/client-libs)
are built upon these GAPIC artifacts, but add significant performance and
usability enhancements. Thus, we strongly recommend using an official
client library.
However, developers looking to understand the internals of the API's client
libraries or build their own custom [gRPC](https://grpc.io/)-based clients can
use these build files as reference points.
For details on using these files, see the
[Bazel section](https://github.com/googleapis/googleapis#bazel) of the
repository's main
[README.md](https://github.com/googleapis/googleapis/blob/master/README.md).

View File

@ -0,0 +1,295 @@
# 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/v3/common:common_proto",
"//google/ads/googleads/v3/enums:enums_proto",
"//google/ads/googleads/v3/errors:errors_proto",
"//google/ads/googleads/v3/resources:resources_proto",
"//google/ads/googleads/v3/services:services_proto",
],
)
proto_library_with_info(
name = "googleads_proto_with_info",
deps = [
":googleads_proto",
],
)
##############################################################################
# Java (gapic-generator-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/v3/common:common_java_proto",
"//google/ads/googleads/v3/enums:enums_java_proto",
"//google/ads/googleads/v3/resources:resources_java_proto",
"//google/ads/googleads/v3/services:services_java_grpc",
"//google/ads/googleads/v3/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.v3.services.CampaignServiceClientTest",
],
runtime_deps = [":googleads_java_gapic_test"],
)
java_gapic_assembly_gradle_pkg(
name = "googleads-java",
deps = [
":googleads_java_gapic",
"//google/ads/googleads/v3:googleads_proto",
"//google/ads/googleads/v3/common:common_java_proto",
"//google/ads/googleads/v3/enums:enums_java_proto",
"//google/ads/googleads/v3/errors:errors_java_proto",
"//google/ads/googleads/v3/resources:resources_java_proto",
"//google/ads/googleads/v3/services:services_java_grpc",
"//google/ads/googleads/v3/services:services_java_proto",
],
)
##############################################################################
# PHP (gapic-generator, GAPICv2)
##############################################################################
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",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v3",
service_yaml = "googleads_v3.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("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library")
load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg")
csharp_gapic_library(
name = "googleads_csharp_gapic",
srcs = [
":googleads_proto_with_info",
],
deps = [
"//google/ads/googleads/v3/services:services_csharp_grpc",
],
)
csharp_gapic_assembly_pkg(
name = "googleads-csharp",
deps = [
":googleads_csharp_gapic",
"//google/ads/googleads/v3/common:common_csharp_proto",
"//google/ads/googleads/v3/enums:enums_csharp_proto",
"//google/ads/googleads/v3/errors:errors_csharp_proto",
"//google/ads/googleads/v3/resources:resources_csharp_proto",
"//google/ads/googleads/v3/services:services_csharp_grpc",
"//google/ads/googleads/v3/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/v3/common:common_ruby_proto",
"//google/ads/googleads/v3/enums:enums_ruby_proto",
"//google/ads/googleads/v3/errors:errors_ruby_proto",
"//google/ads/googleads/v3/resources:resources_ruby_proto",
"//google/ads/googleads/v3/services:services_ruby_grpc",
"//google/ads/googleads/v3/services:services_ruby_proto",
],
)
##############################################################################
# Python (gapic-generator-python)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg",
"py_gapic_library",
)
py_gapic_library(
name = "googleads_py_micro_gapic",
srcs = [":googleads_proto_with_info"],
opt_args = [
"old-naming",
"lazy-import",
"python-gapic-name=googleads",
"python-gapic-templates=ads-templates",
],
)
py_gapic_assembly_pkg(
name = "googleads-py-micro",
deps = [
":googleads_py_micro_gapic",
"//google/ads/googleads/v3/common:common_py_proto",
"//google/ads/googleads/v3/enums:enums_py_proto",
"//google/ads/googleads/v3/errors:errors_py_proto",
"//google/ads/googleads/v3/resources:resources_py_proto",
"//google/ads/googleads/v3/services:services_py_grpc",
"//google/ads/googleads/v3/services:services_py_proto",
],
)
##############################################################################
# Python (gapic-generator, GAPICv2)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg_legacy",
"py_gapic_library_legacy",
)
py_gapic_library_legacy(
name = "googleads_py_mono_gapic",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v3",
service_yaml = "googleads_v3.yaml",
deps = [
"//google/ads/googleads/v3/services:services_py_grpc",
],
)
py_gapic_assembly_pkg_legacy(
name = "googleads-py-mono",
deps = [
":googleads_py_mono_gapic",
"//google/ads/googleads/v3/common:common_py_proto",
"//google/ads/googleads/v3/enums:enums_py_proto",
"//google/ads/googleads/v3/errors:errors_py_proto",
"//google/ads/googleads/v3/resources:resources_py_proto",
"//google/ads/googleads/v3/services:services_py_grpc",
"//google/ads/googleads/v3/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.v3",
service_yaml = "googleads_v3.yaml",
deps = [],
)
nodejs_gapic_assembly_pkg(
name = "googleads-nodejs",
deps = [
":googleads_nodejs_gapic",
":googleads_proto",
],
)

View File

@ -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/v3/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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "common_csharp_proto",
deps = [":common_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.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"],
)

View File

@ -0,0 +1,89 @@
# 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 = "enums_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/api:annotations_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "enums_java_proto",
deps = [":enums_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "enums_csharp_proto",
deps = [":enums_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "enums_ruby_proto",
deps = [":enums_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "enums_py_proto",
deps = [":enums_proto"],
)

View File

@ -0,0 +1,93 @@
# 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 = "errors_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v3/common:common_proto",
"//google/api:annotations_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "errors_java_proto",
deps = [":errors_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "errors_csharp_proto",
deps = [":errors_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "errors_ruby_proto",
deps = [":errors_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "errors_py_proto",
deps = [":errors_proto"],
)

View File

@ -0,0 +1,97 @@
# 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 = "resources_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v3/common:common_proto",
"//google/ads/googleads/v3/enums:enums_proto",
"//google/ads/googleads/v3/errors:errors_proto",
"//google/api:annotations_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "resources_java_proto",
deps = [":resources_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "resources_csharp_proto",
deps = [":resources_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "resources_ruby_proto",
deps = [":resources_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "resources_py_proto",
deps = [":resources_proto"],
)

View File

@ -0,0 +1,138 @@
# 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")
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")
# 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 = "services_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v3/common:common_proto",
"//google/ads/googleads/v3/enums:enums_proto",
"//google/ads/googleads/v3/errors:errors_proto",
"//google/ads/googleads/v3/resources:resources_proto",
"//google/api:annotations_proto",
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"//google/rpc:status_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
proto_library_with_info(
name = "services_proto_with_info",
deps = [
":services_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_grpc_library",
"java_proto_library",
)
java_proto_library(
name = "services_java_proto",
deps = [":services_proto"],
)
java_grpc_library(
name = "services_java_grpc",
srcs = [":services_proto"],
deps = [":services_java_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_grpc_library",
"csharp_proto_library",
)
csharp_proto_library(
name = "services_csharp_proto",
deps = [":services_proto"],
)
csharp_grpc_library(
name = "services_csharp_grpc",
srcs = [":services_proto"],
deps = [":services_csharp_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_grpc_library",
"ruby_proto_library",
)
ruby_proto_library(
name = "services_ruby_proto",
deps = [":services_proto"],
)
ruby_grpc_library(
name = "services_ruby_grpc",
srcs = [":services_proto"],
deps = [":services_ruby_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_grpc_library",
"py_proto_library",
)
py_proto_library(
name = "services_py_proto",
deps = [":services_proto"],
)
py_grpc_library(
name = "services_py_grpc",
srcs = [":services_proto"],
deps = [":services_py_proto"],
)

View File

@ -0,0 +1,295 @@
# 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/v4/common:common_proto",
"//google/ads/googleads/v4/enums:enums_proto",
"//google/ads/googleads/v4/errors:errors_proto",
"//google/ads/googleads/v4/resources:resources_proto",
"//google/ads/googleads/v4/services:services_proto",
],
)
proto_library_with_info(
name = "googleads_proto_with_info",
deps = [
":googleads_proto",
],
)
##############################################################################
# Java (gapic-generator-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/v4/common:common_java_proto",
"//google/ads/googleads/v4/enums:enums_java_proto",
"//google/ads/googleads/v4/resources:resources_java_proto",
"//google/ads/googleads/v4/services:services_java_grpc",
"//google/ads/googleads/v4/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.v4.services.CampaignServiceClientTest",
],
runtime_deps = [":googleads_java_gapic_test"],
)
java_gapic_assembly_gradle_pkg(
name = "googleads-java",
deps = [
":googleads_java_gapic",
"//google/ads/googleads/v4:googleads_proto",
"//google/ads/googleads/v4/common:common_java_proto",
"//google/ads/googleads/v4/enums:enums_java_proto",
"//google/ads/googleads/v4/errors:errors_java_proto",
"//google/ads/googleads/v4/resources:resources_java_proto",
"//google/ads/googleads/v4/services:services_java_grpc",
"//google/ads/googleads/v4/services:services_java_proto",
],
)
##############################################################################
# PHP (gapic-generator, GAPICv2)
##############################################################################
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",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v4",
service_yaml = "googleads_v4.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("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library")
load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg")
csharp_gapic_library(
name = "googleads_csharp_gapic",
srcs = [
":googleads_proto_with_info",
],
deps = [
"//google/ads/googleads/v4/services:services_csharp_grpc",
],
)
csharp_gapic_assembly_pkg(
name = "googleads-csharp",
deps = [
":googleads_csharp_gapic",
"//google/ads/googleads/v4/common:common_csharp_proto",
"//google/ads/googleads/v4/enums:enums_csharp_proto",
"//google/ads/googleads/v4/errors:errors_csharp_proto",
"//google/ads/googleads/v4/resources:resources_csharp_proto",
"//google/ads/googleads/v4/services:services_csharp_grpc",
"//google/ads/googleads/v4/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/v4/common:common_ruby_proto",
"//google/ads/googleads/v4/enums:enums_ruby_proto",
"//google/ads/googleads/v4/errors:errors_ruby_proto",
"//google/ads/googleads/v4/resources:resources_ruby_proto",
"//google/ads/googleads/v4/services:services_ruby_grpc",
"//google/ads/googleads/v4/services:services_ruby_proto",
],
)
##############################################################################
# Python (gapic-generator-python)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg",
"py_gapic_library",
)
py_gapic_library(
name = "googleads_py_micro_gapic",
srcs = [":googleads_proto_with_info"],
opt_args = [
"old-naming",
"lazy-import",
"python-gapic-name=googleads",
"python-gapic-templates=ads-templates",
],
)
py_gapic_assembly_pkg(
name = "googleads-py-micro",
deps = [
":googleads_py_micro_gapic",
"//google/ads/googleads/v4/common:common_py_proto",
"//google/ads/googleads/v4/enums:enums_py_proto",
"//google/ads/googleads/v4/errors:errors_py_proto",
"//google/ads/googleads/v4/resources:resources_py_proto",
"//google/ads/googleads/v4/services:services_py_grpc",
"//google/ads/googleads/v4/services:services_py_proto",
],
)
##############################################################################
# Python (gapic-generator, GAPICv2)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg_legacy",
"py_gapic_library_legacy",
)
py_gapic_library_legacy(
name = "googleads_py_mono_gapic",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v4",
service_yaml = "googleads_v4.yaml",
deps = [
"//google/ads/googleads/v4/services:services_py_grpc",
],
)
py_gapic_assembly_pkg_legacy(
name = "googleads-py-mono",
deps = [
":googleads_py_mono_gapic",
"//google/ads/googleads/v4/common:common_py_proto",
"//google/ads/googleads/v4/enums:enums_py_proto",
"//google/ads/googleads/v4/errors:errors_py_proto",
"//google/ads/googleads/v4/resources:resources_py_proto",
"//google/ads/googleads/v4/services:services_py_grpc",
"//google/ads/googleads/v4/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.v4",
service_yaml = "googleads_v4.yaml",
deps = [],
)
nodejs_gapic_assembly_pkg(
name = "googleads-nodejs",
deps = [
":googleads_nodejs_gapic",
":googleads_proto",
],
)

View File

@ -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/v4/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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "common_csharp_proto",
deps = [":common_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.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"],
)

View File

@ -0,0 +1,89 @@
# 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 = "enums_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/api:annotations_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "enums_java_proto",
deps = [":enums_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "enums_csharp_proto",
deps = [":enums_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "enums_ruby_proto",
deps = [":enums_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "enums_py_proto",
deps = [":enums_proto"],
)

View File

@ -0,0 +1,93 @@
# 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 = "errors_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v4/common:common_proto",
"//google/api:annotations_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "errors_java_proto",
deps = [":errors_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "errors_csharp_proto",
deps = [":errors_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "errors_ruby_proto",
deps = [":errors_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "errors_py_proto",
deps = [":errors_proto"],
)

View File

@ -0,0 +1,97 @@
# 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 = "resources_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v4/common:common_proto",
"//google/ads/googleads/v4/enums:enums_proto",
"//google/ads/googleads/v4/errors:errors_proto",
"//google/api:annotations_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "resources_java_proto",
deps = [":resources_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "resources_csharp_proto",
deps = [":resources_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "resources_ruby_proto",
deps = [":resources_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "resources_py_proto",
deps = [":resources_proto"],
)

View File

@ -0,0 +1,138 @@
# 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")
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")
# 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 = "services_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v4/common:common_proto",
"//google/ads/googleads/v4/enums:enums_proto",
"//google/ads/googleads/v4/errors:errors_proto",
"//google/ads/googleads/v4/resources:resources_proto",
"//google/api:annotations_proto",
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"//google/rpc:status_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
proto_library_with_info(
name = "services_proto_with_info",
deps = [
":services_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_grpc_library",
"java_proto_library",
)
java_proto_library(
name = "services_java_proto",
deps = [":services_proto"],
)
java_grpc_library(
name = "services_java_grpc",
srcs = [":services_proto"],
deps = [":services_java_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_grpc_library",
"csharp_proto_library",
)
csharp_proto_library(
name = "services_csharp_proto",
deps = [":services_proto"],
)
csharp_grpc_library(
name = "services_csharp_grpc",
srcs = [":services_proto"],
deps = [":services_csharp_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_grpc_library",
"ruby_proto_library",
)
ruby_proto_library(
name = "services_ruby_proto",
deps = [":services_proto"],
)
ruby_grpc_library(
name = "services_ruby_grpc",
srcs = [":services_proto"],
deps = [":services_ruby_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_grpc_library",
"py_proto_library",
)
py_proto_library(
name = "services_py_proto",
deps = [":services_proto"],
)
py_grpc_library(
name = "services_py_grpc",
srcs = [":services_proto"],
deps = [":services_py_proto"],
)

View File

@ -0,0 +1,295 @@
# 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/v5/common:common_proto",
"//google/ads/googleads/v5/enums:enums_proto",
"//google/ads/googleads/v5/errors:errors_proto",
"//google/ads/googleads/v5/resources:resources_proto",
"//google/ads/googleads/v5/services:services_proto",
],
)
proto_library_with_info(
name = "googleads_proto_with_info",
deps = [
":googleads_proto",
],
)
##############################################################################
# Java (gapic-generator-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/v5/common:common_java_proto",
"//google/ads/googleads/v5/enums:enums_java_proto",
"//google/ads/googleads/v5/resources:resources_java_proto",
"//google/ads/googleads/v5/services:services_java_grpc",
"//google/ads/googleads/v5/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.v5.services.CampaignServiceClientTest",
],
runtime_deps = [":googleads_java_gapic_test"],
)
java_gapic_assembly_gradle_pkg(
name = "googleads-java",
deps = [
":googleads_java_gapic",
"//google/ads/googleads/v5:googleads_proto",
"//google/ads/googleads/v5/common:common_java_proto",
"//google/ads/googleads/v5/enums:enums_java_proto",
"//google/ads/googleads/v5/errors:errors_java_proto",
"//google/ads/googleads/v5/resources:resources_java_proto",
"//google/ads/googleads/v5/services:services_java_grpc",
"//google/ads/googleads/v5/services:services_java_proto",
],
)
##############################################################################
# PHP (gapic-generator, GAPICv2)
##############################################################################
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",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v5",
service_yaml = "googleads_v5.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("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library")
load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg")
csharp_gapic_library(
name = "googleads_csharp_gapic",
srcs = [
":googleads_proto_with_info",
],
deps = [
"//google/ads/googleads/v5/services:services_csharp_grpc",
],
)
csharp_gapic_assembly_pkg(
name = "googleads-csharp",
deps = [
":googleads_csharp_gapic",
"//google/ads/googleads/v5/common:common_csharp_proto",
"//google/ads/googleads/v5/enums:enums_csharp_proto",
"//google/ads/googleads/v5/errors:errors_csharp_proto",
"//google/ads/googleads/v5/resources:resources_csharp_proto",
"//google/ads/googleads/v5/services:services_csharp_grpc",
"//google/ads/googleads/v5/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/v5/common:common_ruby_proto",
"//google/ads/googleads/v5/enums:enums_ruby_proto",
"//google/ads/googleads/v5/errors:errors_ruby_proto",
"//google/ads/googleads/v5/resources:resources_ruby_proto",
"//google/ads/googleads/v5/services:services_ruby_grpc",
"//google/ads/googleads/v5/services:services_ruby_proto",
],
)
##############################################################################
# Python (gapic-generator-python)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg",
"py_gapic_library",
)
py_gapic_library(
name = "googleads_py_micro_gapic",
srcs = [":googleads_proto_with_info"],
opt_args = [
"old-naming",
"lazy-import",
"python-gapic-name=googleads",
"python-gapic-templates=ads-templates",
],
)
py_gapic_assembly_pkg(
name = "googleads-py-micro",
deps = [
":googleads_py_micro_gapic",
"//google/ads/googleads/v5/common:common_py_proto",
"//google/ads/googleads/v5/enums:enums_py_proto",
"//google/ads/googleads/v5/errors:errors_py_proto",
"//google/ads/googleads/v5/resources:resources_py_proto",
"//google/ads/googleads/v5/services:services_py_grpc",
"//google/ads/googleads/v5/services:services_py_proto",
],
)
##############################################################################
# Python (gapic-generator, GAPICv2)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg_legacy",
"py_gapic_library_legacy",
)
py_gapic_library_legacy(
name = "googleads_py_mono_gapic",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v5",
service_yaml = "googleads_v5.yaml",
deps = [
"//google/ads/googleads/v5/services:services_py_grpc",
],
)
py_gapic_assembly_pkg_legacy(
name = "googleads-py-mono",
deps = [
":googleads_py_mono_gapic",
"//google/ads/googleads/v5/common:common_py_proto",
"//google/ads/googleads/v5/enums:enums_py_proto",
"//google/ads/googleads/v5/errors:errors_py_proto",
"//google/ads/googleads/v5/resources:resources_py_proto",
"//google/ads/googleads/v5/services:services_py_grpc",
"//google/ads/googleads/v5/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.v5",
service_yaml = "googleads_v5.yaml",
deps = [],
)
nodejs_gapic_assembly_pkg(
name = "googleads-nodejs",
deps = [
":googleads_nodejs_gapic",
":googleads_proto",
],
)

View File

@ -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/v5/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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "common_csharp_proto",
deps = [":common_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.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"],
)

View File

@ -0,0 +1,89 @@
# 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 = "enums_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/api:annotations_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "enums_java_proto",
deps = [":enums_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "enums_csharp_proto",
deps = [":enums_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "enums_ruby_proto",
deps = [":enums_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "enums_py_proto",
deps = [":enums_proto"],
)

View File

@ -0,0 +1,93 @@
# 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 = "errors_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v5/common:common_proto",
"//google/api:annotations_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "errors_java_proto",
deps = [":errors_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "errors_csharp_proto",
deps = [":errors_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "errors_ruby_proto",
deps = [":errors_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "errors_py_proto",
deps = [":errors_proto"],
)

View File

@ -0,0 +1,97 @@
# 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 = "resources_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v5/common:common_proto",
"//google/ads/googleads/v5/enums:enums_proto",
"//google/ads/googleads/v5/errors:errors_proto",
"//google/api:annotations_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "resources_java_proto",
deps = [":resources_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "resources_csharp_proto",
deps = [":resources_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "resources_ruby_proto",
deps = [":resources_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "resources_py_proto",
deps = [":resources_proto"],
)

View File

@ -0,0 +1,138 @@
# 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")
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")
# 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 = "services_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v5/common:common_proto",
"//google/ads/googleads/v5/enums:enums_proto",
"//google/ads/googleads/v5/errors:errors_proto",
"//google/ads/googleads/v5/resources:resources_proto",
"//google/api:annotations_proto",
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"//google/rpc:status_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
proto_library_with_info(
name = "services_proto_with_info",
deps = [
":services_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_grpc_library",
"java_proto_library",
)
java_proto_library(
name = "services_java_proto",
deps = [":services_proto"],
)
java_grpc_library(
name = "services_java_grpc",
srcs = [":services_proto"],
deps = [":services_java_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_grpc_library",
"csharp_proto_library",
)
csharp_proto_library(
name = "services_csharp_proto",
deps = [":services_proto"],
)
csharp_grpc_library(
name = "services_csharp_grpc",
srcs = [":services_proto"],
deps = [":services_csharp_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_grpc_library",
"ruby_proto_library",
)
ruby_proto_library(
name = "services_ruby_proto",
deps = [":services_proto"],
)
ruby_grpc_library(
name = "services_ruby_grpc",
srcs = [":services_proto"],
deps = [":services_ruby_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_grpc_library",
"py_proto_library",
)
py_proto_library(
name = "services_py_proto",
deps = [":services_proto"],
)
py_grpc_library(
name = "services_py_grpc",
srcs = [":services_proto"],
deps = [":services_py_proto"],
)

View File

@ -0,0 +1,295 @@
# 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/v6/common:common_proto",
"//google/ads/googleads/v6/enums:enums_proto",
"//google/ads/googleads/v6/errors:errors_proto",
"//google/ads/googleads/v6/resources:resources_proto",
"//google/ads/googleads/v6/services:services_proto",
],
)
proto_library_with_info(
name = "googleads_proto_with_info",
deps = [
":googleads_proto",
],
)
##############################################################################
# Java (gapic-generator-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/v6/common:common_java_proto",
"//google/ads/googleads/v6/enums:enums_java_proto",
"//google/ads/googleads/v6/resources:resources_java_proto",
"//google/ads/googleads/v6/services:services_java_grpc",
"//google/ads/googleads/v6/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.v6.services.CampaignServiceClientTest",
],
runtime_deps = [":googleads_java_gapic_test"],
)
java_gapic_assembly_gradle_pkg(
name = "googleads-java",
deps = [
":googleads_java_gapic",
"//google/ads/googleads/v6:googleads_proto",
"//google/ads/googleads/v6/common:common_java_proto",
"//google/ads/googleads/v6/enums:enums_java_proto",
"//google/ads/googleads/v6/errors:errors_java_proto",
"//google/ads/googleads/v6/resources:resources_java_proto",
"//google/ads/googleads/v6/services:services_java_grpc",
"//google/ads/googleads/v6/services:services_java_proto",
],
)
##############################################################################
# PHP (gapic-generator, GAPICv2)
##############################################################################
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",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v6",
service_yaml = "googleads_v6.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("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl", "csharp_gapic_library")
load("@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic_pkg.bzl", "csharp_gapic_assembly_pkg")
csharp_gapic_library(
name = "googleads_csharp_gapic",
srcs = [
":googleads_proto_with_info",
],
deps = [
"//google/ads/googleads/v6/services:services_csharp_grpc",
],
)
csharp_gapic_assembly_pkg(
name = "googleads-csharp",
deps = [
":googleads_csharp_gapic",
"//google/ads/googleads/v6/common:common_csharp_proto",
"//google/ads/googleads/v6/enums:enums_csharp_proto",
"//google/ads/googleads/v6/errors:errors_csharp_proto",
"//google/ads/googleads/v6/resources:resources_csharp_proto",
"//google/ads/googleads/v6/services:services_csharp_grpc",
"//google/ads/googleads/v6/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/v6/common:common_ruby_proto",
"//google/ads/googleads/v6/enums:enums_ruby_proto",
"//google/ads/googleads/v6/errors:errors_ruby_proto",
"//google/ads/googleads/v6/resources:resources_ruby_proto",
"//google/ads/googleads/v6/services:services_ruby_grpc",
"//google/ads/googleads/v6/services:services_ruby_proto",
],
)
##############################################################################
# Python (gapic-generator-python)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg",
"py_gapic_library",
)
py_gapic_library(
name = "googleads_py_micro_gapic",
srcs = [":googleads_proto_with_info"],
opt_args = [
"old-naming",
"lazy-import",
"python-gapic-name=googleads",
"python-gapic-templates=ads-templates",
],
)
py_gapic_assembly_pkg(
name = "googleads-py-micro",
deps = [
":googleads_py_micro_gapic",
"//google/ads/googleads/v6/common:common_py_proto",
"//google/ads/googleads/v6/enums:enums_py_proto",
"//google/ads/googleads/v6/errors:errors_py_proto",
"//google/ads/googleads/v6/resources:resources_py_proto",
"//google/ads/googleads/v6/services:services_py_grpc",
"//google/ads/googleads/v6/services:services_py_proto",
],
)
##############################################################################
# Python (gapic-generator, GAPICv2)
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_gapic_assembly_pkg_legacy",
"py_gapic_library_legacy",
)
py_gapic_library_legacy(
name = "googleads_py_mono_gapic",
src = ":googleads_proto_with_info",
gapic_yaml = "googleads_gapic.yaml",
grpc_service_config = "googleads_grpc_service_config.json",
package = "google.ads.googleads.v6",
service_yaml = "googleads_v6.yaml",
deps = [
"//google/ads/googleads/v6/services:services_py_grpc",
],
)
py_gapic_assembly_pkg_legacy(
name = "googleads-py-mono",
deps = [
":googleads_py_mono_gapic",
"//google/ads/googleads/v6/common:common_py_proto",
"//google/ads/googleads/v6/enums:enums_py_proto",
"//google/ads/googleads/v6/errors:errors_py_proto",
"//google/ads/googleads/v6/resources:resources_py_proto",
"//google/ads/googleads/v6/services:services_py_grpc",
"//google/ads/googleads/v6/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.v6",
service_yaml = "googleads_v6.yaml",
deps = [],
)
nodejs_gapic_assembly_pkg(
name = "googleads-nodejs",
deps = [
":googleads_nodejs_gapic",
":googleads_proto",
],
)

View File

@ -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/v6/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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "common_csharp_proto",
deps = [":common_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.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"],
)

View File

@ -0,0 +1,89 @@
# 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 = "enums_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/api:annotations_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "enums_java_proto",
deps = [":enums_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "enums_csharp_proto",
deps = [":enums_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "enums_ruby_proto",
deps = [":enums_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "enums_py_proto",
deps = [":enums_proto"],
)

View File

@ -0,0 +1,93 @@
# 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 = "errors_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v6/common:common_proto",
"//google/api:annotations_proto",
"@com_google_protobuf//:duration_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "errors_java_proto",
deps = [":errors_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "errors_csharp_proto",
deps = [":errors_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "errors_ruby_proto",
deps = [":errors_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "errors_py_proto",
deps = [":errors_proto"],
)

View File

@ -0,0 +1,97 @@
# 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 = "resources_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v6/common:common_proto",
"//google/ads/googleads/v6/enums:enums_proto",
"//google/ads/googleads/v6/errors:errors_proto",
"//google/api:annotations_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_proto_library",
)
java_proto_library(
name = "resources_java_proto",
deps = [":resources_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_proto_library",
)
csharp_proto_library(
name = "resources_csharp_proto",
deps = [":resources_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_proto_library",
)
ruby_proto_library(
name = "resources_ruby_proto",
deps = [":resources_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_proto_library",
)
py_proto_library(
name = "resources_py_proto",
deps = [":resources_proto"],
)

View File

@ -0,0 +1,138 @@
# 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")
load("@com_google_googleapis_imports//:imports.bzl", "proto_library_with_info")
# 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 = "services_proto",
srcs = glob(["*.proto"]),
deps = [
"//google/ads/googleads/v6/common:common_proto",
"//google/ads/googleads/v6/enums:enums_proto",
"//google/ads/googleads/v6/errors:errors_proto",
"//google/ads/googleads/v6/resources:resources_proto",
"//google/api:annotations_proto",
"//google/api:client_proto",
"//google/api:field_behavior_proto",
"//google/api:resource_proto",
"//google/longrunning:operations_proto",
"//google/rpc:status_proto",
"@com_google_protobuf//:empty_proto",
"@com_google_protobuf//:field_mask_proto",
"@com_google_protobuf//:wrappers_proto",
],
)
proto_library_with_info(
name = "services_proto_with_info",
deps = [
":services_proto",
],
)
##############################################################################
# Java
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"java_grpc_library",
"java_proto_library",
)
java_proto_library(
name = "services_java_proto",
deps = [":services_proto"],
)
java_grpc_library(
name = "services_java_grpc",
srcs = [":services_proto"],
deps = [":services_java_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(
"@gapic_generator_csharp//rules_csharp_gapic:csharp_gapic.bzl",
"csharp_grpc_library",
"csharp_proto_library",
)
csharp_proto_library(
name = "services_csharp_proto",
deps = [":services_proto"],
)
csharp_grpc_library(
name = "services_csharp_grpc",
srcs = [":services_proto"],
deps = [":services_csharp_proto"],
)
##############################################################################
# Ruby
##############################################################################
load(
"@gapic_generator_ruby//rules_ruby_gapic:ruby_gapic.bzl",
"ruby_grpc_library",
"ruby_proto_library",
)
ruby_proto_library(
name = "services_ruby_proto",
deps = [":services_proto"],
)
ruby_grpc_library(
name = "services_ruby_grpc",
srcs = [":services_proto"],
deps = [":services_ruby_proto"],
)
##############################################################################
# Python
##############################################################################
load(
"@com_google_googleapis_imports//:imports.bzl",
"py_grpc_library",
"py_proto_library",
)
py_proto_library(
name = "services_py_proto",
deps = [":services_proto"],
)
py_grpc_library(
name = "services_py_grpc",
srcs = [":services_proto"],
deps = [":services_py_proto"],
)