google-cloud-assured_workloads-v1beta1 0.18.1 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 747045ee56936bcb7bf49bd2c01f4014b472ff02d5077f2cd9cadbf3af74ab0f
4
- data.tar.gz: 6e04320d60b0166e95e4eb978129c7b571706f4a81598511f3f6c985aed662e1
3
+ metadata.gz: b4d6aed8e15d06a67dec9ffcbd16ae6452f05806a8fceddac643268c6a222825
4
+ data.tar.gz: 194cd7d180b195ce189f4d0820c82bbf05d87a63cae94247c508b206b2192194
5
5
  SHA512:
6
- metadata.gz: '0795ee267e846e7d85fef747023fbac56fd3cb0a817dc4150a70c847067d541a9e44db9f9ee4ef1f352d2c70c86f6c346b56913e0d86584bac3e39cbad292a0f'
7
- data.tar.gz: d6d13ede022d8b6cd6f7325e75f26de3b916c07fa96a8cca3ec021e93c339c9d48b92b978d68a8cefc54b0e2dd6970051802a71d6c95aa09825c49ffa0685c2c
6
+ metadata.gz: 4e74ce96bba33b455546701bf9b8b1250fda61ce0975bc6a21eb3146ae85a6b90848f08aed821961dac403bd89c8e713d8d1c8f090dfdd582a7ab165cddde60a
7
+ data.tar.gz: 308c2cefe0b8bd34a42a15cfc34634252a7f80d177a5c1c85bab83d04703caab85dc6751f7506472e8f8f00d8125e533f0da69779620b98fc313b1d5fa851594
data/README.md CHANGED
@@ -43,40 +43,50 @@ for class and method documentation.
43
43
  See also the [Product Documentation](https://cloud.google.com/assured-workloads/)
44
44
  for general usage information.
45
45
 
46
- ## Enabling Logging
47
-
48
- To enable logging for this library, set the logger for the underlying [gRPC](https://github.com/grpc/grpc/tree/master/src/ruby) library.
49
- The logger that you set may be a Ruby stdlib [`Logger`](https://ruby-doc.org/current/stdlibs/logger/Logger.html) as shown below,
50
- or a [`Google::Cloud::Logging::Logger`](https://cloud.google.com/ruby/docs/reference/google-cloud-logging/latest)
51
- that will write logs to [Cloud Logging](https://cloud.google.com/logging/). See [grpc/logconfig.rb](https://github.com/grpc/grpc/blob/master/src/ruby/lib/grpc/logconfig.rb)
52
- and the gRPC [spec_helper.rb](https://github.com/grpc/grpc/blob/master/src/ruby/spec/spec_helper.rb) for additional information.
53
-
54
- Configuring a Ruby stdlib logger:
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/assured_workloads/v1beta1"
57
76
  require "logger"
58
77
 
59
- module MyLogger
60
- LOGGER = Logger.new $stderr, level: Logger::WARN
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::AssuredWorkloads::V1beta1::AssuredWorkloadsService::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 2.7+.
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
@@ -188,8 +188,19 @@ module Google
188
188
  universe_domain: @config.universe_domain,
189
189
  channel_args: @config.channel_args,
190
190
  interceptors: @config.interceptors,
191
- channel_pool_config: @config.channel_pool
191
+ channel_pool_config: @config.channel_pool,
192
+ logger: @config.logger
192
193
  )
194
+
195
+ @assured_workloads_service_stub.stub_logger&.info do |entry|
196
+ entry.set_system_name
197
+ entry.set_service
198
+ entry.message = "Created client for #{entry.service}"
199
+ entry.set_credentials_fields credentials
200
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
201
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
202
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
203
+ end
193
204
  end
194
205
 
195
206
  ##
@@ -199,6 +210,15 @@ module Google
199
210
  #
200
211
  attr_reader :operations_client
201
212
 
213
+ ##
214
+ # The logger used for request/response debug logging.
215
+ #
216
+ # @return [Logger]
217
+ #
218
+ def logger
219
+ @assured_workloads_service_stub.logger
220
+ end
221
+
202
222
  # Service calls
203
223
 
204
224
  ##
@@ -297,7 +317,7 @@ module Google
297
317
  @assured_workloads_service_stub.call_rpc :create_workload, request, options: options do |response, operation|
298
318
  response = ::Gapic::Operation.new response, @operations_client, options: options
299
319
  yield response, operation if block_given?
300
- return response
320
+ throw :response, response
301
321
  end
302
322
  rescue ::GRPC::BadStatus => e
303
323
  raise ::Google::Cloud::Error.from_error(e)
@@ -383,7 +403,6 @@ module Google
383
403
 
384
404
  @assured_workloads_service_stub.call_rpc :update_workload, request, options: options do |response, operation|
385
405
  yield response, operation if block_given?
386
- return response
387
406
  end
388
407
  rescue ::GRPC::BadStatus => e
389
408
  raise ::Google::Cloud::Error.from_error(e)
@@ -480,7 +499,6 @@ module Google
480
499
 
481
500
  @assured_workloads_service_stub.call_rpc :restrict_allowed_resources, request, options: options do |response, operation|
482
501
  yield response, operation if block_given?
483
- return response
484
502
  end
485
503
  rescue ::GRPC::BadStatus => e
486
504
  raise ::Google::Cloud::Error.from_error(e)
@@ -576,7 +594,6 @@ module Google
576
594
 
577
595
  @assured_workloads_service_stub.call_rpc :delete_workload, request, options: options do |response, operation|
578
596
  yield response, operation if block_given?
579
- return response
580
597
  end
581
598
  rescue ::GRPC::BadStatus => e
582
599
  raise ::Google::Cloud::Error.from_error(e)
@@ -658,7 +675,6 @@ module Google
658
675
 
659
676
  @assured_workloads_service_stub.call_rpc :get_workload, request, options: options do |response, operation|
660
677
  yield response, operation if block_given?
661
- return response
662
678
  end
663
679
  rescue ::GRPC::BadStatus => e
664
680
  raise ::Google::Cloud::Error.from_error(e)
@@ -689,6 +705,8 @@ module Google
689
705
  # "organizations/\\{ORGANIZATION_ID}/locations/\\{LOCATION_ID}/workloads/\\{WORKLOAD_ID}"
690
706
  # For example:
691
707
  # "organizations/123/locations/us-east1/workloads/assured-workload-1"
708
+ #
709
+ # Note: The following fields are mutually exclusive: `source`, `project`. If a field in that set is populated, all other fields in the set will automatically be cleared.
692
710
  # @param project [::String]
693
711
  # The source type is a project. Specify the project's relative resource
694
712
  # name, formatted as either a project number or a project ID:
@@ -696,6 +714,8 @@ module Google
696
714
  # For example:
697
715
  # "projects/951040570662" when specifying a project number, or
698
716
  # "projects/my-project-123" when specifying a project ID.
717
+ #
718
+ # Note: The following fields are mutually exclusive: `project`, `source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
699
719
  # @param target [::String]
700
720
  # Required. The resource ID of the folder-based destination workload. This workload is
701
721
  # where the source project will hypothetically be moved to. Specify the
@@ -755,7 +775,6 @@ module Google
755
775
 
756
776
  @assured_workloads_service_stub.call_rpc :analyze_workload_move, request, options: options do |response, operation|
757
777
  yield response, operation if block_given?
758
- return response
759
778
  end
760
779
  rescue ::GRPC::BadStatus => e
761
780
  raise ::Google::Cloud::Error.from_error(e)
@@ -848,7 +867,7 @@ module Google
848
867
  @assured_workloads_service_stub.call_rpc :list_workloads, request, options: options do |response, operation|
849
868
  response = ::Gapic::PagedEnumerable.new @assured_workloads_service_stub, :list_workloads, request, response, operation, options
850
869
  yield response, operation if block_given?
851
- return response
870
+ throw :response, response
852
871
  end
853
872
  rescue ::GRPC::BadStatus => e
854
873
  raise ::Google::Cloud::Error.from_error(e)
@@ -898,6 +917,13 @@ module Google
898
917
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
899
918
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
900
919
  # * (`nil`) indicating no credentials
920
+ #
921
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
922
+ # external source for authentication to Google Cloud, you must validate it before
923
+ # providing it to a Google API client library. Providing an unvalidated credential
924
+ # configuration to Google APIs can compromise the security of your systems and data.
925
+ # For more information, refer to [Validate credential configurations from external
926
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
901
927
  # @return [::Object]
902
928
  # @!attribute [rw] scope
903
929
  # The OAuth scopes
@@ -937,6 +963,11 @@ module Google
937
963
  # default endpoint URL. The default value of nil uses the environment
938
964
  # universe (usually the default "googleapis.com" universe).
939
965
  # @return [::String,nil]
966
+ # @!attribute [rw] logger
967
+ # A custom logger to use for request/response debug logging, or the value
968
+ # `:default` (the default) to construct a default logger, or `nil` to
969
+ # explicitly disable logging.
970
+ # @return [::Logger,:default,nil]
940
971
  #
941
972
  class Configuration
942
973
  extend ::Gapic::Config
@@ -961,6 +992,7 @@ module Google
961
992
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
962
993
  config_attr :quota_project, nil, ::String, nil
963
994
  config_attr :universe_domain, nil, ::String, nil
995
+ config_attr :logger, :default, ::Logger, nil, :default
964
996
 
965
997
  # @private
966
998
  def initialize parent_config = nil
@@ -124,14 +124,6 @@ module Google
124
124
  # Lists operations that match the specified filter in the request. If the
125
125
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
126
126
  #
127
- # NOTE: the `name` binding allows API services to override the binding
128
- # to use different resource name schemes, such as `users/*/operations`. To
129
- # override the binding, API services can add a binding such as
130
- # `"/v1/{name=users/*}/operations"` to their service configuration.
131
- # For backwards compatibility, the default name includes the operations
132
- # collection id, however overriding users must ensure the name binding
133
- # is the parent resource, without the operations collection id.
134
- #
135
127
  # @overload list_operations(request, options = nil)
136
128
  # Pass arguments to `list_operations` via a request object, either of type
137
129
  # {::Google::Longrunning::ListOperationsRequest} or an equivalent Hash.
@@ -221,7 +213,7 @@ module Google
221
213
  wrap_lro_operation = ->(op_response) { ::Gapic::Operation.new op_response, @operations_client }
222
214
  response = ::Gapic::PagedEnumerable.new @operations_stub, :list_operations, request, response, operation, options, format_resource: wrap_lro_operation
223
215
  yield response, operation if block_given?
224
- return response
216
+ throw :response, response
225
217
  end
226
218
  rescue ::GRPC::BadStatus => e
227
219
  raise ::Google::Cloud::Error.from_error(e)
@@ -317,7 +309,7 @@ module Google
317
309
  @operations_stub.call_rpc :get_operation, request, options: options do |response, operation|
318
310
  response = ::Gapic::Operation.new response, @operations_client, options: options
319
311
  yield response, operation if block_given?
320
- return response
312
+ throw :response, response
321
313
  end
322
314
  rescue ::GRPC::BadStatus => e
323
315
  raise ::Google::Cloud::Error.from_error(e)
@@ -406,7 +398,6 @@ module Google
406
398
 
407
399
  @operations_stub.call_rpc :delete_operation, request, options: options do |response, operation|
408
400
  yield response, operation if block_given?
409
- return response
410
401
  end
411
402
  rescue ::GRPC::BadStatus => e
412
403
  raise ::Google::Cloud::Error.from_error(e)
@@ -421,8 +412,9 @@ module Google
421
412
  # other methods to check whether the cancellation succeeded or whether the
422
413
  # operation completed despite cancellation. On successful cancellation,
423
414
  # the operation is not deleted; instead, it becomes an operation with
424
- # an {::Google::Longrunning::Operation#error Operation.error} value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
425
- # corresponding to `Code.CANCELLED`.
415
+ # an {::Google::Longrunning::Operation#error Operation.error} value with a
416
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of `1`, corresponding to
417
+ # `Code.CANCELLED`.
426
418
  #
427
419
  # @overload cancel_operation(request, options = nil)
428
420
  # Pass arguments to `cancel_operation` via a request object, either of type
@@ -501,7 +493,6 @@ module Google
501
493
 
502
494
  @operations_stub.call_rpc :cancel_operation, request, options: options do |response, operation|
503
495
  yield response, operation if block_given?
504
- return response
505
496
  end
506
497
  rescue ::GRPC::BadStatus => e
507
498
  raise ::Google::Cloud::Error.from_error(e)
@@ -599,7 +590,7 @@ module Google
599
590
  @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
600
591
  response = ::Gapic::Operation.new response, @operations_client, options: options
601
592
  yield response, operation if block_given?
602
- return response
593
+ throw :response, response
603
594
  end
604
595
  rescue ::GRPC::BadStatus => e
605
596
  raise ::Google::Cloud::Error.from_error(e)
@@ -649,6 +640,13 @@ module Google
649
640
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
650
641
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
651
642
  # * (`nil`) indicating no credentials
643
+ #
644
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
645
+ # external source for authentication to Google Cloud, you must validate it before
646
+ # providing it to a Google API client library. Providing an unvalidated credential
647
+ # configuration to Google APIs can compromise the security of your systems and data.
648
+ # For more information, refer to [Validate credential configurations from external
649
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
652
650
  # @return [::Object]
653
651
  # @!attribute [rw] scope
654
652
  # The OAuth scopes
@@ -688,6 +686,11 @@ module Google
688
686
  # default endpoint URL. The default value of nil uses the environment
689
687
  # universe (usually the default "googleapis.com" universe).
690
688
  # @return [::String,nil]
689
+ # @!attribute [rw] logger
690
+ # A custom logger to use for request/response debug logging, or the value
691
+ # `:default` (the default) to construct a default logger, or `nil` to
692
+ # explicitly disable logging.
693
+ # @return [::Logger,:default,nil]
691
694
  #
692
695
  class Configuration
693
696
  extend ::Gapic::Config
@@ -712,6 +715,7 @@ module Google
712
715
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
713
716
  config_attr :quota_project, nil, ::String, nil
714
717
  config_attr :universe_domain, nil, ::String, nil
718
+ config_attr :logger, :default, ::Logger, nil, :default
715
719
 
716
720
  # @private
717
721
  def initialize parent_config = nil
@@ -164,8 +164,19 @@ module Google
164
164
  endpoint: @config.endpoint,
165
165
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
166
166
  universe_domain: @config.universe_domain,
167
- credentials: credentials
167
+ credentials: credentials,
168
+ logger: @config.logger
168
169
  )
170
+
171
+ @assured_workloads_service_stub.logger(stub: true)&.info do |entry|
172
+ entry.set_system_name
173
+ entry.set_service
174
+ entry.message = "Created client for #{entry.service}"
175
+ entry.set_credentials_fields credentials
176
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
177
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
178
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
179
+ end
169
180
  end
170
181
 
171
182
  ##
@@ -175,6 +186,15 @@ module Google
175
186
  #
176
187
  attr_reader :operations_client
177
188
 
189
+ ##
190
+ # The logger used for request/response debug logging.
191
+ #
192
+ # @return [Logger]
193
+ #
194
+ def logger
195
+ @assured_workloads_service_stub.logger
196
+ end
197
+
178
198
  # Service calls
179
199
 
180
200
  ##
@@ -266,7 +286,7 @@ module Google
266
286
  @assured_workloads_service_stub.create_workload request, options do |result, operation|
267
287
  result = ::Gapic::Operation.new result, @operations_client, options: options
268
288
  yield result, operation if block_given?
269
- return result
289
+ throw :response, result
270
290
  end
271
291
  rescue ::Gapic::Rest::Error => e
272
292
  raise ::Google::Cloud::Error.from_error(e)
@@ -356,7 +376,6 @@ module Google
356
376
 
357
377
  @assured_workloads_service_stub.restrict_allowed_resources request, options do |result, operation|
358
378
  yield result, operation if block_given?
359
- return result
360
379
  end
361
380
  rescue ::Gapic::Rest::Error => e
362
381
  raise ::Google::Cloud::Error.from_error(e)
@@ -445,7 +464,6 @@ module Google
445
464
 
446
465
  @assured_workloads_service_stub.delete_workload request, options do |result, operation|
447
466
  yield result, operation if block_given?
448
- return result
449
467
  end
450
468
  rescue ::Gapic::Rest::Error => e
451
469
  raise ::Google::Cloud::Error.from_error(e)
@@ -493,6 +511,13 @@ module Google
493
511
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
494
512
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
495
513
  # * (`nil`) indicating no credentials
514
+ #
515
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
516
+ # external source for authentication to Google Cloud, you must validate it before
517
+ # providing it to a Google API client library. Providing an unvalidated credential
518
+ # configuration to Google APIs can compromise the security of your systems and data.
519
+ # For more information, refer to [Validate credential configurations from external
520
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
496
521
  # @return [::Object]
497
522
  # @!attribute [rw] scope
498
523
  # The OAuth scopes
@@ -525,6 +550,11 @@ module Google
525
550
  # default endpoint URL. The default value of nil uses the environment
526
551
  # universe (usually the default "googleapis.com" universe).
527
552
  # @return [::String,nil]
553
+ # @!attribute [rw] logger
554
+ # A custom logger to use for request/response debug logging, or the value
555
+ # `:default` (the default) to construct a default logger, or `nil` to
556
+ # explicitly disable logging.
557
+ # @return [::Logger,:default,nil]
528
558
  #
529
559
  class Configuration
530
560
  extend ::Gapic::Config
@@ -546,6 +576,7 @@ module Google
546
576
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
547
577
  config_attr :quota_project, nil, ::String, nil
548
578
  config_attr :universe_domain, nil, ::String, nil
579
+ config_attr :logger, :default, ::Logger, nil, :default
549
580
 
550
581
  # @private
551
582
  def initialize parent_config = nil
@@ -115,14 +115,6 @@ module Google
115
115
  # Lists operations that match the specified filter in the request. If the
116
116
  # server doesn't support this method, it returns `UNIMPLEMENTED`.
117
117
  #
118
- # NOTE: the `name` binding allows API services to override the binding
119
- # to use different resource name schemes, such as `users/*/operations`. To
120
- # override the binding, API services can add a binding such as
121
- # `"/v1/{name=users/*}/operations"` to their service configuration.
122
- # For backwards compatibility, the default name includes the operations
123
- # collection id, however overriding users must ensure the name binding
124
- # is the parent resource, without the operations collection id.
125
- #
126
118
  # @overload list_operations(request, options = nil)
127
119
  # Pass arguments to `list_operations` via a request object, either of type
128
120
  # {::Google::Longrunning::ListOperationsRequest} or an equivalent Hash.
@@ -204,7 +196,7 @@ module Google
204
196
  @operations_stub.list_operations request, options do |result, operation|
205
197
  result = ::Gapic::Rest::PagedEnumerable.new @operations_stub, :list_operations, "operations", request, result, options
206
198
  yield result, operation if block_given?
207
- return result
199
+ throw :response, result
208
200
  end
209
201
  rescue ::Gapic::Rest::Error => e
210
202
  raise ::Google::Cloud::Error.from_error(e)
@@ -293,7 +285,7 @@ module Google
293
285
  @operations_stub.get_operation request, options do |result, operation|
294
286
  result = ::Gapic::Operation.new result, @operations_client, options: options
295
287
  yield result, operation if block_given?
296
- return result
288
+ throw :response, result
297
289
  end
298
290
  rescue ::Gapic::Rest::Error => e
299
291
  raise ::Google::Cloud::Error.from_error(e)
@@ -375,7 +367,6 @@ module Google
375
367
 
376
368
  @operations_stub.delete_operation request, options do |result, operation|
377
369
  yield result, operation if block_given?
378
- return result
379
370
  end
380
371
  rescue ::Gapic::Rest::Error => e
381
372
  raise ::Google::Cloud::Error.from_error(e)
@@ -390,8 +381,9 @@ module Google
390
381
  # other methods to check whether the cancellation succeeded or whether the
391
382
  # operation completed despite cancellation. On successful cancellation,
392
383
  # the operation is not deleted; instead, it becomes an operation with
393
- # an {::Google::Longrunning::Operation#error Operation.error} value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
394
- # corresponding to `Code.CANCELLED`.
384
+ # an {::Google::Longrunning::Operation#error Operation.error} value with a
385
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of `1`, corresponding to
386
+ # `Code.CANCELLED`.
395
387
  #
396
388
  # @overload cancel_operation(request, options = nil)
397
389
  # Pass arguments to `cancel_operation` via a request object, either of type
@@ -463,7 +455,6 @@ module Google
463
455
 
464
456
  @operations_stub.cancel_operation request, options do |result, operation|
465
457
  yield result, operation if block_given?
466
- return result
467
458
  end
468
459
  rescue ::Gapic::Rest::Error => e
469
460
  raise ::Google::Cloud::Error.from_error(e)
@@ -511,6 +502,13 @@ module Google
511
502
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
512
503
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
513
504
  # * (`nil`) indicating no credentials
505
+ #
506
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
507
+ # external source for authentication to Google Cloud, you must validate it before
508
+ # providing it to a Google API client library. Providing an unvalidated credential
509
+ # configuration to Google APIs can compromise the security of your systems and data.
510
+ # For more information, refer to [Validate credential configurations from external
511
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
514
512
  # @return [::Object]
515
513
  # @!attribute [rw] scope
516
514
  # The OAuth scopes
@@ -543,6 +541,11 @@ module Google
543
541
  # default endpoint URL. The default value of nil uses the environment
544
542
  # universe (usually the default "googleapis.com" universe).
545
543
  # @return [::String,nil]
544
+ # @!attribute [rw] logger
545
+ # A custom logger to use for request/response debug logging, or the value
546
+ # `:default` (the default) to construct a default logger, or `nil` to
547
+ # explicitly disable logging.
548
+ # @return [::Logger,:default,nil]
546
549
  #
547
550
  class Configuration
548
551
  extend ::Gapic::Config
@@ -564,6 +567,7 @@ module Google
564
567
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
565
568
  config_attr :quota_project, nil, ::String, nil
566
569
  config_attr :universe_domain, nil, ::String, nil
570
+ config_attr :logger, :default, ::Logger, nil, :default
567
571
 
568
572
  # @private
569
573
  def initialize parent_config = nil
@@ -683,16 +687,18 @@ module Google
683
687
 
684
688
  response = @client_stub.make_http_request(
685
689
  verb,
686
- uri: uri,
687
- body: body || "",
688
- params: query_string_params,
690
+ uri: uri,
691
+ body: body || "",
692
+ params: query_string_params,
693
+ method_name: "list_operations",
689
694
  options: options
690
695
  )
691
696
  operation = ::Gapic::Rest::TransportOperation.new response
692
697
  result = ::Google::Longrunning::ListOperationsResponse.decode_json response.body, ignore_unknown_fields: true
693
-
694
- yield result, operation if block_given?
695
- result
698
+ catch :response do
699
+ yield result, operation if block_given?
700
+ result
701
+ end
696
702
  end
697
703
 
698
704
  ##
@@ -721,16 +727,18 @@ module Google
721
727
 
722
728
  response = @client_stub.make_http_request(
723
729
  verb,
724
- uri: uri,
725
- body: body || "",
726
- params: query_string_params,
730
+ uri: uri,
731
+ body: body || "",
732
+ params: query_string_params,
733
+ method_name: "get_operation",
727
734
  options: options
728
735
  )
729
736
  operation = ::Gapic::Rest::TransportOperation.new response
730
737
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
731
-
732
- yield result, operation if block_given?
733
- result
738
+ catch :response do
739
+ yield result, operation if block_given?
740
+ result
741
+ end
734
742
  end
735
743
 
736
744
  ##
@@ -759,16 +767,18 @@ module Google
759
767
 
760
768
  response = @client_stub.make_http_request(
761
769
  verb,
762
- uri: uri,
763
- body: body || "",
764
- params: query_string_params,
770
+ uri: uri,
771
+ body: body || "",
772
+ params: query_string_params,
773
+ method_name: "delete_operation",
765
774
  options: options
766
775
  )
767
776
  operation = ::Gapic::Rest::TransportOperation.new response
768
777
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
769
-
770
- yield result, operation if block_given?
771
- result
778
+ catch :response do
779
+ yield result, operation if block_given?
780
+ result
781
+ end
772
782
  end
773
783
 
774
784
  ##
@@ -797,16 +807,18 @@ module Google
797
807
 
798
808
  response = @client_stub.make_http_request(
799
809
  verb,
800
- uri: uri,
801
- body: body || "",
802
- params: query_string_params,
810
+ uri: uri,
811
+ body: body || "",
812
+ params: query_string_params,
813
+ method_name: "cancel_operation",
803
814
  options: options
804
815
  )
805
816
  operation = ::Gapic::Rest::TransportOperation.new response
806
817
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
807
-
808
- yield result, operation if block_given?
809
- result
818
+ catch :response do
819
+ yield result, operation if block_given?
820
+ result
821
+ end
810
822
  end
811
823
 
812
824
  ##
@@ -30,7 +30,8 @@ module Google
30
30
  # including transcoding, making the REST call, and deserialing the response.
31
31
  #
32
32
  class ServiceStub
33
- def initialize endpoint:, endpoint_template:, universe_domain:, credentials:
33
+ # @private
34
+ def initialize endpoint:, endpoint_template:, universe_domain:, credentials:, logger:
34
35
  # These require statements are intentionally placed here to initialize
35
36
  # the REST modules only when it's required.
36
37
  require "gapic/rest"
@@ -40,7 +41,9 @@ module Google
40
41
  universe_domain: universe_domain,
41
42
  credentials: credentials,
42
43
  numeric_enums: true,
43
- raise_faraday_errors: false
44
+ service_name: self.class,
45
+ raise_faraday_errors: false,
46
+ logger: logger
44
47
  end
45
48
 
46
49
  ##
@@ -61,6 +64,15 @@ module Google
61
64
  @client_stub.endpoint
62
65
  end
63
66
 
67
+ ##
68
+ # The logger used for request/response debug logging.
69
+ #
70
+ # @return [Logger]
71
+ #
72
+ def logger stub: false
73
+ stub ? @client_stub.stub_logger : @client_stub.logger
74
+ end
75
+
64
76
  ##
65
77
  # Baseline implementation for the create_workload REST call
66
78
  #
@@ -87,16 +99,18 @@ module Google
87
99
 
88
100
  response = @client_stub.make_http_request(
89
101
  verb,
90
- uri: uri,
91
- body: body || "",
92
- params: query_string_params,
102
+ uri: uri,
103
+ body: body || "",
104
+ params: query_string_params,
105
+ method_name: "create_workload",
93
106
  options: options
94
107
  )
95
108
  operation = ::Gapic::Rest::TransportOperation.new response
96
109
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
97
-
98
- yield result, operation if block_given?
99
- result
110
+ catch :response do
111
+ yield result, operation if block_given?
112
+ result
113
+ end
100
114
  end
101
115
 
102
116
  ##
@@ -125,16 +139,18 @@ module Google
125
139
 
126
140
  response = @client_stub.make_http_request(
127
141
  verb,
128
- uri: uri,
129
- body: body || "",
130
- params: query_string_params,
142
+ uri: uri,
143
+ body: body || "",
144
+ params: query_string_params,
145
+ method_name: "restrict_allowed_resources",
131
146
  options: options
132
147
  )
133
148
  operation = ::Gapic::Rest::TransportOperation.new response
134
149
  result = ::Google::Cloud::AssuredWorkloads::V1beta1::RestrictAllowedResourcesResponse.decode_json response.body, ignore_unknown_fields: true
135
-
136
- yield result, operation if block_given?
137
- result
150
+ catch :response do
151
+ yield result, operation if block_given?
152
+ result
153
+ end
138
154
  end
139
155
 
140
156
  ##
@@ -163,16 +179,18 @@ module Google
163
179
 
164
180
  response = @client_stub.make_http_request(
165
181
  verb,
166
- uri: uri,
167
- body: body || "",
168
- params: query_string_params,
182
+ uri: uri,
183
+ body: body || "",
184
+ params: query_string_params,
185
+ method_name: "delete_workload",
169
186
  options: options
170
187
  )
171
188
  operation = ::Gapic::Rest::TransportOperation.new response
172
189
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
173
-
174
- yield result, operation if block_given?
175
- result
190
+ catch :response do
191
+ yield result, operation if block_given?
192
+ result
193
+ end
176
194
  end
177
195
 
178
196
  ##
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module AssuredWorkloads
23
23
  module V1beta1
24
- VERSION = "0.18.1"
24
+ VERSION = "0.20.0"
25
25
  end
26
26
  end
27
27
  end
@@ -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
@@ -130,6 +130,8 @@ module Google
130
130
  # "organizations/\\{ORGANIZATION_ID}/locations/\\{LOCATION_ID}/workloads/\\{WORKLOAD_ID}"
131
131
  # For example:
132
132
  # "organizations/123/locations/us-east1/workloads/assured-workload-1"
133
+ #
134
+ # Note: The following fields are mutually exclusive: `source`, `project`. If a field in that set is populated, all other fields in the set will automatically be cleared.
133
135
  # @!attribute [rw] project
134
136
  # @return [::String]
135
137
  # The source type is a project. Specify the project's relative resource
@@ -138,6 +140,8 @@ module Google
138
140
  # For example:
139
141
  # "projects/951040570662" when specifying a project number, or
140
142
  # "projects/my-project-123" when specifying a project ID.
143
+ #
144
+ # Note: The following fields are mutually exclusive: `project`, `source`. If a field in that set is populated, all other fields in the set will automatically be cleared.
141
145
  # @!attribute [rw] target
142
146
  # @return [::String]
143
147
  # Required. The resource ID of the folder-based destination workload. This workload is
@@ -238,18 +242,26 @@ module Google
238
242
  # @deprecated This field is deprecated and may be removed in the next major version update.
239
243
  # @return [::Google::Cloud::AssuredWorkloads::V1beta1::Workload::IL4Settings]
240
244
  # Input only. Immutable. Settings specific to resources needed for IL4.
245
+ #
246
+ # Note: The following fields are mutually exclusive: `il4_settings`, `cjis_settings`, `fedramp_high_settings`, `fedramp_moderate_settings`. If a field in that set is populated, all other fields in the set will automatically be cleared.
241
247
  # @!attribute [rw] cjis_settings
242
248
  # @deprecated This field is deprecated and may be removed in the next major version update.
243
249
  # @return [::Google::Cloud::AssuredWorkloads::V1beta1::Workload::CJISSettings]
244
250
  # Input only. Immutable. Settings specific to resources needed for CJIS.
251
+ #
252
+ # Note: The following fields are mutually exclusive: `cjis_settings`, `il4_settings`, `fedramp_high_settings`, `fedramp_moderate_settings`. If a field in that set is populated, all other fields in the set will automatically be cleared.
245
253
  # @!attribute [rw] fedramp_high_settings
246
254
  # @deprecated This field is deprecated and may be removed in the next major version update.
247
255
  # @return [::Google::Cloud::AssuredWorkloads::V1beta1::Workload::FedrampHighSettings]
248
256
  # Input only. Immutable. Settings specific to resources needed for FedRAMP High.
257
+ #
258
+ # Note: The following fields are mutually exclusive: `fedramp_high_settings`, `il4_settings`, `cjis_settings`, `fedramp_moderate_settings`. If a field in that set is populated, all other fields in the set will automatically be cleared.
249
259
  # @!attribute [rw] fedramp_moderate_settings
250
260
  # @deprecated This field is deprecated and may be removed in the next major version update.
251
261
  # @return [::Google::Cloud::AssuredWorkloads::V1beta1::Workload::FedrampModerateSettings]
252
262
  # Input only. Immutable. Settings specific to resources needed for FedRAMP Moderate.
263
+ #
264
+ # Note: The following fields are mutually exclusive: `fedramp_moderate_settings`, `il4_settings`, `cjis_settings`, `fedramp_high_settings`. If a field in that set is populated, all other fields in the set will automatically be cleared.
253
265
  # @!attribute [rw] etag
254
266
  # @return [::String]
255
267
  # Optional. ETag of the workload, it is calculated on the basis
@@ -40,9 +40,11 @@ module Google
40
40
  # @!attribute [rw] error
41
41
  # @return [::Google::Rpc::Status]
42
42
  # The error result of the operation in case of failure or cancellation.
43
+ #
44
+ # Note: The following fields are mutually exclusive: `error`, `response`. If a field in that set is populated, all other fields in the set will automatically be cleared.
43
45
  # @!attribute [rw] response
44
46
  # @return [::Google::Protobuf::Any]
45
- # The normal response of the operation in case of success. If the original
47
+ # The normal, successful response of the operation. If the original
46
48
  # method returns no data on success, such as `Delete`, the response is
47
49
  # `google.protobuf.Empty`. If the original method is standard
48
50
  # `Get`/`Create`/`Update`, the response should be the resource. For other
@@ -50,12 +52,15 @@ module Google
50
52
  # is the original method name. For example, if the original method name
51
53
  # is `TakeSnapshot()`, the inferred response type is
52
54
  # `TakeSnapshotResponse`.
55
+ #
56
+ # Note: The following fields are mutually exclusive: `response`, `error`. If a field in that set is populated, all other fields in the set will automatically be cleared.
53
57
  class Operation
54
58
  include ::Google::Protobuf::MessageExts
55
59
  extend ::Google::Protobuf::MessageExts::ClassMethods
56
60
  end
57
61
 
58
- # The request message for Operations.GetOperation.
62
+ # The request message for
63
+ # Operations.GetOperation.
59
64
  # @!attribute [rw] name
60
65
  # @return [::String]
61
66
  # The name of the operation resource.
@@ -64,7 +69,8 @@ module Google
64
69
  extend ::Google::Protobuf::MessageExts::ClassMethods
65
70
  end
66
71
 
67
- # The request message for Operations.ListOperations.
72
+ # The request message for
73
+ # Operations.ListOperations.
68
74
  # @!attribute [rw] name
69
75
  # @return [::String]
70
76
  # The name of the operation's parent resource.
@@ -82,7 +88,8 @@ module Google
82
88
  extend ::Google::Protobuf::MessageExts::ClassMethods
83
89
  end
84
90
 
85
- # The response message for Operations.ListOperations.
91
+ # The response message for
92
+ # Operations.ListOperations.
86
93
  # @!attribute [rw] operations
87
94
  # @return [::Array<::Google::Longrunning::Operation>]
88
95
  # A list of operations that matches the specified filter in the request.
@@ -94,7 +101,8 @@ module Google
94
101
  extend ::Google::Protobuf::MessageExts::ClassMethods
95
102
  end
96
103
 
97
- # The request message for Operations.CancelOperation.
104
+ # The request message for
105
+ # Operations.CancelOperation.
98
106
  # @!attribute [rw] name
99
107
  # @return [::String]
100
108
  # The name of the operation resource to be cancelled.
@@ -103,7 +111,8 @@ module Google
103
111
  extend ::Google::Protobuf::MessageExts::ClassMethods
104
112
  end
105
113
 
106
- # The request message for Operations.DeleteOperation.
114
+ # The request message for
115
+ # Operations.DeleteOperation.
107
116
  # @!attribute [rw] name
108
117
  # @return [::String]
109
118
  # The name of the operation resource to be deleted.
@@ -112,7 +121,8 @@ module Google
112
121
  extend ::Google::Protobuf::MessageExts::ClassMethods
113
122
  end
114
123
 
115
- # The request message for Operations.WaitOperation.
124
+ # The request message for
125
+ # Operations.WaitOperation.
116
126
  # @!attribute [rw] name
117
127
  # @return [::String]
118
128
  # The name of the operation resource to wait on.
@@ -130,13 +140,12 @@ module Google
130
140
  #
131
141
  # Example:
132
142
  #
133
- # rpc LongRunningRecognize(LongRunningRecognizeRequest)
134
- # returns (google.longrunning.Operation) {
135
- # option (google.longrunning.operation_info) = {
136
- # response_type: "LongRunningRecognizeResponse"
137
- # metadata_type: "LongRunningRecognizeMetadata"
138
- # };
139
- # }
143
+ # rpc Export(ExportRequest) returns (google.longrunning.Operation) {
144
+ # option (google.longrunning.operation_info) = {
145
+ # response_type: "ExportResponse"
146
+ # metadata_type: "ExportMetadata"
147
+ # };
148
+ # }
140
149
  # @!attribute [rw] response_type
141
150
  # @return [::String]
142
151
  # Required. The message name of the primary return type for this
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-assured_workloads-v1beta1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.18.1
4
+ version: 0.20.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2024-08-30 00:00:00.000000000 Z
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.21.1
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.21.1
28
+ version: 0.25.0
30
29
  - - "<"
31
30
  - !ruby/object:Gem::Version
32
31
  version: 2.a
@@ -91,7 +90,6 @@ homepage: https://github.com/googleapis/google-cloud-ruby
91
90
  licenses:
92
91
  - Apache-2.0
93
92
  metadata: {}
94
- post_install_message:
95
93
  rdoc_options: []
96
94
  require_paths:
97
95
  - lib
@@ -99,15 +97,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
99
97
  requirements:
100
98
  - - ">="
101
99
  - !ruby/object:Gem::Version
102
- version: '2.7'
100
+ version: '3.0'
103
101
  required_rubygems_version: !ruby/object:Gem::Requirement
104
102
  requirements:
105
103
  - - ">="
106
104
  - !ruby/object:Gem::Version
107
105
  version: '0'
108
106
  requirements: []
109
- rubygems_version: 3.5.6
110
- signing_key:
107
+ rubygems_version: 3.6.2
111
108
  specification_version: 4
112
109
  summary: API Client library for the Assured Workloads for Government V1beta1 API
113
110
  test_files: []