diff options
Diffstat (limited to 'third_party/googleapis/google/cloud/billing')
18 files changed, 0 insertions, 3048 deletions
diff --git a/third_party/googleapis/google/cloud/billing/BUILD.bazel b/third_party/googleapis/google/cloud/billing/BUILD.bazel deleted file mode 100644 index 6b01e1a..0000000 --- a/third_party/googleapis/google/cloud/billing/BUILD.bazel +++ /dev/null @@ -1,41 +0,0 @@ -# This build file includes a target for the Ruby wrapper library for -# google-cloud-billing. - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = ["//visibility:public"]) - -# Export yaml configs. -exports_files(glob(["*.yaml"])) - -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "ruby_cloud_gapic_library", -    "ruby_gapic_assembly_pkg", -) - -# Generates a Ruby wrapper client for cloudbilling. -# Ruby wrapper clients are versionless, but are generated from source protos -# for a particular service version, v1 in this case. -ruby_cloud_gapic_library( -    name = "cloudbilling_ruby_wrapper", -    srcs = ["//google/cloud/billing/v1:billing_proto_with_info"], -    extra_protoc_parameters = [ -        "ruby-cloud-gem-name=google-cloud-billing", -        "ruby-cloud-env-prefix=BILLING", -        "ruby-cloud-wrapper-of=v1:0.1", -        "ruby-cloud-product-url=https://cloud.google.com/billing", -        "ruby-cloud-api-id=cloudbilling.googleapis.com", -        "ruby-cloud-api-shortname=cloudbilling", -        "ruby-cloud-factory-method-suffix=_service", -    ], -    ruby_cloud_description = "Allows developers to manage billing for their Google Cloud Platform projects programmatically.", -    ruby_cloud_title = "Billing", -) - -# Open Source package. -ruby_gapic_assembly_pkg( -    name = "google-cloud-billing-ruby", -    deps = [ -        ":cloudbilling_ruby_wrapper", -    ], -) diff --git a/third_party/googleapis/google/cloud/billing/budgets/BUILD.bazel b/third_party/googleapis/google/cloud/billing/budgets/BUILD.bazel deleted file mode 100644 index 04f9874..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/BUILD.bazel +++ /dev/null @@ -1,40 +0,0 @@ -# This build file includes a target for the Ruby wrapper library for -# google-cloud-billing-budgets. - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = ["//visibility:public"]) - -# Export yaml configs. -exports_files(glob(["*.yaml"])) - -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "ruby_cloud_gapic_library", -    "ruby_gapic_assembly_pkg", -) - -# Generates a Ruby wrapper client for billingbudgets. -# Ruby wrapper clients are versionless, but are generated from source protos -# for a particular service version, v1 in this case. -ruby_cloud_gapic_library( -    name = "billingbudgets_ruby_wrapper", -    srcs = ["//google/cloud/billing/budgets/v1:budgets_proto_with_info"], -    extra_protoc_parameters = [ -        "ruby-cloud-gem-name=google-cloud-billing-budgets", -        "ruby-cloud-env-prefix=BILLING_BUDGETS", -        "ruby-cloud-wrapper-of=v1:0.0;v1beta1:0.0", -        "ruby-cloud-product-url=https://cloud.google.com/billing/docs/how-to/budget-api-overview", -        "ruby-cloud-api-id=billingbudgets.googleapis.com", -        "ruby-cloud-api-shortname=billingbudgets", -    ], -    ruby_cloud_description = "Provides methods to view, create, and manage Cloud Billing budgets programmatically at scale.", -    ruby_cloud_title = "Billing Budgets", -) - -# Open Source package. -ruby_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-ruby", -    deps = [ -        ":billingbudgets_ruby_wrapper", -    ], -) diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1/BUILD.bazel b/third_party/googleapis/google/cloud/billing/budgets/v1/BUILD.bazel deleted file mode 100644 index 29a111c..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1/BUILD.bazel +++ /dev/null @@ -1,334 +0,0 @@ -# This file was automatically generated by BuildFileGenerator -# https://github.com/googleapis/rules_gapic/tree/master/bazel - -# Most of the manual changes to this file will be overwritten. -# It's **only** allowed to change the following rule attribute values: -# - names of *_gapic_assembly_* rules -# - certain parameters of *_gapic_library rules, including but not limited to: -#    * extra_protoc_parameters -#    * extra_protoc_file_parameters -# The complete list of preserved parameters can be found in the source code. - -############################################################################## -# Common -############################################################################## -load("@rules_proto//proto:defs.bzl", "proto_library") -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "csharp_gapic_assembly_pkg", -    "csharp_gapic_library", -    "csharp_grpc_library", -    "csharp_proto_library", -    "go_gapic_assembly_pkg", -    "go_gapic_library", -    "go_proto_library", -    "go_test", -    "java_gapic_assembly_gradle_pkg", -    "java_gapic_library", -    "java_gapic_test", -    "java_grpc_library", -    "java_proto_library", -    "nodejs_gapic_assembly_pkg", -    "nodejs_gapic_library", -    "php_gapic_assembly_pkg", -    "php_gapic_library", -    "php_grpc_library", -    "php_proto_library", -    "proto_library_with_info", -    "py_gapic_assembly_pkg", -    "py_gapic_library", -    "py_test", -    "ruby_cloud_gapic_library", -    "ruby_gapic_assembly_pkg", -    "ruby_grpc_library", -    "ruby_proto_library", -) - -# This is an API workspace, having public visibility by default makes perfect sense. -package(default_visibility = ["//visibility:public"]) - -proto_library( -    name = "budgets_proto", -    srcs = [ -        "budget_model.proto", -        "budget_service.proto", -    ], -    deps = [ -        "//google/api:annotations_proto", -        "//google/api:client_proto", -        "//google/api:field_behavior_proto", -        "//google/api:resource_proto", -        "//google/type:date_proto", -        "//google/type:money_proto", -        "@com_google_protobuf//:empty_proto", -        "@com_google_protobuf//:field_mask_proto", -        "@com_google_protobuf//:struct_proto", -    ], -) - -proto_library_with_info( -    name = "budgets_proto_with_info", -    deps = [ -        ":budgets_proto", -        "//google/cloud:common_resources_proto", -    ], -) - -java_proto_library( -    name = "budgets_java_proto", -    deps = [":budgets_proto"], -) - -java_grpc_library( -    name = "budgets_java_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_java_proto"], -) - -java_gapic_library( -    name = "budgets_java_gapic", -    srcs = [":budgets_proto_with_info"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    test_deps = [ -        ":budgets_java_grpc", -    ], -    transport = "grpc+rest", -    deps = [ -        ":budgets_java_proto", -    ], -) - -java_gapic_test( -    name = "budgets_java_gapic_test_suite", -    test_classes = [ -        "com.google.cloud.billing.budgets.v1.BudgetServiceClientHttpJsonTest", -        "com.google.cloud.billing.budgets.v1.BudgetServiceClientTest", -    ], -    runtime_deps = [":budgets_java_gapic_test"], -) - -# Open Source Packages -java_gapic_assembly_gradle_pkg( -    name = "google-cloud-billing-budgets-v1-java", -    include_samples = True, -    transport = "grpc+rest", -    deps = [ -        ":budgets_java_gapic", -        ":budgets_java_grpc", -        ":budgets_java_proto", -        ":budgets_proto", -    ], -) - -go_proto_library( -    name = "budgets_go_proto", -    compilers = ["@io_bazel_rules_go//proto:go_grpc"], -    importpath = "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1", -    protos = [":budgets_proto"], -    deps = [ -        "//google/api:annotations_go_proto", -        "//google/type:date_go_proto", -        "//google/type:money_go_proto", -    ], -) - -go_gapic_library( -    name = "budgets_go_gapic", -    srcs = [":budgets_proto_with_info"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    importpath = "cloud.google.com/go/billing/budgets/apiv1;budgets", -    metadata = True, -    service_yaml = "billingbudgets.yaml", -    transport = "grpc+rest", -    deps = [ -        ":budgets_go_proto", -    ], -) - -go_test( -    name = "budgets_go_gapic_test", -    srcs = [":budgets_go_gapic_srcjar_test"], -    embed = [":budgets_go_gapic"], -    importpath = "cloud.google.com/go/billing/budgets/apiv1", -) - -# Open Source Packages -go_gapic_assembly_pkg( -    name = "gapi-cloud-billing-budgets-v1-go", -    deps = [ -        ":budgets_go_gapic", -        ":budgets_go_gapic_srcjar-metadata.srcjar", -        ":budgets_go_gapic_srcjar-test.srcjar", -        ":budgets_go_proto", -    ], -) - -py_gapic_library( -    name = "budgets_py_gapic", -    srcs = [":budgets_proto"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    transport = "grpc", -) - -py_test( -    name = "budgets_py_gapic_test", -    srcs = [ -        "budgets_py_gapic_pytest.py", -        "budgets_py_gapic_test.py", -    ], -    legacy_create_init = False, -    deps = [":budgets_py_gapic"], -) - -# Open Source Packages -py_gapic_assembly_pkg( -    name = "billing-budgets-v1-py", -    deps = [ -        ":budgets_py_gapic", -    ], -) - -php_proto_library( -    name = "budgets_php_proto", -    deps = [":budgets_proto"], -) - -php_grpc_library( -    name = "budgets_php_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_php_proto"], -) - -php_gapic_library( -    name = "budgets_php_gapic", -    srcs = [":budgets_proto_with_info"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    service_yaml = "billingbudgets.yaml", -    deps = [ -        ":budgets_php_grpc", -        ":budgets_php_proto", -    ], -) - -# Open Source Packages -php_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-v1-php", -    deps = [ -        ":budgets_php_gapic", -        ":budgets_php_grpc", -        ":budgets_php_proto", -    ], -) - -nodejs_gapic_library( -    name = "budgets_nodejs_gapic", -    package_name = "@google-cloud/billing-budgets", -    src = ":budgets_proto_with_info", -    extra_protoc_parameters = ["metadata"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    package = "google.cloud.billing.budgets.v1", -    service_yaml = "billingbudgets.yaml", -    deps = [], -) - -nodejs_gapic_assembly_pkg( -    name = "billing-budgets-v1-nodejs", -    deps = [ -        ":budgets_nodejs_gapic", -        ":budgets_proto", -    ], -) - -ruby_proto_library( -    name = "budgets_ruby_proto", -    deps = [":budgets_proto"], -) - -ruby_grpc_library( -    name = "budgets_ruby_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_ruby_proto"], -) - -ruby_cloud_gapic_library( -    name = "budgets_ruby_gapic", -    srcs = [":budgets_proto_with_info"], -    extra_protoc_parameters = [ -        "ruby-cloud-api-id=billingbudgets.googleapis.com", -        "ruby-cloud-api-shortname=billingbudgets", -        "ruby-cloud-env-prefix=BILLING_BUDGETS", -        "ruby-cloud-gem-name=google-cloud-billing-budgets-v1", -        "ruby-cloud-product-url=https://cloud.google.com/billing/docs/how-to/budget-api-overview", -    ], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    ruby_cloud_description = "Provides methods to view, create, and manage Cloud Billing budgets programmatically at scale.", -    ruby_cloud_title = "Billing Budgets V1", -    deps = [ -        ":budgets_ruby_grpc", -        ":budgets_ruby_proto", -    ], -) - -# Open Source Packages -ruby_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-v1-ruby", -    deps = [ -        ":budgets_ruby_gapic", -        ":budgets_ruby_grpc", -        ":budgets_ruby_proto", -    ], -) - -csharp_proto_library( -    name = "budgets_csharp_proto", -    deps = [":budgets_proto"], -) - -csharp_grpc_library( -    name = "budgets_csharp_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_csharp_proto"], -) - -csharp_gapic_library( -    name = "budgets_csharp_gapic", -    srcs = [":budgets_proto_with_info"], -    common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    service_yaml = "billingbudgets.yaml", -    deps = [ -        ":budgets_csharp_grpc", -        ":budgets_csharp_proto", -    ], -) - -# Open Source Packages -csharp_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-v1-csharp", -    deps = [ -        ":budgets_csharp_gapic", -        ":budgets_csharp_grpc", -        ":budgets_csharp_proto", -    ], -) - -############################################################################## -# C++ -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "cc_grpc_library", -    "cc_proto_library", -) - -cc_proto_library( -    name = "budgets_cc_proto", -    deps = [":budgets_proto"], -) - -cc_grpc_library( -    name = "budgets_cc_grpc", -    srcs = [":budgets_proto"], -    grpc_only = True, -    deps = [":budgets_cc_proto"], -) diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudget_gapic.yaml b/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudget_gapic.yaml deleted file mode 100644 index 0bcb880..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudget_gapic.yaml +++ /dev/null @@ -1,2 +0,0 @@ -type: com.google.api.codegen.ConfigProto -config_schema_version: 2.0.0 diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudgets.yaml b/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudgets.yaml deleted file mode 100644 index ab4a077..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudgets.yaml +++ /dev/null @@ -1,21 +0,0 @@ -type: google.api.Service -config_version: 3 -name: billingbudgets.googleapis.com -title: Cloud Billing Budget API - -apis: -- name: google.cloud.billing.budgets.v1.BudgetService - -documentation: -  summary: |- -    The Cloud Billing Budget API stores Cloud Billing budgets, which define a -    budget plan and the rules to execute as spend is tracked against that -    plan. - -authentication: -  rules: -  - selector: 'google.cloud.billing.budgets.v1.BudgetService.*' -    oauth: -      canonical_scopes: |- -        https://www.googleapis.com/auth/cloud-billing, -        https://www.googleapis.com/auth/cloud-platform diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudgets_grpc_service_config.json b/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudgets_grpc_service_config.json deleted file mode 100644 index 27b57fe..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1/billingbudgets_grpc_service_config.json +++ /dev/null @@ -1,44 +0,0 @@ -{ -  "methodConfig": [ -    { -      "name": [ -        { -          "service": "google.cloud.billing.budgets.v1.BudgetService", -          "method": "CreateBudget" -        } -      ], -      "timeout": "60s" -    }, -    { -      "name": [ -        { -          "service": "google.cloud.billing.budgets.v1.BudgetService", -          "method": "UpdateBudget" -        }, -        { -          "service": "google.cloud.billing.budgets.v1.BudgetService", -          "method": "GetBudget" -        }, -        { -          "service": "google.cloud.billing.budgets.v1.BudgetService", -          "method": "ListBudgets" -        }, -        { -          "service": "google.cloud.billing.budgets.v1.BudgetService", -          "method": "DeleteBudget" -        } -      ], -      "timeout": "60s", -      "retryPolicy": { -        "maxAttempts": 5, -        "initialBackoff": "0.100s", -        "maxBackoff": "60s", -        "backoffMultiplier": 1.3, -        "retryableStatusCodes": [ -          "DEADLINE_EXCEEDED", -          "UNAVAILABLE" -        ] -      } -    } -  ] -} diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1/budget_model.proto b/third_party/googleapis/google/cloud/billing/budgets/v1/budget_model.proto deleted file mode 100644 index 6758f5c..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1/budget_model.proto +++ /dev/null @@ -1,300 +0,0 @@ -// Copyright 2021 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 -// -//     http://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. - -syntax = "proto3"; - -package google.cloud.billing.budgets.v1; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/struct.proto"; -import "google/type/date.proto"; -import "google/type/money.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1;budgets"; -option java_multiple_files = true; -option java_outer_classname = "BudgetModelProto"; -option java_package = "com.google.cloud.billing.budgets.v1"; - -// A budget is a plan that describes what you expect to spend on Cloud -// projects, plus the rules to execute as spend is tracked against that plan, -// (for example, send an alert when 90% of the target spend is met). -// The budget time period is configurable, with options such as month (default), -// quarter, year, or custom time period. -message Budget { -  option (google.api.resource) = { -    type: "billingbudgets.googleapis.com/Budget" -    pattern: "billingAccounts/{billing_account}/budgets/{budget}" -  }; - -  // Output only. Resource name of the budget. -  // The resource name implies the scope of a budget. Values are of the form -  // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. -  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - -  // User data for display name in UI. The name must be less than or equal to 60 -  // characters. -  string display_name = 2; - -  // Optional. Filters that define which resources are used to compute the -  // actual spend against the budget amount, such as projects, services, and the -  // budget's time period, as well as other filters. -  Filter budget_filter = 3 [(google.api.field_behavior) = OPTIONAL]; - -  // Required. Budgeted amount. -  BudgetAmount amount = 4 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. Rules that trigger alerts (notifications of thresholds -  // being crossed) when spend exceeds the specified percentages of the budget. -  repeated ThresholdRule threshold_rules = 5 -      [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Rules to apply to notifications sent based on budget spend and -  // thresholds. -  NotificationsRule notifications_rule = 6 -      [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Etag to validate that the object is unchanged for a -  // read-modify-write operation. -  // An empty etag will cause an update to overwrite other changes. -  string etag = 7 [(google.api.field_behavior) = OPTIONAL]; -} - -// The budgeted amount for each usage period. -message BudgetAmount { -  // Specification for what amount to use as the budget. -  oneof budget_amount { -    // A specified amount to use as the budget. -    // `currency_code` is optional. If specified when creating a budget, it must -    // match the currency of the billing account. If specified when updating a -    // budget, it must match the currency_code of the existing budget. -    // The `currency_code` is provided on output. -    google.type.Money specified_amount = 1; - -    // Use the last period's actual spend as the budget for the present period. -    // LastPeriodAmount can only be set when the budget's time period is a -    // [Filter.calendar_period][google.cloud.billing.budgets.v1.Filter.calendar_period]. -    // It cannot be set in combination with -    // [Filter.custom_period][google.cloud.billing.budgets.v1.Filter.custom_period]. -    LastPeriodAmount last_period_amount = 2; -  } -} - -// Describes a budget amount targeted to the last -// [Filter.calendar_period][google.cloud.billing.budgets.v1.Filter.calendar_period] -// spend. At this time, the amount is automatically 100% of the last calendar -// period's spend; that is, there are no other options yet. -// Future configuration options will be described here (for example, configuring -// a percentage of last period's spend). -// LastPeriodAmount cannot be set for a budget configured with -// a -// [Filter.custom_period][google.cloud.billing.budgets.v1.Filter.custom_period]. -message LastPeriodAmount {} - -// ThresholdRule contains a definition of a threshold which triggers -// an alert (a notification of a threshold being crossed) to be sent when -// spend goes above the specified amount. -// Alerts are automatically e-mailed to users with the Billing Account -// Administrator role or the Billing Account User role. -// The thresholds here have no effect on notifications sent to anything -// configured under `Budget.all_updates_rule`. -message ThresholdRule { -  // The type of basis used to determine if spend has passed the threshold. -  enum Basis { -    // Unspecified threshold basis. -    BASIS_UNSPECIFIED = 0; - -    // Use current spend as the basis for comparison against the threshold. -    CURRENT_SPEND = 1; - -    // Use forecasted spend for the period as the basis for comparison against -    // the threshold. -    // FORECASTED_SPEND can only be set when the budget's time period is a -    // [Filter.calendar_period][google.cloud.billing.budgets.v1.Filter.calendar_period]. -    // It cannot be set in combination with -    // [Filter.custom_period][google.cloud.billing.budgets.v1.Filter.custom_period]. -    FORECASTED_SPEND = 2; -  } - -  // Required. Send an alert when this threshold is exceeded. -  // This is a 1.0-based percentage, so 0.5 = 50%. -  // Validation: non-negative number. -  double threshold_percent = 1 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. The type of basis used to determine if spend has passed the -  // threshold. Behavior defaults to CURRENT_SPEND if not set. -  Basis spend_basis = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// NotificationsRule defines notifications that are sent based on budget spend -// and thresholds. -message NotificationsRule { -  // Optional. The name of the Pub/Sub topic where budget related messages will -  // be published, in the form `projects/{project_id}/topics/{topic_id}`. -  // Updates are sent at regular intervals to the topic. The topic needs to be -  // created before the budget is created; see -  // https://cloud.google.com/billing/docs/how-to/budgets#manage-notifications -  // for more details. -  // Caller is expected to have -  // `pubsub.topics.setIamPolicy` permission on the topic when it's set for a -  // budget, otherwise, the API call will fail with PERMISSION_DENIED. See -  // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications -  // for more details on Pub/Sub roles and permissions. -  string pubsub_topic = 1 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Required when -  // [NotificationsRule.pubsub_topic][google.cloud.billing.budgets.v1.NotificationsRule.pubsub_topic] -  // is set. The schema version of the notification sent to -  // [NotificationsRule.pubsub_topic][google.cloud.billing.budgets.v1.NotificationsRule.pubsub_topic]. -  // Only "1.0" is accepted. It represents the JSON schema as defined in -  // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format. -  string schema_version = 2 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Targets to send notifications to when a threshold is exceeded. -  // This is in addition to default recipients who have billing account IAM -  // roles. The value is the full REST resource name of a monitoring -  // notification channel with the form -  // `projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5 -  // channels are allowed. See -  // https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients -  // for more details. -  repeated string monitoring_notification_channels = 3 -      [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. When set to true, disables default notifications sent when a -  // threshold is exceeded. Default notifications are sent to those with Billing -  // Account Administrator and Billing Account User IAM roles for the target -  // account. -  bool disable_default_iam_recipients = 4 -      [(google.api.field_behavior) = OPTIONAL]; -} - -// A filter for a budget, limiting the scope of the cost to calculate. -message Filter { -  // Specifies how credits are applied when determining the spend for -  // threshold calculations. Budgets track the total cost minus any applicable -  // selected credits. -  // [See the documentation for a list of credit -  // types](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#credits-type). -  enum CreditTypesTreatment { -    CREDIT_TYPES_TREATMENT_UNSPECIFIED = 0; - -    // All types of credit are subtracted from the gross cost to determine the -    // spend for threshold calculations. -    INCLUDE_ALL_CREDITS = 1; - -    // All types of credit are added to the net cost to determine the spend for -    // threshold calculations. -    EXCLUDE_ALL_CREDITS = 2; - -    // [Credit -    // types](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#credits-type) -    // specified in the credit_types field are subtracted from the -    // gross cost to determine the spend for threshold calculations. -    INCLUDE_SPECIFIED_CREDITS = 3; -  } - -  // Optional. A set of projects of the form `projects/{project}`, -  // specifying that usage from only this set of projects should be -  // included in the budget. If omitted, the report will include all usage for -  // the billing account, regardless of which project the usage occurred on. -  // Only zero or one project can be specified currently. -  repeated string projects = 1 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. If -  // [Filter.credit_types_treatment][google.cloud.billing.budgets.v1.Filter.credit_types_treatment] -  // is INCLUDE_SPECIFIED_CREDITS, this is a list of credit types to be -  // subtracted from gross cost to determine the spend for threshold -  // calculations. See [a list of acceptable credit type -  // values](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#credits-type). -  // -  // If -  // [Filter.credit_types_treatment][google.cloud.billing.budgets.v1.Filter.credit_types_treatment] -  // is **not** INCLUDE_SPECIFIED_CREDITS, this field must be empty. -  repeated string credit_types = 7 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. If not set, default behavior is `INCLUDE_ALL_CREDITS`. -  CreditTypesTreatment credit_types_treatment = 4 -      [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. A set of services of the form `services/{service_id}`, -  // specifying that usage from only this set of services should be -  // included in the budget. If omitted, the report will include usage for -  // all the services. -  // The service names are available through the Catalog API: -  // https://cloud.google.com/billing/v1/how-tos/catalog-api. -  repeated string services = 3 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. A set of subaccounts of the form `billingAccounts/{account_id}`, -  // specifying that usage from only this set of subaccounts should be included -  // in the budget. If a subaccount is set to the name of the parent account, -  // usage from the parent account will be included. If the field is omitted, -  // the report will include usage from the parent account and all subaccounts, -  // if they exist. -  repeated string subaccounts = 5 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. A single label and value pair specifying that usage from only -  // this set of labeled resources should be included in the budget. Currently, -  // multiple entries or multiple values per entry are not allowed. If omitted, -  // the report will include all labeled and unlabeled usage. -  map<string, google.protobuf.ListValue> labels = 6 -      [(google.api.field_behavior) = OPTIONAL]; - -  // Multiple options to choose the budget's time period, specifying that only -  // usage that occurs during this time period should be included in the budget. -  // If not set, the `usage_period` defaults to CalendarPeriod.MONTH. -  oneof usage_period { -    // Optional. Specifies to track usage for recurring calendar period. -    // For example, assume that CalendarPeriod.QUARTER is set. The budget will -    // track usage from April 1 to June 30, when the current calendar month is -    // April, May, June. After that, it will track usage from July 1 to -    // September 30 when the current calendar month is July, August, September, -    // so on. -    CalendarPeriod calendar_period = 8 [(google.api.field_behavior) = OPTIONAL]; - -    // Optional. Specifies to track usage from any start date (required) to any -    // end date (optional). This time period is static, it does not recur. -    CustomPeriod custom_period = 9 [(google.api.field_behavior) = OPTIONAL]; -  } -} - -// All date times begin at 12 AM US and Canadian Pacific Time (UTC-8). -message CustomPeriod { -  // Required. The start date must be after January 1, 2017. -  google.type.Date start_date = 1 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. The end date of the time period. Budgets with elapsed end date -  // won't be processed. If unset, specifies to track all usage incurred since -  // the start_date. -  google.type.Date end_date = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// A `CalendarPeriod` represents the abstract concept of a time period that -// has a canonical start. Grammatically, "the start of the current -// `CalendarPeriod`". All calendar times begin at 12 AM US and Canadian -// Pacific Time (UTC-8). -enum CalendarPeriod { -  CALENDAR_PERIOD_UNSPECIFIED = 0; - -  // A month. Month starts on the first day of each month, such as January 1, -  // February 1, March 1, and so on. -  MONTH = 1; - -  // A quarter. Quarters start on dates January 1, April 1, July 1, and October -  // 1 of each year. -  QUARTER = 2; - -  // A year. Year starts on January 1. -  YEAR = 3; -} diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1/budget_service.proto b/third_party/googleapis/google/cloud/billing/budgets/v1/budget_service.proto deleted file mode 100644 index a4b512b..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1/budget_service.proto +++ /dev/null @@ -1,183 +0,0 @@ -// Copyright 2021 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 -// -//     http://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. - -syntax = "proto3"; - -package google.cloud.billing.budgets.v1; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/cloud/billing/budgets/v1/budget_model.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/field_mask.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1;budgets"; -option java_multiple_files = true; -option java_outer_classname = "BudgetServiceProto"; -option java_package = "com.google.cloud.billing.budgets.v1"; - -// BudgetService stores Cloud Billing budgets, which define a -// budget plan and rules to execute as we track spend against that plan. -service BudgetService { -  option (google.api.default_host) = "billingbudgets.googleapis.com"; -  option (google.api.oauth_scopes) = -      "https://www.googleapis.com/auth/cloud-billing," -      "https://www.googleapis.com/auth/cloud-platform"; - -  // Creates a new budget. See -  // [Quotas and limits](https://cloud.google.com/billing/quotas) -  // for more information on the limits of the number of budgets you can create. -  rpc CreateBudget(CreateBudgetRequest) returns (Budget) { -    option (google.api.http) = { -      post: "/v1/{parent=billingAccounts/*}/budgets" -      body: "budget" -    }; -    option (google.api.method_signature) = "parent,budget"; -  } - -  // Updates a budget and returns the updated budget. -  // -  // WARNING: There are some fields exposed on the Google Cloud Console that -  // aren't available on this API. Budget fields that are not exposed in -  // this API will not be changed by this method. -  rpc UpdateBudget(UpdateBudgetRequest) returns (Budget) { -    option (google.api.http) = { -      patch: "/v1/{budget.name=billingAccounts/*/budgets/*}" -      body: "budget" -    }; -    option (google.api.method_signature) = "budget,update_mask"; -  } - -  // Returns a budget. -  // -  // WARNING: There are some fields exposed on the Google Cloud Console that -  // aren't available on this API. When reading from the API, you will not -  // see these fields in the return value, though they may have been set -  // in the Cloud Console. -  rpc GetBudget(GetBudgetRequest) returns (Budget) { -    option (google.api.http) = { -      get: "/v1/{name=billingAccounts/*/budgets/*}" -    }; -    option (google.api.method_signature) = "name"; -  } - -  // Returns a list of budgets for a billing account. -  // -  // WARNING: There are some fields exposed on the Google Cloud Console that -  // aren't available on this API. When reading from the API, you will not -  // see these fields in the return value, though they may have been set -  // in the Cloud Console. -  rpc ListBudgets(ListBudgetsRequest) returns (ListBudgetsResponse) { -    option (google.api.http) = { -      get: "/v1/{parent=billingAccounts/*}/budgets" -    }; -    option (google.api.method_signature) = "parent"; -  } - -  // Deletes a budget. Returns successfully if already deleted. -  rpc DeleteBudget(DeleteBudgetRequest) returns (google.protobuf.Empty) { -    option (google.api.http) = { -      delete: "/v1/{name=billingAccounts/*/budgets/*}" -    }; -    option (google.api.method_signature) = "name"; -  } -} - -// Request for CreateBudget -message CreateBudgetRequest { -  // Required. The name of the billing account to create the budget in. Values -  // are of the form `billingAccounts/{billingAccountId}`. -  string parent = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      child_type: "billingbudgets.googleapis.com/Budget" -    } -  ]; - -  // Required. Budget to create. -  Budget budget = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Request for UpdateBudget -message UpdateBudgetRequest { -  // Required. The updated budget object. -  // The budget to update is specified by the budget name in the budget. -  Budget budget = 1 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. Indicates which fields in the provided budget to update. -  // Read-only fields (such as `name`) cannot be changed. If this is not -  // provided, then only fields with non-default values from the request are -  // updated. See -  // https://developers.google.com/protocol-buffers/docs/proto3#default for more -  // details about default values. -  google.protobuf.FieldMask update_mask = 2 -      [(google.api.field_behavior) = OPTIONAL]; -} - -// Request for GetBudget -message GetBudgetRequest { -  // Required. Name of budget to get. Values are of the form -  // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "billingbudgets.googleapis.com/Budget" -    } -  ]; -} - -// Request for ListBudgets -message ListBudgetsRequest { -  // Required. Name of billing account to list budgets under. Values -  // are of the form `billingAccounts/{billingAccountId}`. -  string parent = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      child_type: "billingbudgets.googleapis.com/Budget" -    } -  ]; - -  // Optional. The maximum number of budgets to return per page. -  // The default and maximum value are 100. -  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. The value returned by the last `ListBudgetsResponse` which -  // indicates that this is a continuation of a prior `ListBudgets` call, -  // and that the system should return the next page of data. -  string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; -} - -// Response for ListBudgets -message ListBudgetsResponse { -  // List of the budgets owned by the requested billing account. -  repeated Budget budgets = 1; - -  // If not empty, indicates that there may be more budgets that match the -  // request; this value should be passed in a new `ListBudgetsRequest`. -  string next_page_token = 2; -} - -// Request for DeleteBudget -message DeleteBudgetRequest { -  // Required. Name of the budget to delete. Values are of the form -  // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "billingbudgets.googleapis.com/Budget" -    } -  ]; -} diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/BUILD.bazel b/third_party/googleapis/google/cloud/billing/budgets/v1beta1/BUILD.bazel deleted file mode 100644 index dba7484..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/BUILD.bazel +++ /dev/null @@ -1,359 +0,0 @@ -# This file was automatically generated by BuildFileGenerator -# https://github.com/googleapis/rules_gapic/tree/master/bazel - -# Most of the manual changes to this file will be overwritten. -# It's **only** allowed to change the following rule attribute values: -# - names of *_gapic_assembly_* rules -# - certain parameters of *_gapic_library rules, including but not limited to: -#    * extra_protoc_parameters -#    * extra_protoc_file_parameters -# The complete list of preserved parameters can be found in the source code. - -# This is an API workspace, having public visibility by default makes perfect sense. -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") - -proto_library( -    name = "budgets_proto", -    srcs = [ -        "budget_model.proto", -        "budget_service.proto", -    ], -    deps = [ -        "//google/api:annotations_proto", -        "//google/api:client_proto", -        "//google/api:field_behavior_proto", -        "//google/api:resource_proto", -        "//google/type:date_proto", -        "//google/type:money_proto", -        "@com_google_protobuf//:empty_proto", -        "@com_google_protobuf//:field_mask_proto", -        "@com_google_protobuf//:struct_proto", -    ], -) - -proto_library_with_info( -    name = "budgets_proto_with_info", -    deps = [ -        ":budgets_proto", -        "//google/cloud:common_resources_proto", -    ], -) - -############################################################################## -# Java -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "java_gapic_assembly_gradle_pkg", -    "java_gapic_library", -    "java_gapic_test", -    "java_grpc_library", -    "java_proto_library", -) - -java_proto_library( -    name = "budgets_java_proto", -    deps = [":budgets_proto"], -) - -java_grpc_library( -    name = "budgets_java_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_java_proto"], -) - -java_gapic_library( -    name = "budgets_java_gapic", -    srcs = [":budgets_proto_with_info"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    test_deps = [ -        ":budgets_java_grpc", -    ], -    deps = [ -        ":budgets_java_proto", -    ], -) - -java_gapic_test( -    name = "budgets_java_gapic_test_suite", -    test_classes = [ -        "com.google.cloud.billing.budgets.v1beta1.BudgetServiceClientTest", -    ], -    runtime_deps = [":budgets_java_gapic_test"], -) - -# Open Source Packages -java_gapic_assembly_gradle_pkg( -    name = "google-cloud-billing-budgets-v1beta1-java", -    include_samples = True, -    deps = [ -        ":budgets_java_gapic", -        ":budgets_java_grpc", -        ":budgets_java_proto", -        ":budgets_proto", -    ], -) - -############################################################################## -# Go -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "go_gapic_assembly_pkg", -    "go_gapic_library", -    "go_proto_library", -    "go_test", -) - -go_proto_library( -    name = "budgets_go_proto", -    compilers = ["@io_bazel_rules_go//proto:go_grpc"], -    importpath = "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1beta1", -    protos = [":budgets_proto"], -    deps = [ -        "//google/api:annotations_go_proto", -        "//google/type:date_go_proto", -        "//google/type:money_go_proto", -    ], -) - -go_gapic_library( -    name = "budgets_go_gapic", -    srcs = [":budgets_proto_with_info"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    importpath = "cloud.google.com/go/billing/budgets/apiv1beta1;budgets", -    metadata = True, -    service_yaml = "billingbudgets.yaml", -    deps = [ -        ":budgets_go_proto", -    ], -) - -go_test( -    name = "budgets_go_gapic_test", -    srcs = [":budgets_go_gapic_srcjar_test"], -    embed = [":budgets_go_gapic"], -    importpath = "cloud.google.com/go/billing/budgets/apiv1beta1", -) - -# Open Source Packages -go_gapic_assembly_pkg( -    name = "gapi-cloud-billing-budgets-v1beta1-go", -    deps = [ -        ":budgets_go_gapic", -        ":budgets_go_gapic_srcjar-metadata.srcjar", -        ":budgets_go_gapic_srcjar-test.srcjar", -        ":budgets_go_proto", -    ], -) - -############################################################################## -# Python -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "py_gapic_assembly_pkg", -    "py_gapic_library", -    "py_test", -) - -py_gapic_library( -    name = "budgets_py_gapic", -    srcs = [":budgets_proto"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    transport = "grpc", -) - -py_test( -    name = "budgets_py_gapic_test", -    srcs = [ -        "budgets_py_gapic_pytest.py", -        "budgets_py_gapic_test.py", -    ], -    legacy_create_init = False, -    deps = [":budgets_py_gapic"], -) - -# Open Source Packages -py_gapic_assembly_pkg( -    name = "billing-budgets-v1beta1-py", -    deps = [ -        ":budgets_py_gapic", -    ], -) - -############################################################################## -# PHP -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "php_gapic_assembly_pkg", -    "php_gapic_library", -    "php_grpc_library", -    "php_proto_library", -) - -php_proto_library( -    name = "budgets_php_proto", -    deps = [":budgets_proto"], -) - -php_grpc_library( -    name = "budgets_php_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_php_proto"], -) - -php_gapic_library( -    name = "budgets_php_gapic", -    srcs = [":budgets_proto_with_info"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    deps = [ -        ":budgets_php_grpc", -        ":budgets_php_proto", -    ], -) - -# Open Source Packages -php_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-v1beta1-php", -    deps = [ -        ":budgets_php_gapic", -        ":budgets_php_grpc", -        ":budgets_php_proto", -    ], -) - -############################################################################## -# Node.js -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "nodejs_gapic_assembly_pkg", -    "nodejs_gapic_library", -) - -nodejs_gapic_library( -    name = "budgets_nodejs_gapic", -    package_name = "@google-cloud/billing-budgets", -    src = ":budgets_proto_with_info", -    extra_protoc_parameters = ["metadata"], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    package = "google.cloud.billing.budgets.v1beta1", -    service_yaml = "billingbudgets.yaml", -    deps = [], -) - -nodejs_gapic_assembly_pkg( -    name = "billing-budgets-v1beta1-nodejs", -    deps = [ -        ":budgets_nodejs_gapic", -        ":budgets_proto", -    ], -) - -############################################################################## -# Ruby -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "ruby_cloud_gapic_library", -    "ruby_gapic_assembly_pkg", -    "ruby_grpc_library", -    "ruby_proto_library", -) - -ruby_proto_library( -    name = "budgets_ruby_proto", -    deps = [":budgets_proto"], -) - -ruby_grpc_library( -    name = "budgets_ruby_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_ruby_proto"], -) - -ruby_cloud_gapic_library( -    name = "budgets_ruby_gapic", -    srcs = [":budgets_proto_with_info"], -    extra_protoc_parameters = [ -        "ruby-cloud-api-id=billingbudgets.googleapis.com", -        "ruby-cloud-api-shortname=billingbudgets", -        "ruby-cloud-env-prefix=BILLING_BUDGETS", -        "ruby-cloud-gem-name=google-cloud-billing-budgets-v1beta1", -        "ruby-cloud-product-url=https://cloud.google.com/billing/docs/how-to/budget-api-overview", -    ], -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    ruby_cloud_description = "Provides methods to view, create, and manage Cloud Billing budgets programmatically at scale.", -    ruby_cloud_title = "Billing Budgets V1beta1", -    deps = [ -        ":budgets_ruby_grpc", -        ":budgets_ruby_proto", -    ], -) - -# Open Source Packages -ruby_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-v1beta1-ruby", -    deps = [ -        ":budgets_ruby_gapic", -        ":budgets_ruby_grpc", -        ":budgets_ruby_proto", -    ], -) - -############################################################################## -# C# -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "csharp_gapic_assembly_pkg", -    "csharp_gapic_library", -    "csharp_grpc_library", -    "csharp_proto_library", -) - -csharp_proto_library( -    name = "budgets_csharp_proto", -    deps = [":budgets_proto"], -) - -csharp_grpc_library( -    name = "budgets_csharp_grpc", -    srcs = [":budgets_proto"], -    deps = [":budgets_csharp_proto"], -) - -csharp_gapic_library( -    name = "budgets_csharp_gapic", -    srcs = [":budgets_proto_with_info"], -    common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", -    grpc_service_config = "billingbudgets_grpc_service_config.json", -    service_yaml = "billingbudgets.yaml", -    deps = [ -        ":budgets_csharp_grpc", -        ":budgets_csharp_proto", -    ], -) - -# Open Source Packages -csharp_gapic_assembly_pkg( -    name = "google-cloud-billing-budgets-v1beta1-csharp", -    deps = [ -        ":budgets_csharp_gapic", -        ":budgets_csharp_grpc", -        ":budgets_csharp_proto", -    ], -) - -############################################################################## -# C++ -############################################################################## -# Put your C++ rules here diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/billingbudgets.yaml b/third_party/googleapis/google/cloud/billing/budgets/v1beta1/billingbudgets.yaml deleted file mode 100644 index 851741f..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/billingbudgets.yaml +++ /dev/null @@ -1,21 +0,0 @@ -type: google.api.Service -config_version: 3 -name: billingbudgets.googleapis.com -title: Cloud Billing Budget API - -apis: -- name: google.cloud.billing.budgets.v1beta1.BudgetService - -documentation: -  summary: |- -    The Cloud Billing Budget API stores Cloud Billing budgets, which define a -    budget plan and the rules to execute as spend is tracked against that -    plan. - -authentication: -  rules: -  - selector: 'google.cloud.billing.budgets.v1beta1.BudgetService.*' -    oauth: -      canonical_scopes: |- -        https://www.googleapis.com/auth/cloud-billing, -        https://www.googleapis.com/auth/cloud-platform diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/billingbudgets_grpc_service_config.json b/third_party/googleapis/google/cloud/billing/budgets/v1beta1/billingbudgets_grpc_service_config.json deleted file mode 100644 index ced46bf..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/billingbudgets_grpc_service_config.json +++ /dev/null @@ -1,44 +0,0 @@ -{ -  "methodConfig": [ -    { -      "name": [ -        { -          "service": "google.cloud.billing.budgets.v1beta1.BudgetService", -          "method": "CreateBudget" -        } -      ], -      "timeout": "60s" -    }, -    { -      "name": [ -        { -          "service": "google.cloud.billing.budgets.v1beta1.BudgetService", -          "method": "UpdateBudget" -        }, -        { -          "service": "google.cloud.billing.budgets.v1beta1.BudgetService", -          "method": "GetBudget" -        }, -        { -          "service": "google.cloud.billing.budgets.v1beta1.BudgetService", -          "method": "ListBudgets" -        }, -        { -          "service": "google.cloud.billing.budgets.v1beta1.BudgetService", -          "method": "DeleteBudget" -        } -      ], -      "timeout": "60s", -      "retryPolicy": { -        "maxAttempts": 5, -        "initialBackoff": "0.100s", -        "maxBackoff": "60s", -        "backoffMultiplier": 1.3, -        "retryableStatusCodes": [ -          "DEADLINE_EXCEEDED", -          "UNAVAILABLE" -        ] -      } -    } -  ] -} diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/budget_model.proto b/third_party/googleapis/google/cloud/billing/budgets/v1beta1/budget_model.proto deleted file mode 100644 index c269c81..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/budget_model.proto +++ /dev/null @@ -1,311 +0,0 @@ -// Copyright 2022 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 -// -//     http://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. - -syntax = "proto3"; - -package google.cloud.billing.budgets.v1beta1; - -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/struct.proto"; -import "google/type/date.proto"; -import "google/type/money.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1beta1;budgets"; -option java_multiple_files = true; -option java_package = "com.google.cloud.billing.budgets.v1beta1"; - -// A budget is a plan that describes what you expect to spend on Cloud -// projects, plus the rules to execute as spend is tracked against that plan, -// (for example, send an alert when 90% of the target spend is met). -// The budget time period is configurable, with options such as month (default), -// quarter, year, or custom time period. -message Budget { -  option (google.api.resource) = { -    type: "billingbudgets.googleapis.com/Budget" -    pattern: "billingAccounts/{billing_account}/budgets/{budget}" -  }; - -  // Output only. Resource name of the budget. -  // The resource name implies the scope of a budget. Values are of the form -  // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. -  string name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; - -  // User data for display name in UI. -  // Validation: <= 60 chars. -  string display_name = 2; - -  // Optional. Filters that define which resources are used to compute the actual spend -  // against the budget amount, such as projects, services, and the budget's -  // time period, as well as other filters. -  Filter budget_filter = 3 [(google.api.field_behavior) = OPTIONAL]; - -  // Required. Budgeted amount. -  BudgetAmount amount = 4 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. Rules that trigger alerts (notifications of thresholds -  // being crossed) when spend exceeds the specified percentages of the budget. -  // -  // Optional for `pubsubTopic` notifications. -  // -  // Required if using email notifications. -  repeated ThresholdRule threshold_rules = 5 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Rules to apply to notifications sent based on budget spend and thresholds. -  AllUpdatesRule all_updates_rule = 6 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Etag to validate that the object is unchanged for a -  // read-modify-write operation. -  // An empty etag will cause an update to overwrite other changes. -  string etag = 7 [(google.api.field_behavior) = OPTIONAL]; -} - -// The budgeted amount for each usage period. -message BudgetAmount { -  // Specification for what amount to use as the budget. -  oneof budget_amount { -    // A specified amount to use as the budget. -    // `currency_code` is optional. If specified when creating a budget, it must -    // match the currency of the billing account. If specified when updating a -    // budget, it must match the currency_code of the existing budget. -    // The `currency_code` is provided on output. -    google.type.Money specified_amount = 1; - -    // Use the last period's actual spend as the budget for the present period. -    // LastPeriodAmount can only be set when the budget's time period is a -    // [Filter.calendar_period][google.cloud.billing.budgets.v1beta1.Filter.calendar_period]. It cannot be set in combination with -    // [Filter.custom_period][google.cloud.billing.budgets.v1beta1.Filter.custom_period]. -    LastPeriodAmount last_period_amount = 2; -  } -} - -// Describes a budget amount targeted to the last [Filter.calendar_period][google.cloud.billing.budgets.v1beta1.Filter.calendar_period] -// spend. At this time, the amount is automatically 100% of the last calendar -// period's spend; that is, there are no other options yet. -// Future configuration options will be described here (for example, configuring -// a percentage of last period's spend). -// LastPeriodAmount cannot be set for a budget configured with -// a [Filter.custom_period][google.cloud.billing.budgets.v1beta1.Filter.custom_period]. -message LastPeriodAmount { - -} - -// ThresholdRule contains the definition of a threshold. Threshold rules define -// the triggering events used to generate a budget notification email. When a -// threshold is crossed (spend exceeds the specified percentages of the -// budget), budget alert emails are sent to the email recipients you specify -// in the -// [NotificationsRule](#notificationsrule). -// -// Threshold rules also affect the fields included in the -// [JSON data -// object](https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format) -// sent to a Pub/Sub topic. -// -// Threshold rules are _required_ if using email notifications. -// -// Threshold rules are _optional_ if only setting a -// [`pubsubTopic` NotificationsRule](#NotificationsRule), -// unless you want your JSON data object to include data about the thresholds -// you set. -// -// For more information, see -// [set budget threshold rules and -// actions](https://cloud.google.com/billing/docs/how-to/budgets#budget-actions). -message ThresholdRule { -  // The type of basis used to determine if spend has passed the threshold. -  enum Basis { -    // Unspecified threshold basis. -    BASIS_UNSPECIFIED = 0; - -    // Use current spend as the basis for comparison against the threshold. -    CURRENT_SPEND = 1; - -    // Use forecasted spend for the period as the basis for comparison against -    // the threshold. -    // FORECASTED_SPEND can only be set when the budget's time period is a -    // [Filter.calendar_period][google.cloud.billing.budgets.v1beta1.Filter.calendar_period].  It cannot be set in combination with -    // [Filter.custom_period][google.cloud.billing.budgets.v1beta1.Filter.custom_period]. -    FORECASTED_SPEND = 2; -  } - -  // Required. Send an alert when this threshold is exceeded. -  // This is a 1.0-based percentage, so 0.5 = 50%. -  // Validation: non-negative number. -  double threshold_percent = 1 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. The type of basis used to determine if spend has passed the -  // threshold. Behavior defaults to CURRENT_SPEND if not set. -  Basis spend_basis = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// AllUpdatesRule defines notifications that are sent based on budget spend -// and thresholds. -message AllUpdatesRule { -  // Optional. The name of the Pub/Sub topic where budget related messages will be -  // published, in the form `projects/{project_id}/topics/{topic_id}`. Updates -  // are sent at regular intervals to the topic. -  // The topic needs to be created before the budget is created; see -  // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications -  // for more details. -  // Caller is expected to have -  // `pubsub.topics.setIamPolicy` permission on the topic when it's set for a -  // budget, otherwise, the API call will fail with PERMISSION_DENIED. See -  // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#permissions_required_for_this_task -  // for more details on Pub/Sub roles and permissions. -  string pubsub_topic = 1 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Required when [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic] is set. The schema version of -  // the notification sent to [AllUpdatesRule.pubsub_topic][google.cloud.billing.budgets.v1beta1.AllUpdatesRule.pubsub_topic]. Only "1.0" is -  // accepted. It represents the JSON schema as defined in -  // https://cloud.google.com/billing/docs/how-to/budgets-programmatic-notifications#notification_format. -  string schema_version = 2 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. Targets to send notifications to when a threshold is exceeded. This is in -  // addition to default recipients who have billing account IAM roles. -  // The value is the full REST resource name of a monitoring notification -  // channel with the form -  // `projects/{project_id}/notificationChannels/{channel_id}`. A maximum of 5 -  // channels are allowed. See -  // https://cloud.google.com/billing/docs/how-to/budgets-notification-recipients -  // for more details. -  repeated string monitoring_notification_channels = 3 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. When set to true, disables default notifications sent when a threshold is -  // exceeded. Default notifications are sent to those with Billing Account -  // Administrator and Billing Account User IAM roles for the target account. -  bool disable_default_iam_recipients = 4 [(google.api.field_behavior) = OPTIONAL]; -} - -// A filter for a budget, limiting the scope of the cost to calculate. -message Filter { -  // Specifies how credits are applied when determining the spend for -  // threshold calculations. Budgets track the total cost minus any applicable -  // selected credits. -  // [See the documentation for a list of credit -  // types](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#credits-type). -  enum CreditTypesTreatment { -    CREDIT_TYPES_TREATMENT_UNSPECIFIED = 0; - -    // All types of credit are subtracted from the gross cost to determine the -    // spend for threshold calculations. -    INCLUDE_ALL_CREDITS = 1; - -    // All types of credit are added to the net cost to determine the spend for -    // threshold calculations. -    EXCLUDE_ALL_CREDITS = 2; - -    // [Credit -    // types](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#credits-type) -    // specified in the credit_types field are subtracted from the -    // gross cost to determine the spend for threshold calculations. -    INCLUDE_SPECIFIED_CREDITS = 3; -  } - -  // Optional. A set of projects of the form `projects/{project}`, -  // specifying that usage from only this set of projects should be -  // included in the budget. If omitted, the report will include all usage for -  // the billing account, regardless of which project the usage occurred on. -  // Only zero or one project can be specified currently. -  repeated string projects = 1 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. If [Filter.credit_types_treatment][google.cloud.billing.budgets.v1beta1.Filter.credit_types_treatment] is INCLUDE_SPECIFIED_CREDITS, this is -  // a list of credit types to be subtracted from gross cost to determine the -  // spend for threshold calculations. See -  // [a list of acceptable credit type -  // values](https://cloud.google.com/billing/docs/how-to/export-data-bigquery-tables#credits-type). -  // -  // If [Filter.credit_types_treatment][google.cloud.billing.budgets.v1beta1.Filter.credit_types_treatment] is **not** INCLUDE_SPECIFIED_CREDITS, -  // this field must be empty. -  repeated string credit_types = 7 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. If not set, default behavior is `INCLUDE_ALL_CREDITS`. -  CreditTypesTreatment credit_types_treatment = 4 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. A set of services of the form `services/{service_id}`, -  // specifying that usage from only this set of services should be -  // included in the budget. If omitted, the report will include usage for -  // all the services. -  // The service names are available through the Catalog API: -  // https://cloud.google.com/billing/v1/how-tos/catalog-api. -  repeated string services = 3 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. A set of subaccounts of the form `billingAccounts/{account_id}`, specifying -  // that usage from only this set of subaccounts should be included in the -  // budget. If a subaccount is set to the name of the parent account, -  // usage from the parent account will be included. If omitted, the -  // report will include usage from the parent account and all -  // subaccounts, if they exist. -  repeated string subaccounts = 5 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. A single label and value pair specifying that usage from only this set of -  // labeled resources should be included in the budget. If omitted, the -  // report will include all labeled and unlabeled usage. -  // -  // An object containing a single `"key": value` pair. Example: `{ "name": -  // "wrench" }`. -  // -  //  _Currently, multiple entries or multiple values per entry are not -  //  allowed._ -  map<string, google.protobuf.ListValue> labels = 6 [(google.api.field_behavior) = OPTIONAL]; - -  // Multiple options to choose the budget's time period, specifying that only -  // usage that occurs during this time period should be included in the budget. -  // If not set, the <code>usage_period</code> defaults to CalendarPeriod.MONTH. -  oneof usage_period { -    // Optional. Specifies to track usage for recurring calendar period. -    // For example, assume that CalendarPeriod.QUARTER is set. The budget will -    // track usage from April 1 to June 30, when the current calendar month is -    // April, May, June. After that, it will track usage from July 1 to -    // September 30 when the current calendar month is July, August, September, -    // so on. -    CalendarPeriod calendar_period = 8 [(google.api.field_behavior) = OPTIONAL]; - -    // Optional. Specifies to track usage from any start date (required) to any end date -    // (optional). This time period is static, it does not recur. -    CustomPeriod custom_period = 9 [(google.api.field_behavior) = OPTIONAL]; -  } -} - -// All date times begin at 12 AM US and Canadian Pacific Time (UTC-8). -message CustomPeriod { -  // Required. The start date must be after January 1, 2017. -  google.type.Date start_date = 1 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. The end date of the time period. Budgets with elapsed end date won't be -  // processed. If unset, specifies to track all usage -  // incurred since the start_date. -  google.type.Date end_date = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// A `CalendarPeriod` represents the abstract concept of a time period that -// has a canonical start. Grammatically, "the start of the current -// `CalendarPeriod`". All calendar times begin at 12 AM US and Canadian -// Pacific Time (UTC-8). -enum CalendarPeriod { -  // Calendar period is unset. This is the default if the budget is for a -  // custom time period (CustomPeriod). -  CALENDAR_PERIOD_UNSPECIFIED = 0; - -  // A month. Month starts on the first day of each month, such as January 1, -  // February 1, March 1, and so on. -  MONTH = 1; - -  // A quarter. Quarters start on dates January 1, April 1, July 1, and October -  // 1 of each year. -  QUARTER = 2; - -  // A year. Year starts on January 1. -  YEAR = 3; -} diff --git a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/budget_service.proto b/third_party/googleapis/google/cloud/billing/budgets/v1beta1/budget_service.proto deleted file mode 100644 index e38c0aa..0000000 --- a/third_party/googleapis/google/cloud/billing/budgets/v1beta1/budget_service.proto +++ /dev/null @@ -1,176 +0,0 @@ -// Copyright 2022 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 -// -//     http://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. - -syntax = "proto3"; - -package google.cloud.billing.budgets.v1beta1; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/cloud/billing/budgets/v1beta1/budget_model.proto"; -import "google/protobuf/empty.proto"; -import "google/protobuf/field_mask.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/billing/budgets/v1beta1;budgets"; -option java_multiple_files = true; -option java_package = "com.google.cloud.billing.budgets.v1beta1"; - -// BudgetService stores Cloud Billing budgets, which define a -// budget plan and rules to execute as we track spend against that plan. -service BudgetService { -  option (google.api.default_host) = "billingbudgets.googleapis.com"; -  option (google.api.oauth_scopes) = -      "https://www.googleapis.com/auth/cloud-billing," -      "https://www.googleapis.com/auth/cloud-platform"; - -  // Creates a new budget. See -  // [Quotas and limits](https://cloud.google.com/billing/quotas) -  // for more information on the limits of the number of budgets you can create. -  rpc CreateBudget(CreateBudgetRequest) returns (Budget) { -    option (google.api.http) = { -      post: "/v1beta1/{parent=billingAccounts/*}/budgets" -      body: "*" -    }; -  } - -  // Updates a budget and returns the updated budget. -  // -  // WARNING: There are some fields exposed on the Google Cloud Console that -  // aren't available on this API. Budget fields that are not exposed in -  // this API will not be changed by this method. -  rpc UpdateBudget(UpdateBudgetRequest) returns (Budget) { -    option (google.api.http) = { -      patch: "/v1beta1/{budget.name=billingAccounts/*/budgets/*}" -      body: "*" -    }; -  } - -  // Returns a budget. -  // -  // WARNING: There are some fields exposed on the Google Cloud Console that -  // aren't available on this API. When reading from the API, you will not -  // see these fields in the return value, though they may have been set -  // in the Cloud Console. -  rpc GetBudget(GetBudgetRequest) returns (Budget) { -    option (google.api.http) = { -      get: "/v1beta1/{name=billingAccounts/*/budgets/*}" -    }; -  } - -  // Returns a list of budgets for a billing account. -  // -  // WARNING: There are some fields exposed on the Google Cloud Console that -  // aren't available on this API. When reading from the API, you will not -  // see these fields in the return value, though they may have been set -  // in the Cloud Console. -  rpc ListBudgets(ListBudgetsRequest) returns (ListBudgetsResponse) { -    option (google.api.http) = { -      get: "/v1beta1/{parent=billingAccounts/*}/budgets" -    }; -  } - -  // Deletes a budget. Returns successfully if already deleted. -  rpc DeleteBudget(DeleteBudgetRequest) returns (google.protobuf.Empty) { -    option (google.api.http) = { -      delete: "/v1beta1/{name=billingAccounts/*/budgets/*}" -    }; -  } -} - -// Request for CreateBudget -message CreateBudgetRequest { -  // Required. The name of the billing account to create the budget in. Values -  // are of the form `billingAccounts/{billingAccountId}`. -  string parent = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      child_type: "billingbudgets.googleapis.com/Budget" -    } -  ]; - -  // Required. Budget to create. -  Budget budget = 2 [(google.api.field_behavior) = REQUIRED]; -} - -// Request for UpdateBudget -message UpdateBudgetRequest { -  // Required. The updated budget object. -  // The budget to update is specified by the budget name in the budget. -  Budget budget = 1 [(google.api.field_behavior) = REQUIRED]; - -  // Optional. Indicates which fields in the provided budget to update. -  // Read-only fields (such as `name`) cannot be changed. If this is not -  // provided, then only fields with non-default values from the request are -  // updated. See -  // https://developers.google.com/protocol-buffers/docs/proto3#default for more -  // details about default values. -  google.protobuf.FieldMask update_mask = 2 [(google.api.field_behavior) = OPTIONAL]; -} - -// Request for GetBudget -message GetBudgetRequest { -  // Required. Name of budget to get. Values are of the form -  // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "billingbudgets.googleapis.com/Budget" -    } -  ]; -} - -// Request for ListBudgets -message ListBudgetsRequest { -  // Required. Name of billing account to list budgets under. Values -  // are of the form `billingAccounts/{billingAccountId}`. -  string parent = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      child_type: "billingbudgets.googleapis.com/Budget" -    } -  ]; - -  // Optional. The maximum number of budgets to return per page. -  // The default and maximum value are 100. -  int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL]; - -  // Optional. The value returned by the last `ListBudgetsResponse` which -  // indicates that this is a continuation of a prior `ListBudgets` call, -  // and that the system should return the next page of data. -  string page_token = 3 [(google.api.field_behavior) = OPTIONAL]; -} - -// Response for ListBudgets -message ListBudgetsResponse { -  // List of the budgets owned by the requested billing account. -  repeated Budget budgets = 1; - -  // If not empty, indicates that there may be more budgets that match the -  // request; this value should be passed in a new `ListBudgetsRequest`. -  string next_page_token = 2; -} - -// Request for DeleteBudget -message DeleteBudgetRequest { -  // Required. Name of the budget to delete. Values are of the form -  // `billingAccounts/{billingAccountId}/budgets/{budgetId}`. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "billingbudgets.googleapis.com/Budget" -    } -  ]; -} diff --git a/third_party/googleapis/google/cloud/billing/v1/BUILD.bazel b/third_party/googleapis/google/cloud/billing/v1/BUILD.bazel deleted file mode 100644 index 027152b..0000000 --- a/third_party/googleapis/google/cloud/billing/v1/BUILD.bazel +++ /dev/null @@ -1,376 +0,0 @@ -# This file was automatically generated by BuildFileGenerator - -# This is an API workspace, having public visibility by default makes perfect sense. -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") - -proto_library( -    name = "billing_proto", -    srcs = [ -        "cloud_billing.proto", -        "cloud_catalog.proto", -    ], -    deps = [ -        "//google/api:annotations_proto", -        "//google/api:client_proto", -        "//google/api:field_behavior_proto", -        "//google/api:resource_proto", -        "//google/iam/v1:iam_policy_proto", -        "//google/iam/v1:policy_proto", -        "//google/type:money_proto", -        "@com_google_protobuf//:field_mask_proto", -        "@com_google_protobuf//:timestamp_proto", -    ], -) - -proto_library_with_info( -    name = "billing_proto_with_info", -    deps = [ -        ":billing_proto", -        "//google/cloud:common_resources_proto", -    ], -) - -############################################################################## -# Java -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "java_gapic_assembly_gradle_pkg", -    "java_gapic_library", -    "java_gapic_test", -    "java_grpc_library", -    "java_proto_library", -) - -java_proto_library( -    name = "billing_java_proto", -    deps = [":billing_proto"], -) - -java_grpc_library( -    name = "billing_java_grpc", -    srcs = [":billing_proto"], -    deps = [":billing_java_proto"], -) - -java_gapic_library( -    name = "billing_java_gapic", -    srcs = [":billing_proto_with_info"], -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    test_deps = [ -        ":billing_java_grpc", -        "//google/iam/v1:iam_java_grpc", -    ], -    transport = "grpc+rest", -    deps = [ -        ":billing_java_proto", -        "//google/iam/v1:iam_java_proto", -    ], -) - -java_gapic_test( -    name = "billing_java_gapic_test_suite", -    test_classes = [ -        "com.google.cloud.billing.v1.CloudBillingClientHttpJsonTest", -        "com.google.cloud.billing.v1.CloudBillingClientTest", -        "com.google.cloud.billing.v1.CloudCatalogClientHttpJsonTest", -        "com.google.cloud.billing.v1.CloudCatalogClientTest", -    ], -    runtime_deps = [":billing_java_gapic_test"], -) - -# Open Source Packages -java_gapic_assembly_gradle_pkg( -    name = "google-cloud-billing-v1-java", -    include_samples = True, -    transport = "grpc+rest", -    deps = [ -        ":billing_java_gapic", -        ":billing_java_grpc", -        ":billing_java_proto", -        ":billing_proto", -    ], -) - -############################################################################## -# Go -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "go_gapic_assembly_pkg", -    "go_gapic_library", -    "go_proto_library", -    "go_test", -) - -go_proto_library( -    name = "billing_go_proto", -    compilers = ["@io_bazel_rules_go//proto:go_grpc"], -    importpath = "google.golang.org/genproto/googleapis/cloud/billing/v1", -    protos = [":billing_proto"], -    deps = [ -        "//google/api:annotations_go_proto", -        "//google/iam/v1:iam_go_proto", -        "//google/type:money_go_proto", -    ], -) - -go_gapic_library( -    name = "billing_go_gapic", -    srcs = [":billing_proto_with_info"], -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    importpath = "cloud.google.com/go/billing/apiv1;billing", -    service_yaml = "cloudbilling.yaml", -    transport = "grpc+rest", -    deps = [ -        ":billing_go_proto", -        "//google/iam/v1:iam_go_proto", -    ], -) - -go_test( -    name = "billing_go_gapic_test", -    srcs = [":billing_go_gapic_srcjar_test"], -    embed = [":billing_go_gapic"], -    importpath = "cloud.google.com/go/billing/apiv1", -) - -# Open Source Packages -go_gapic_assembly_pkg( -    name = "gapi-cloud-billing-v1-go", -    deps = [ -        ":billing_go_gapic", -        ":billing_go_gapic_srcjar-test.srcjar", -        ":billing_go_proto", -    ], -) - -############################################################################## -# Python -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "py_gapic_assembly_pkg", -    "py_gapic_library", -    "py_test", -) - -py_gapic_library( -    name = "billing_py_gapic", -    srcs = [":billing_proto"], -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    transport = "grpc", -    deps = [ -        "//google/iam/v1:iam_policy_py_proto", -    ], -) - -py_test( -    name = "billing_py_gapic_test", -    srcs = [ -        "billing_py_gapic_pytest.py", -        "billing_py_gapic_test.py", -    ], -    legacy_create_init = False, -    deps = [":billing_py_gapic"], -) - -# Open Source Packages -py_gapic_assembly_pkg( -    name = "billing-v1-py", -    deps = [ -        ":billing_py_gapic", -    ], -) - -############################################################################## -# PHP -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "php_gapic_assembly_pkg", -    "php_gapic_library", -    "php_grpc_library", -    "php_proto_library", -) - -php_proto_library( -    name = "billing_php_proto", -    deps = [":billing_proto"], -) - -php_grpc_library( -    name = "billing_php_grpc", -    srcs = [":billing_proto"], -    deps = [":billing_php_proto"], -) - -php_gapic_library( -    name = "billing_php_gapic", -    srcs = [":billing_proto_with_info"], -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    deps = [ -        ":billing_php_grpc", -        ":billing_php_proto", -    ], -) - -# Open Source Packages -php_gapic_assembly_pkg( -    name = "google-cloud-billing-v1-php", -    deps = [ -        ":billing_php_gapic", -        ":billing_php_grpc", -        ":billing_php_proto", -    ], -) - -############################################################################## -# Node.js -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "nodejs_gapic_assembly_pkg", -    "nodejs_gapic_library", -) - -nodejs_gapic_library( -    name = "billing_nodejs_gapic", -    package_name = "@google-cloud/billing", -    src = ":billing_proto_with_info", -    extra_protoc_parameters = ["metadata"], -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    package = "google.cloud.billing.v1", -    service_yaml = "cloudbilling.yaml", -    deps = [], -) - -nodejs_gapic_assembly_pkg( -    name = "billing-v1-nodejs", -    deps = [ -        ":billing_nodejs_gapic", -        ":billing_proto", -    ], -) - -############################################################################## -# Ruby -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "ruby_cloud_gapic_library", -    "ruby_gapic_assembly_pkg", -    "ruby_grpc_library", -    "ruby_proto_library", -) - -ruby_proto_library( -    name = "billing_ruby_proto", -    deps = [":billing_proto"], -) - -ruby_grpc_library( -    name = "billing_ruby_grpc", -    srcs = [":billing_proto"], -    deps = [":billing_ruby_proto"], -) - -ruby_cloud_gapic_library( -    name = "billing_ruby_gapic", -    srcs = [":billing_proto_with_info"], -    extra_protoc_parameters = [ -        "ruby-cloud-gem-name=google-cloud-billing-v1", -        "ruby-cloud-env-prefix=BILLING", -        "ruby-cloud-product-url=https://cloud.google.com/billing", -        "ruby-cloud-api-id=cloudbilling.googleapis.com", -        "ruby-cloud-api-shortname=cloudbilling", -    ], -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    ruby_cloud_description = "Allows developers to manage billing for their Google Cloud Platform projects programmatically.", -    ruby_cloud_title = "Billing V1", -    deps = [ -        ":billing_ruby_grpc", -        ":billing_ruby_proto", -    ], -) - -# Open Source Packages -ruby_gapic_assembly_pkg( -    name = "google-cloud-billing-v1-ruby", -    deps = [ -        ":billing_ruby_gapic", -        ":billing_ruby_grpc", -        ":billing_ruby_proto", -    ], -) - -############################################################################## -# C# -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "csharp_gapic_assembly_pkg", -    "csharp_gapic_library", -    "csharp_grpc_library", -    "csharp_proto_library", -) - -csharp_proto_library( -    name = "billing_csharp_proto", -    deps = [":billing_proto"], -) - -csharp_grpc_library( -    name = "billing_csharp_grpc", -    srcs = [":billing_proto"], -    deps = [":billing_csharp_proto"], -) - -csharp_gapic_library( -    name = "billing_csharp_gapic", -    srcs = [":billing_proto_with_info"], -    common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json", -    grpc_service_config = "cloud_billing_grpc_service_config.json", -    service_yaml = "cloudbilling.yaml", -    deps = [ -        ":billing_csharp_grpc", -        ":billing_csharp_proto", -    ], -) - -# Open Source Packages -csharp_gapic_assembly_pkg( -    name = "google-cloud-billing-v1-csharp", -    deps = [ -        ":billing_csharp_gapic", -        ":billing_csharp_grpc", -        ":billing_csharp_proto", -    ], -) - -############################################################################## -# C++ -############################################################################## -load( -    "@com_google_googleapis_imports//:imports.bzl", -    "cc_grpc_library", -    "cc_proto_library", -) - -cc_proto_library( -    name = "billing_cc_proto", -    deps = [":billing_proto"], -) - -cc_grpc_library( -    name = "billing_cc_grpc", -    srcs = [":billing_proto"], -    grpc_only = True, -    deps = [":billing_cc_proto"], -) diff --git a/third_party/googleapis/google/cloud/billing/v1/cloud_billing.proto b/third_party/googleapis/google/cloud/billing/v1/cloud_billing.proto deleted file mode 100644 index f0b19d1..0000000 --- a/third_party/googleapis/google/cloud/billing/v1/cloud_billing.proto +++ /dev/null @@ -1,360 +0,0 @@ -// Copyright 2019 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 -// -//     http://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. -// - -syntax = "proto3"; - -package google.cloud.billing.v1; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/iam/v1/iam_policy.proto"; -import "google/iam/v1/policy.proto"; -import "google/protobuf/field_mask.proto"; - -option go_package = "google.golang.org/genproto/googleapis/cloud/billing/v1;billing"; -option java_multiple_files = true; -option java_outer_classname = "CloudBillingProto"; -option java_package = "com.google.cloud.billing.v1"; - -// Retrieves GCP Console billing accounts and associates them with projects. -service CloudBilling { -  option (google.api.default_host) = "cloudbilling.googleapis.com"; -  option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - -  // Gets information about a billing account. The current authenticated user -  // must be a [viewer of the billing -  // account](https://cloud.google.com/billing/docs/how-to/billing-access). -  rpc GetBillingAccount(GetBillingAccountRequest) returns (BillingAccount) { -    option (google.api.http) = { -      get: "/v1/{name=billingAccounts/*}" -    }; -    option (google.api.method_signature) = "name"; -  } - -  // Lists the billing accounts that the current authenticated user has -  // permission to -  // [view](https://cloud.google.com/billing/docs/how-to/billing-access). -  rpc ListBillingAccounts(ListBillingAccountsRequest) returns (ListBillingAccountsResponse) { -    option (google.api.http) = { -      get: "/v1/billingAccounts" -    }; -    option (google.api.method_signature) = ""; -  } - -  // Updates a billing account's fields. -  // Currently the only field that can be edited is `display_name`. -  // The current authenticated user must have the `billing.accounts.update` -  // IAM permission, which is typically given to the -  // [administrator](https://cloud.google.com/billing/docs/how-to/billing-access) -  // of the billing account. -  rpc UpdateBillingAccount(UpdateBillingAccountRequest) returns (BillingAccount) { -    option (google.api.http) = { -      patch: "/v1/{name=billingAccounts/*}" -      body: "account" -    }; -    option (google.api.method_signature) = "name,account"; -  } - -  // Creates a billing account. -  // This method can only be used to create -  // [billing subaccounts](https://cloud.google.com/billing/docs/concepts) -  // by GCP resellers. -  // When creating a subaccount, the current authenticated user must have the -  // `billing.accounts.update` IAM permission on the master account, which is -  // typically given to billing account -  // [administrators](https://cloud.google.com/billing/docs/how-to/billing-access). -  // This method will return an error if the master account has not been -  // provisioned as a reseller account. -  rpc CreateBillingAccount(CreateBillingAccountRequest) returns (BillingAccount) { -    option (google.api.http) = { -      post: "/v1/billingAccounts" -      body: "billing_account" -    }; -    option (google.api.method_signature) = "billing_account"; -  } - -  // Lists the projects associated with a billing account. The current -  // authenticated user must have the `billing.resourceAssociations.list` IAM -  // permission, which is often given to billing account -  // [viewers](https://cloud.google.com/billing/docs/how-to/billing-access). -  rpc ListProjectBillingInfo(ListProjectBillingInfoRequest) returns (ListProjectBillingInfoResponse) { -    option (google.api.http) = { -      get: "/v1/{name=billingAccounts/*}/projects" -    }; -    option (google.api.method_signature) = "name"; -  } - -  // Gets the billing information for a project. The current authenticated user -  // must have [permission to view the -  // project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo -  // ). -  rpc GetProjectBillingInfo(GetProjectBillingInfoRequest) returns (ProjectBillingInfo) { -    option (google.api.http) = { -      get: "/v1/{name=projects/*}/billingInfo" -    }; -    option (google.api.method_signature) = "name"; -  } - -  // Sets or updates the billing account associated with a project. You specify -  // the new billing account by setting the `billing_account_name` in the -  // `ProjectBillingInfo` resource to the resource name of a billing account. -  // Associating a project with an open billing account enables billing on the -  // project and allows charges for resource usage. If the project already had a -  // billing account, this method changes the billing account used for resource -  // usage charges. -  // -  // *Note:* Incurred charges that have not yet been reported in the transaction -  // history of the GCP Console might be billed to the new billing -  // account, even if the charge occurred before the new billing account was -  // assigned to the project. -  // -  // The current authenticated user must have ownership privileges for both the -  // [project](https://cloud.google.com/docs/permissions-overview#h.bgs0oxofvnoo -  // ) and the [billing -  // account](https://cloud.google.com/billing/docs/how-to/billing-access). -  // -  // You can disable billing on the project by setting the -  // `billing_account_name` field to empty. This action disassociates the -  // current billing account from the project. Any billable activity of your -  // in-use services will stop, and your application could stop functioning as -  // expected. Any unbilled charges to date will be billed to the previously -  // associated account. The current authenticated user must be either an owner -  // of the project or an owner of the billing account for the project. -  // -  // Note that associating a project with a *closed* billing account will have -  // much the same effect as disabling billing on the project: any paid -  // resources used by the project will be shut down. Thus, unless you wish to -  // disable billing, you should always call this method with the name of an -  // *open* billing account. -  rpc UpdateProjectBillingInfo(UpdateProjectBillingInfoRequest) returns (ProjectBillingInfo) { -    option (google.api.http) = { -      put: "/v1/{name=projects/*}/billingInfo" -      body: "project_billing_info" -    }; -    option (google.api.method_signature) = "name,project_billing_info"; -  } - -  // Gets the access control policy for a billing account. -  // The caller must have the `billing.accounts.getIamPolicy` permission on the -  // account, which is often given to billing account -  // [viewers](https://cloud.google.com/billing/docs/how-to/billing-access). -  rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest) returns (google.iam.v1.Policy) { -    option (google.api.http) = { -      get: "/v1/{resource=billingAccounts/*}:getIamPolicy" -    }; -    option (google.api.method_signature) = "resource"; -  } - -  // Sets the access control policy for a billing account. Replaces any existing -  // policy. -  // The caller must have the `billing.accounts.setIamPolicy` permission on the -  // account, which is often given to billing account -  // [administrators](https://cloud.google.com/billing/docs/how-to/billing-access). -  rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest) returns (google.iam.v1.Policy) { -    option (google.api.http) = { -      post: "/v1/{resource=billingAccounts/*}:setIamPolicy" -      body: "*" -    }; -    option (google.api.method_signature) = "resource,policy"; -  } - -  // Tests the access control policy for a billing account. This method takes -  // the resource and a set of permissions as input and returns the subset of -  // the input permissions that the caller is allowed for that resource. -  rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest) returns (google.iam.v1.TestIamPermissionsResponse) { -    option (google.api.http) = { -      post: "/v1/{resource=billingAccounts/*}:testIamPermissions" -      body: "*" -    }; -    option (google.api.method_signature) = "resource,permissions"; -  } -} - -// A billing account in [GCP Console](https://console.cloud.google.com/). -// You can assign a billing account to one or more projects. -message BillingAccount { -  // The resource name of the billing account. The resource name has the form -  // `billingAccounts/{billing_account_id}`. For example, -  // `billingAccounts/012345-567890-ABCDEF` would be the resource name for -  // billing account `012345-567890-ABCDEF`. -  string name = 1 [(google.api.resource_reference) = { -                     type: "cloudbilling.googleapis.com/BillingAccount" -                   }]; - -  // Output only. True if the billing account is open, and will therefore be charged for any -  // usage on associated projects. False if the billing account is closed, and -  // therefore projects associated with it will be unable to use paid services. -  bool open = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; - -  // The display name given to the billing account, such as `My Billing -  // Account`. This name is displayed in the GCP Console. -  string display_name = 3; - -  // If this account is a -  // [subaccount](https://cloud.google.com/billing/docs/concepts), then this -  // will be the resource name of the master billing account that it is being -  // resold through. -  // Otherwise this will be empty. -  string master_billing_account = 4; -} - -// Encapsulation of billing information for a GCP Console project. A project -// has at most one associated billing account at a time (but a billing account -// can be assigned to multiple projects). -message ProjectBillingInfo { -  // The resource name for the `ProjectBillingInfo`; has the form -  // `projects/{project_id}/billingInfo`. For example, the resource name for the -  // billing information for project `tokyo-rain-123` would be -  // `projects/tokyo-rain-123/billingInfo`. This field is read-only. -  string name = 1; - -  // The ID of the project that this `ProjectBillingInfo` represents, such as -  // `tokyo-rain-123`. This is a convenience field so that you don't need to -  // parse the `name` field to obtain a project ID. This field is read-only. -  string project_id = 2; - -  // The resource name of the billing account associated with the project, if -  // any. For example, `billingAccounts/012345-567890-ABCDEF`. -  string billing_account_name = 3; - -  // True if the project is associated with an open billing account, to which -  // usage on the project is charged. False if the project is associated with a -  // closed billing account, or no billing account at all, and therefore cannot -  // use paid services. This field is read-only. -  bool billing_enabled = 4; -} - -// Request message for `GetBillingAccount`. -message GetBillingAccountRequest { -  // Required. The resource name of the billing account to retrieve. For example, -  // `billingAccounts/012345-567890-ABCDEF`. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "cloudbilling.googleapis.com/BillingAccount" -    } -  ]; -} - -// Request message for `ListBillingAccounts`. -message ListBillingAccountsRequest { -  // Requested page size. The maximum page size is 100; this is also the -  // default. -  int32 page_size = 1; - -  // A token identifying a page of results to return. This should be a -  // `next_page_token` value returned from a previous `ListBillingAccounts` -  // call. If unspecified, the first page of results is returned. -  string page_token = 2; - -  // Options for how to filter the returned billing accounts. -  // Currently this only supports filtering for -  // [subaccounts](https://cloud.google.com/billing/docs/concepts) under a -  // single provided reseller billing account. -  // (e.g. "master_billing_account=billingAccounts/012345-678901-ABCDEF"). -  // Boolean algebra and other fields are not currently supported. -  string filter = 3; -} - -// Response message for `ListBillingAccounts`. -message ListBillingAccountsResponse { -  // A list of billing accounts. -  repeated BillingAccount billing_accounts = 1; - -  // A token to retrieve the next page of results. To retrieve the next page, -  // call `ListBillingAccounts` again with the `page_token` field set to this -  // value. This field is empty if there are no more results to retrieve. -  string next_page_token = 2; -} - -// Request message for `CreateBillingAccount`. -message CreateBillingAccountRequest { -  // Required. The billing account resource to create. -  // Currently CreateBillingAccount only supports subaccount creation, so -  // any created billing accounts must be under a provided master billing -  // account. -  BillingAccount billing_account = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for `UpdateBillingAccount`. -message UpdateBillingAccountRequest { -  // Required. The name of the billing account resource to be updated. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "cloudbilling.googleapis.com/BillingAccount" -    } -  ]; - -  // Required. The billing account resource to replace the resource on the server. -  BillingAccount account = 2 [(google.api.field_behavior) = REQUIRED]; - -  // The update mask applied to the resource. -  // Only "display_name" is currently supported. -  google.protobuf.FieldMask update_mask = 3; -} - -// Request message for `ListProjectBillingInfo`. -message ListProjectBillingInfoRequest { -  // Required. The resource name of the billing account associated with the projects that -  // you want to list. For example, `billingAccounts/012345-567890-ABCDEF`. -  string name = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "cloudbilling.googleapis.com/BillingAccount" -    } -  ]; - -  // Requested page size. The maximum page size is 100; this is also the -  // default. -  int32 page_size = 2; - -  // A token identifying a page of results to be returned. This should be a -  // `next_page_token` value returned from a previous `ListProjectBillingInfo` -  // call. If unspecified, the first page of results is returned. -  string page_token = 3; -} - -// Request message for `ListProjectBillingInfoResponse`. -message ListProjectBillingInfoResponse { -  // A list of `ProjectBillingInfo` resources representing the projects -  // associated with the billing account. -  repeated ProjectBillingInfo project_billing_info = 1; - -  // A token to retrieve the next page of results. To retrieve the next page, -  // call `ListProjectBillingInfo` again with the `page_token` field set to this -  // value. This field is empty if there are no more results to retrieve. -  string next_page_token = 2; -} - -// Request message for `GetProjectBillingInfo`. -message GetProjectBillingInfoRequest { -  // Required. The resource name of the project for which billing information is -  // retrieved. For example, `projects/tokyo-rain-123`. -  string name = 1 [(google.api.field_behavior) = REQUIRED]; -} - -// Request message for `UpdateProjectBillingInfo`. -message UpdateProjectBillingInfoRequest { -  // Required. The resource name of the project associated with the billing information -  // that you want to update. For example, `projects/tokyo-rain-123`. -  string name = 1 [(google.api.field_behavior) = REQUIRED]; - -  // The new billing information for the project. Read-only fields are ignored; -  // thus, you can leave empty all fields except `billing_account_name`. -  ProjectBillingInfo project_billing_info = 2; -} diff --git a/third_party/googleapis/google/cloud/billing/v1/cloud_billing_grpc_service_config.json b/third_party/googleapis/google/cloud/billing/v1/cloud_billing_grpc_service_config.json deleted file mode 100644 index b39f330..0000000 --- a/third_party/googleapis/google/cloud/billing/v1/cloud_billing_grpc_service_config.json +++ /dev/null @@ -1,77 +0,0 @@ -{ -  "methodConfig": [ -    { -      "name": [ -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "CreateBillingAccount" -        } -      ], -      "timeout": "60s" -    }, -    { -      "name": [ -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "GetBillingAccount" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "ListBillingAccounts" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "UpdateBillingAccount" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "ListProjectBillingInfo" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "GetProjectBillingInfo" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "UpdateProjectBillingInfo" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "GetIamPolicy" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "SetIamPolicy" -        }, -        { -          "service": "google.cloud.billing.v1.CloudBilling", -          "method": "TestIamPermissions" -        } -      ], -      "timeout": "60s", -      "retryPolicy": { -        "maxAttempts": 5, -        "initialBackoff": "0.100s", -        "maxBackoff": "60s", -        "backoffMultiplier": 1.3, -        "retryableStatusCodes": [ -          "DEADLINE_EXCEEDED", -          "UNAVAILABLE" -        ] -      } -    }, -    { -      "name": [ -        { -          "service": "google.cloud.billing.v1.CloudCatalog", -          "method": "ListServices" -        }, -        { -          "service": "google.cloud.billing.v1.CloudCatalog", -          "method": "ListSkus" -        } -      ], -      "timeout": "60s" -    } -  ] -} diff --git a/third_party/googleapis/google/cloud/billing/v1/cloud_catalog.proto b/third_party/googleapis/google/cloud/billing/v1/cloud_catalog.proto deleted file mode 100644 index 7bc2f14..0000000 --- a/third_party/googleapis/google/cloud/billing/v1/cloud_catalog.proto +++ /dev/null @@ -1,331 +0,0 @@ -// Copyright 2019 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 -// -//     http://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. -// - -syntax = "proto3"; - -package google.cloud.billing.v1; - -import "google/api/annotations.proto"; -import "google/api/client.proto"; -import "google/api/field_behavior.proto"; -import "google/api/resource.proto"; -import "google/protobuf/timestamp.proto"; -import "google/type/money.proto"; - -option csharp_namespace = "Google.Cloud.Billing.V1"; -option go_package = "google.golang.org/genproto/googleapis/cloud/billing/v1;billing"; -option java_multiple_files = true; -option java_outer_classname = "CloudCatalogProto"; -option java_package = "com.google.cloud.billing.v1"; -option objc_class_prefix = "CLDCTLG"; - -// A catalog of Google Cloud Platform services and SKUs. -// Provides pricing information and metadata on Google Cloud Platform services -// and SKUs. -service CloudCatalog { -  option (google.api.default_host) = "cloudbilling.googleapis.com"; -  option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform"; - -  // Lists all public cloud services. -  rpc ListServices(ListServicesRequest) returns (ListServicesResponse) { -    option (google.api.http) = { -      get: "/v1/services" -    }; -    option (google.api.method_signature) = ""; -  } - -  // Lists all publicly available SKUs for a given cloud service. -  rpc ListSkus(ListSkusRequest) returns (ListSkusResponse) { -    option (google.api.http) = { -      get: "/v1/{parent=services/*}/skus" -    }; -    option (google.api.method_signature) = "parent"; -  } -} - -// Encapsulates a single service in Google Cloud Platform. -message Service { -  option (google.api.resource) = { -    type: "cloudbilling.googleapis.com/Service" -    pattern: "services/{service}" -  }; - -  // The resource name for the service. -  // Example: "services/DA34-426B-A397" -  string name = 1; - -  // The identifier for the service. -  // Example: "DA34-426B-A397" -  string service_id = 2; - -  // A human readable display name for this service. -  string display_name = 3; - -  // The business under which the service is offered. -  // Ex. "businessEntities/GCP", "businessEntities/Maps" -  string business_entity_name = 4; -} - -// Encapsulates a single SKU in Google Cloud Platform -message Sku { -  option (google.api.resource) = { -    type: "cloudbilling.googleapis.com/Sku" -    pattern: "services/{service}/skus/{sku}" -  }; - -  // The resource name for the SKU. -  // Example: "services/DA34-426B-A397/skus/AA95-CD31-42FE" -  string name = 1; - -  // The identifier for the SKU. -  // Example: "AA95-CD31-42FE" -  string sku_id = 2; - -  // A human readable description of the SKU, has a maximum length of 256 -  // characters. -  string description = 3; - -  // The category hierarchy of this SKU, purely for organizational purpose. -  Category category = 4; - -  // List of service regions this SKU is offered at. -  // Example: "asia-east1" -  // Service regions can be found at https://cloud.google.com/about/locations/ -  repeated string service_regions = 5; - -  // A timeline of pricing info for this SKU in chronological order. -  repeated PricingInfo pricing_info = 6; - -  // Identifies the service provider. -  // This is 'Google' for first party services in Google Cloud Platform. -  string service_provider_name = 7; -} - -// Represents the category hierarchy of a SKU. -message Category { -  // The display name of the service this SKU belongs to. -  string service_display_name = 1; - -  // The type of product the SKU refers to. -  // Example: "Compute", "Storage", "Network", "ApplicationServices" etc. -  string resource_family = 2; - -  // A group classification for related SKUs. -  // Example: "RAM", "GPU", "Prediction", "Ops", "GoogleEgress" etc. -  string resource_group = 3; - -  // Represents how the SKU is consumed. -  // Example: "OnDemand", "Preemptible", "Commit1Mo", "Commit1Yr" etc. -  string usage_type = 4; -} - -// Represents the pricing information for a SKU at a single point of time. -message PricingInfo { -  // The timestamp from which this pricing was effective within the requested -  // time range. This is guaranteed to be greater than or equal to the -  // start_time field in the request and less than the end_time field in the -  // request. If a time range was not specified in the request this field will -  // be equivalent to a time within the last 12 hours, indicating the latest -  // pricing info. -  google.protobuf.Timestamp effective_time = 1; - -  // An optional human readable summary of the pricing information, has a -  // maximum length of 256 characters. -  string summary = 2; - -  // Expresses the pricing formula. See `PricingExpression` for an example. -  PricingExpression pricing_expression = 3; - -  // Aggregation Info. This can be left unspecified if the pricing expression -  // doesn't require aggregation. -  AggregationInfo aggregation_info = 4; - -  // Conversion rate used for currency conversion, from USD to the currency -  // specified in the request. This includes any surcharge collected for billing -  // in non USD currency. If a currency is not specified in the request this -  // defaults to 1.0. -  // Example: USD * currency_conversion_rate = JPY -  double currency_conversion_rate = 5; -} - -// Expresses a mathematical pricing formula. For Example:- -// -// `usage_unit: GBy` -// `tiered_rates:` -//    `[start_usage_amount: 20, unit_price: $10]` -//    `[start_usage_amount: 100, unit_price: $5]` -// -// The above expresses a pricing formula where the first 20GB is free, the -// next 80GB is priced at $10 per GB followed by $5 per GB for additional -// usage. -message PricingExpression { -  // The price rate indicating starting usage and its corresponding price. -  message TierRate { -    // Usage is priced at this rate only after this amount. -    // Example: start_usage_amount of 10 indicates that the usage will be priced -    // at the unit_price after the first 10 usage_units. -    double start_usage_amount = 1; - -    // The price per unit of usage. -    // Example: unit_price of amount $10 indicates that each unit will cost $10. -    google.type.Money unit_price = 2; -  } - -  // The short hand for unit of usage this pricing is specified in. -  // Example: usage_unit of "GiBy" means that usage is specified in "Gibi Byte". -  string usage_unit = 1; - -  // The unit of usage in human readable form. -  // Example: "gibi byte". -  string usage_unit_description = 4; - -  // The base unit for the SKU which is the unit used in usage exports. -  // Example: "By" -  string base_unit = 5; - -  // The base unit in human readable form. -  // Example: "byte". -  string base_unit_description = 6; - -  // Conversion factor for converting from price per usage_unit to price per -  // base_unit, and start_usage_amount to start_usage_amount in base_unit. -  // unit_price / base_unit_conversion_factor = price per base_unit. -  // start_usage_amount * base_unit_conversion_factor = start_usage_amount in -  // base_unit. -  double base_unit_conversion_factor = 7; - -  // The recommended quantity of units for displaying pricing info. When -  // displaying pricing info it is recommended to display: -  // (unit_price * display_quantity) per display_quantity usage_unit. -  // This field does not affect the pricing formula and is for display purposes -  // only. -  // Example: If the unit_price is "0.0001 USD", the usage_unit is "GB" and -  // the display_quantity is "1000" then the recommended way of displaying the -  // pricing info is "0.10 USD per 1000 GB" -  double display_quantity = 2; - -  // The list of tiered rates for this pricing. The total cost is computed by -  // applying each of the tiered rates on usage. This repeated list is sorted -  // by ascending order of start_usage_amount. -  repeated TierRate tiered_rates = 3; -} - -// Represents the aggregation level and interval for pricing of a single SKU. -message AggregationInfo { -  // The level at which usage is aggregated to compute cost. -  // Example: "ACCOUNT" aggregation level indicates that usage for tiered -  // pricing is aggregated across all projects in a single account. -  enum AggregationLevel { -    AGGREGATION_LEVEL_UNSPECIFIED = 0; - -    ACCOUNT = 1; - -    PROJECT = 2; -  } - -  // The interval at which usage is aggregated to compute cost. -  // Example: "MONTHLY" aggregation interval indicates that usage for tiered -  // pricing is aggregated every month. -  enum AggregationInterval { -    AGGREGATION_INTERVAL_UNSPECIFIED = 0; - -    DAILY = 1; - -    MONTHLY = 2; -  } - -  AggregationLevel aggregation_level = 1; - -  AggregationInterval aggregation_interval = 2; - -  // The number of intervals to aggregate over. -  // Example: If aggregation_level is "DAILY" and aggregation_count is 14, -  // aggregation will be over 14 days. -  int32 aggregation_count = 3; -} - -// Request message for `ListServices`. -message ListServicesRequest { -  // Requested page size. Defaults to 5000. -  int32 page_size = 1; - -  // A token identifying a page of results to return. This should be a -  // `next_page_token` value returned from a previous `ListServices` -  // call. If unspecified, the first page of results is returned. -  string page_token = 2; -} - -// Response message for `ListServices`. -message ListServicesResponse { -  // A list of services. -  repeated Service services = 1; - -  // A token to retrieve the next page of results. To retrieve the next page, -  // call `ListServices` again with the `page_token` field set to this -  // value. This field is empty if there are no more results to retrieve. -  string next_page_token = 2; -} - -// Request message for `ListSkus`. -message ListSkusRequest { -  // Required. The name of the service. -  // Example: "services/DA34-426B-A397" -  string parent = 1 [ -    (google.api.field_behavior) = REQUIRED, -    (google.api.resource_reference) = { -      type: "cloudbilling.googleapis.com/Service" -    } -  ]; - -  // Optional inclusive start time of the time range for which the pricing -  // versions will be returned. Timestamps in the future are not allowed. -  // The time range has to be within a single calendar month in -  // America/Los_Angeles timezone. Time range as a whole is optional. If not -  // specified, the latest pricing will be returned (up to 12 hours old at -  // most). -  google.protobuf.Timestamp start_time = 2; - -  // Optional exclusive end time of the time range for which the pricing -  // versions will be returned. Timestamps in the future are not allowed. -  // The time range has to be within a single calendar month in -  // America/Los_Angeles timezone. Time range as a whole is optional. If not -  // specified, the latest pricing will be returned (up to 12 hours old at -  // most). -  google.protobuf.Timestamp end_time = 3; - -  // The ISO 4217 currency code for the pricing info in the response proto. -  // Will use the conversion rate as of start_time. -  // Optional. If not specified USD will be used. -  string currency_code = 4; - -  // Requested page size. Defaults to 5000. -  int32 page_size = 5; - -  // A token identifying a page of results to return. This should be a -  // `next_page_token` value returned from a previous `ListSkus` -  // call. If unspecified, the first page of results is returned. -  string page_token = 6; -} - -// Response message for `ListSkus`. -message ListSkusResponse { -  // The list of public SKUs of the given service. -  repeated Sku skus = 1; - -  // A token to retrieve the next page of results. To retrieve the next page, -  // call `ListSkus` again with the `page_token` field set to this -  // value. This field is empty if there are no more results to retrieve. -  string next_page_token = 2; -} diff --git a/third_party/googleapis/google/cloud/billing/v1/cloudbilling.yaml b/third_party/googleapis/google/cloud/billing/v1/cloudbilling.yaml deleted file mode 100644 index fb0e32e..0000000 --- a/third_party/googleapis/google/cloud/billing/v1/cloudbilling.yaml +++ /dev/null @@ -1,28 +0,0 @@ -type: google.api.Service -config_version: 1 -name: cloudbilling.googleapis.com -title: Cloud Billing API - -apis: -- name: google.cloud.billing.v1.CloudBilling -- name: google.cloud.billing.v1.CloudCatalog - -documentation: -  summary: |- -    Allows developers to manage billing for their Google Cloud Platform -    projects     programmatically. - -authentication: -  rules: -  - selector: 'google.cloud.billing.v1.CloudBilling.*' -    oauth: -      canonical_scopes: |- -        https://www.googleapis.com/auth/cloud-platform -  - selector: google.cloud.billing.v1.CloudCatalog.ListServices -    oauth: -      canonical_scopes: |- -        https://www.googleapis.com/auth/cloud-platform -  - selector: google.cloud.billing.v1.CloudCatalog.ListSkus -    oauth: -      canonical_scopes: |- -        https://www.googleapis.com/auth/cloud-platform  | 
