google-cloud-billing-budgets-v1beta1 0.12.1 → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +31 -21
- data/lib/google/cloud/billing/budgets/v1beta1/budget_service/client.rb +35 -6
- data/lib/google/cloud/billing/budgets/v1beta1/version.rb +1 -1
- data/proto_docs/google/api/client.rb +39 -0
- data/proto_docs/google/cloud/billing/budgets/v1beta1/budget_model.rb +8 -0
- data/proto_docs/google/protobuf/struct.rb +12 -0
- metadata +6 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 81576e1926ad91d7b0753ed42322a8b54f9738a045d572f980946cbb5c9692cf
|
4
|
+
data.tar.gz: 6f020d5b2cd8a4b0166c97a0aff5e2f934d883fd1bd35b045ddeda02a7f3cb28
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 57e61c1a6c89cb0a3707faae35328ce0e2817d7a898a91e6661f1f10d091d050d50993fa6f1a8ef4dec5141860ce6e03fb5876b9d6fb69b18f86316cd22418d1
|
7
|
+
data.tar.gz: cc5982da03ad3055facee11f709b008f5c2a9c24150290fde74f0e244624e94869195c05264dfaaf601f0fe80c6c9fddc619e6ffc50b90befa3704d615287b4a
|
data/README.md
CHANGED
@@ -43,40 +43,50 @@ for class and method documentation.
|
|
43
43
|
See also the [Product Documentation](https://cloud.google.com/billing/docs/how-to/budget-api-overview)
|
44
44
|
for general usage information.
|
45
45
|
|
46
|
-
##
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
46
|
+
## Debug Logging
|
47
|
+
|
48
|
+
This library comes with opt-in Debug Logging that can help you troubleshoot
|
49
|
+
your application's integration with the API. When logging is activated, key
|
50
|
+
events such as requests and responses, along with data payloads and metadata
|
51
|
+
such as headers and client configuration, are logged to the standard error
|
52
|
+
stream.
|
53
|
+
|
54
|
+
**WARNING:** Client Library Debug Logging includes your data payloads in
|
55
|
+
plaintext, which could include sensitive data such as PII for yourself or your
|
56
|
+
customers, private keys, or other security data that could be compromising if
|
57
|
+
leaked. Always practice good data hygiene with your application logs, and follow
|
58
|
+
the principle of least access. Google also recommends that Client Library Debug
|
59
|
+
Logging be enabled only temporarily during active debugging, and not used
|
60
|
+
permanently in production.
|
61
|
+
|
62
|
+
To enable logging, set the environment variable `GOOGLE_SDK_RUBY_LOGGING_GEMS`
|
63
|
+
to the value `all`. Alternatively, you can set the value to a comma-delimited
|
64
|
+
list of client library gem names. This will select the default logging behavior,
|
65
|
+
which writes logs to the standard error stream. On a local workstation, this may
|
66
|
+
result in logs appearing on the console. When running on a Google Cloud hosting
|
67
|
+
service such as [Google Cloud Run](https://cloud.google.com/run), this generally
|
68
|
+
results in logs appearing alongside your application logs in the
|
69
|
+
[Google Cloud Logging](https://cloud.google.com/logging/) service.
|
70
|
+
|
71
|
+
You can customize logging by modifying the `logger` configuration when
|
72
|
+
constructing a client object. For example:
|
55
73
|
|
56
74
|
```ruby
|
75
|
+
require "google/cloud/billing/budgets/v1beta1"
|
57
76
|
require "logger"
|
58
77
|
|
59
|
-
|
60
|
-
|
61
|
-
def logger
|
62
|
-
LOGGER
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
# Define a gRPC module-level logger method before grpc/logconfig.rb loads.
|
67
|
-
module GRPC
|
68
|
-
extend MyLogger
|
78
|
+
client = ::Google::Cloud::Billing::Budgets::V1beta1::BudgetService::Client.new do |config|
|
79
|
+
config.logger = Logger.new "my-app.log"
|
69
80
|
end
|
70
81
|
```
|
71
82
|
|
72
|
-
|
73
83
|
## Google Cloud Samples
|
74
84
|
|
75
85
|
To browse ready to use code samples check [Google Cloud Samples](https://cloud.google.com/docs/samples).
|
76
86
|
|
77
87
|
## Supported Ruby Versions
|
78
88
|
|
79
|
-
This library is supported on Ruby
|
89
|
+
This library is supported on Ruby 3.0+.
|
80
90
|
|
81
91
|
Google provides official support for Ruby versions that are actively supported
|
82
92
|
by Ruby Core—that is, Ruby versions that are either in normal maintenance or
|
@@ -181,8 +181,28 @@ module Google
|
|
181
181
|
universe_domain: @config.universe_domain,
|
182
182
|
channel_args: @config.channel_args,
|
183
183
|
interceptors: @config.interceptors,
|
184
|
-
channel_pool_config: @config.channel_pool
|
184
|
+
channel_pool_config: @config.channel_pool,
|
185
|
+
logger: @config.logger
|
185
186
|
)
|
187
|
+
|
188
|
+
@budget_service_stub.stub_logger&.info do |entry|
|
189
|
+
entry.set_system_name
|
190
|
+
entry.set_service
|
191
|
+
entry.message = "Created client for #{entry.service}"
|
192
|
+
entry.set_credentials_fields credentials
|
193
|
+
entry.set "customEndpoint", @config.endpoint if @config.endpoint
|
194
|
+
entry.set "defaultTimeout", @config.timeout if @config.timeout
|
195
|
+
entry.set "quotaProject", @quota_project_id if @quota_project_id
|
196
|
+
end
|
197
|
+
end
|
198
|
+
|
199
|
+
##
|
200
|
+
# The logger used for request/response debug logging.
|
201
|
+
#
|
202
|
+
# @return [Logger]
|
203
|
+
#
|
204
|
+
def logger
|
205
|
+
@budget_service_stub.logger
|
186
206
|
end
|
187
207
|
|
188
208
|
# Service calls
|
@@ -272,7 +292,6 @@ module Google
|
|
272
292
|
|
273
293
|
@budget_service_stub.call_rpc :create_budget, request, options: options do |response, operation|
|
274
294
|
yield response, operation if block_given?
|
275
|
-
return response
|
276
295
|
end
|
277
296
|
rescue ::GRPC::BadStatus => e
|
278
297
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -370,7 +389,6 @@ module Google
|
|
370
389
|
|
371
390
|
@budget_service_stub.call_rpc :update_budget, request, options: options do |response, operation|
|
372
391
|
yield response, operation if block_given?
|
373
|
-
return response
|
374
392
|
end
|
375
393
|
rescue ::GRPC::BadStatus => e
|
376
394
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -462,7 +480,6 @@ module Google
|
|
462
480
|
|
463
481
|
@budget_service_stub.call_rpc :get_budget, request, options: options do |response, operation|
|
464
482
|
yield response, operation if block_given?
|
465
|
-
return response
|
466
483
|
end
|
467
484
|
rescue ::GRPC::BadStatus => e
|
468
485
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -573,7 +590,7 @@ module Google
|
|
573
590
|
@budget_service_stub.call_rpc :list_budgets, request, options: options do |response, operation|
|
574
591
|
response = ::Gapic::PagedEnumerable.new @budget_service_stub, :list_budgets, request, response, operation, options
|
575
592
|
yield response, operation if block_given?
|
576
|
-
|
593
|
+
throw :response, response
|
577
594
|
end
|
578
595
|
rescue ::GRPC::BadStatus => e
|
579
596
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -660,7 +677,6 @@ module Google
|
|
660
677
|
|
661
678
|
@budget_service_stub.call_rpc :delete_budget, request, options: options do |response, operation|
|
662
679
|
yield response, operation if block_given?
|
663
|
-
return response
|
664
680
|
end
|
665
681
|
rescue ::GRPC::BadStatus => e
|
666
682
|
raise ::Google::Cloud::Error.from_error(e)
|
@@ -710,6 +726,13 @@ module Google
|
|
710
726
|
# * (`GRPC::Core::Channel`) a gRPC channel with included credentials
|
711
727
|
# * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
|
712
728
|
# * (`nil`) indicating no credentials
|
729
|
+
#
|
730
|
+
# Warning: If you accept a credential configuration (JSON file or Hash) from an
|
731
|
+
# external source for authentication to Google Cloud, you must validate it before
|
732
|
+
# providing it to a Google API client library. Providing an unvalidated credential
|
733
|
+
# configuration to Google APIs can compromise the security of your systems and data.
|
734
|
+
# For more information, refer to [Validate credential configurations from external
|
735
|
+
# sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
|
713
736
|
# @return [::Object]
|
714
737
|
# @!attribute [rw] scope
|
715
738
|
# The OAuth scopes
|
@@ -749,6 +772,11 @@ module Google
|
|
749
772
|
# default endpoint URL. The default value of nil uses the environment
|
750
773
|
# universe (usually the default "googleapis.com" universe).
|
751
774
|
# @return [::String,nil]
|
775
|
+
# @!attribute [rw] logger
|
776
|
+
# A custom logger to use for request/response debug logging, or the value
|
777
|
+
# `:default` (the default) to construct a default logger, or `nil` to
|
778
|
+
# explicitly disable logging.
|
779
|
+
# @return [::Logger,:default,nil]
|
752
780
|
#
|
753
781
|
class Configuration
|
754
782
|
extend ::Gapic::Config
|
@@ -773,6 +801,7 @@ module Google
|
|
773
801
|
config_attr :retry_policy, nil, ::Hash, ::Proc, nil
|
774
802
|
config_attr :quota_project, nil, ::String, nil
|
775
803
|
config_attr :universe_domain, nil, ::String, nil
|
804
|
+
config_attr :logger, :default, ::Logger, nil, :default
|
776
805
|
|
777
806
|
# @private
|
778
807
|
def initialize parent_config = nil
|
@@ -28,6 +28,9 @@ module Google
|
|
28
28
|
# @!attribute [rw] destinations
|
29
29
|
# @return [::Array<::Google::Api::ClientLibraryDestination>]
|
30
30
|
# The destination where API teams want this client library to be published.
|
31
|
+
# @!attribute [rw] selective_gapic_generation
|
32
|
+
# @return [::Google::Api::SelectiveGapicGeneration]
|
33
|
+
# Configuration for which RPCs should be generated in the GAPIC client.
|
31
34
|
class CommonLanguageSettings
|
32
35
|
include ::Google::Protobuf::MessageExts
|
33
36
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -212,6 +215,12 @@ module Google
|
|
212
215
|
# enabled. By default, asynchronous REST clients will not be generated.
|
213
216
|
# This feature will be enabled by default 1 month after launching the
|
214
217
|
# feature in preview packages.
|
218
|
+
# @!attribute [rw] protobuf_pythonic_types_enabled
|
219
|
+
# @return [::Boolean]
|
220
|
+
# Enables generation of protobuf code using new types that are more
|
221
|
+
# Pythonic which are included in `protobuf>=5.29.x`. This feature will be
|
222
|
+
# enabled by default 1 month after launching the feature in preview
|
223
|
+
# packages.
|
215
224
|
class ExperimentalFeatures
|
216
225
|
include ::Google::Protobuf::MessageExts
|
217
226
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -297,9 +306,28 @@ module Google
|
|
297
306
|
# @!attribute [rw] common
|
298
307
|
# @return [::Google::Api::CommonLanguageSettings]
|
299
308
|
# Some settings.
|
309
|
+
# @!attribute [rw] renamed_services
|
310
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
311
|
+
# Map of service names to renamed services. Keys are the package relative
|
312
|
+
# service names and values are the name to be used for the service client
|
313
|
+
# and call options.
|
314
|
+
#
|
315
|
+
# publishing:
|
316
|
+
# go_settings:
|
317
|
+
# renamed_services:
|
318
|
+
# Publisher: TopicAdmin
|
300
319
|
class GoSettings
|
301
320
|
include ::Google::Protobuf::MessageExts
|
302
321
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
322
|
+
|
323
|
+
# @!attribute [rw] key
|
324
|
+
# @return [::String]
|
325
|
+
# @!attribute [rw] value
|
326
|
+
# @return [::String]
|
327
|
+
class RenamedServicesEntry
|
328
|
+
include ::Google::Protobuf::MessageExts
|
329
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
330
|
+
end
|
303
331
|
end
|
304
332
|
|
305
333
|
# Describes the generator configuration for a method.
|
@@ -375,6 +403,17 @@ module Google
|
|
375
403
|
end
|
376
404
|
end
|
377
405
|
|
406
|
+
# This message is used to configure the generation of a subset of the RPCs in
|
407
|
+
# a service for client libraries.
|
408
|
+
# @!attribute [rw] methods
|
409
|
+
# @return [::Array<::String>]
|
410
|
+
# An allowlist of the fully qualified names of RPCs that should be included
|
411
|
+
# on public client surfaces.
|
412
|
+
class SelectiveGapicGeneration
|
413
|
+
include ::Google::Protobuf::MessageExts
|
414
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
415
|
+
end
|
416
|
+
|
378
417
|
# The organization for which the client libraries are being published.
|
379
418
|
# Affects the url where generated docs are published, etc.
|
380
419
|
module ClientLibraryOrganization
|
@@ -74,6 +74,8 @@ module Google
|
|
74
74
|
# match the currency of the billing account. If specified when updating a
|
75
75
|
# budget, it must match the currency_code of the existing budget.
|
76
76
|
# The `currency_code` is provided on output.
|
77
|
+
#
|
78
|
+
# Note: The following fields are mutually exclusive: `specified_amount`, `last_period_amount`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
77
79
|
# @!attribute [rw] last_period_amount
|
78
80
|
# @return [::Google::Cloud::Billing::Budgets::V1beta1::LastPeriodAmount]
|
79
81
|
# Use the last period's actual spend as the budget for the present period.
|
@@ -81,6 +83,8 @@ module Google
|
|
81
83
|
# {::Google::Cloud::Billing::Budgets::V1beta1::Filter#calendar_period Filter.calendar_period}.
|
82
84
|
# It cannot be set in combination with
|
83
85
|
# {::Google::Cloud::Billing::Budgets::V1beta1::Filter#custom_period Filter.custom_period}.
|
86
|
+
#
|
87
|
+
# Note: The following fields are mutually exclusive: `last_period_amount`, `specified_amount`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
84
88
|
class BudgetAmount
|
85
89
|
include ::Google::Protobuf::MessageExts
|
86
90
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -272,10 +276,14 @@ module Google
|
|
272
276
|
# April, May, June. After that, it will track usage from July 1 to
|
273
277
|
# September 30 when the current calendar month is July, August, September,
|
274
278
|
# so on.
|
279
|
+
#
|
280
|
+
# Note: The following fields are mutually exclusive: `calendar_period`, `custom_period`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
275
281
|
# @!attribute [rw] custom_period
|
276
282
|
# @return [::Google::Cloud::Billing::Budgets::V1beta1::CustomPeriod]
|
277
283
|
# Optional. Specifies to track usage from any start date (required) to any
|
278
284
|
# end date (optional). This time period is static, it does not recur.
|
285
|
+
#
|
286
|
+
# Note: The following fields are mutually exclusive: `custom_period`, `calendar_period`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
279
287
|
class Filter
|
280
288
|
include ::Google::Protobuf::MessageExts
|
281
289
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -53,21 +53,33 @@ module Google
|
|
53
53
|
# @!attribute [rw] null_value
|
54
54
|
# @return [::Google::Protobuf::NullValue]
|
55
55
|
# Represents a null value.
|
56
|
+
#
|
57
|
+
# Note: The following fields are mutually exclusive: `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
56
58
|
# @!attribute [rw] number_value
|
57
59
|
# @return [::Float]
|
58
60
|
# Represents a double value.
|
61
|
+
#
|
62
|
+
# Note: The following fields are mutually exclusive: `number_value`, `null_value`, `string_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
59
63
|
# @!attribute [rw] string_value
|
60
64
|
# @return [::String]
|
61
65
|
# Represents a string value.
|
66
|
+
#
|
67
|
+
# Note: The following fields are mutually exclusive: `string_value`, `null_value`, `number_value`, `bool_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
62
68
|
# @!attribute [rw] bool_value
|
63
69
|
# @return [::Boolean]
|
64
70
|
# Represents a boolean value.
|
71
|
+
#
|
72
|
+
# Note: The following fields are mutually exclusive: `bool_value`, `null_value`, `number_value`, `string_value`, `struct_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
65
73
|
# @!attribute [rw] struct_value
|
66
74
|
# @return [::Google::Protobuf::Struct]
|
67
75
|
# Represents a structured value.
|
76
|
+
#
|
77
|
+
# Note: The following fields are mutually exclusive: `struct_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `list_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
68
78
|
# @!attribute [rw] list_value
|
69
79
|
# @return [::Google::Protobuf::ListValue]
|
70
80
|
# Represents a repeated `Value`.
|
81
|
+
#
|
82
|
+
# Note: The following fields are mutually exclusive: `list_value`, `null_value`, `number_value`, `string_value`, `bool_value`, `struct_value`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
71
83
|
class Value
|
72
84
|
include ::Google::Protobuf::MessageExts
|
73
85
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google-cloud-billing-budgets-v1beta1
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Google LLC
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-01-29 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: gapic-common
|
@@ -16,7 +15,7 @@ dependencies:
|
|
16
15
|
requirements:
|
17
16
|
- - ">="
|
18
17
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0.
|
18
|
+
version: 0.25.0
|
20
19
|
- - "<"
|
21
20
|
- !ruby/object:Gem::Version
|
22
21
|
version: 2.a
|
@@ -26,7 +25,7 @@ dependencies:
|
|
26
25
|
requirements:
|
27
26
|
- - ">="
|
28
27
|
- !ruby/object:Gem::Version
|
29
|
-
version: 0.
|
28
|
+
version: 0.25.0
|
30
29
|
- - "<"
|
31
30
|
- !ruby/object:Gem::Version
|
32
31
|
version: 2.a
|
@@ -84,7 +83,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
|
|
84
83
|
licenses:
|
85
84
|
- Apache-2.0
|
86
85
|
metadata: {}
|
87
|
-
post_install_message:
|
88
86
|
rdoc_options: []
|
89
87
|
require_paths:
|
90
88
|
- lib
|
@@ -92,15 +90,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
92
90
|
requirements:
|
93
91
|
- - ">="
|
94
92
|
- !ruby/object:Gem::Version
|
95
|
-
version: '
|
93
|
+
version: '3.0'
|
96
94
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
97
95
|
requirements:
|
98
96
|
- - ">="
|
99
97
|
- !ruby/object:Gem::Version
|
100
98
|
version: '0'
|
101
99
|
requirements: []
|
102
|
-
rubygems_version: 3.
|
103
|
-
signing_key:
|
100
|
+
rubygems_version: 3.6.2
|
104
101
|
specification_version: 4
|
105
102
|
summary: The Cloud Billing Budget API stores Cloud Billing budgets, which define a
|
106
103
|
budget plan and the rules to execute as spend is tracked against that plan.
|