google-cloud-run-v2 0.19.0 → 0.21.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.
Files changed (37) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +31 -21
  3. data/lib/google/cloud/run/v2/builds/client.rb +39 -2
  4. data/lib/google/cloud/run/v2/builds/rest/client.rb +39 -2
  5. data/lib/google/cloud/run/v2/builds/rest/service_stub.rb +22 -8
  6. data/lib/google/cloud/run/v2/executions/client.rb +38 -5
  7. data/lib/google/cloud/run/v2/executions/operations.rb +16 -5
  8. data/lib/google/cloud/run/v2/executions/rest/client.rb +38 -5
  9. data/lib/google/cloud/run/v2/executions/rest/operations.rb +56 -35
  10. data/lib/google/cloud/run/v2/executions/rest/service_stub.rb +46 -26
  11. data/lib/google/cloud/run/v2/jobs/client.rb +40 -10
  12. data/lib/google/cloud/run/v2/jobs/operations.rb +16 -5
  13. data/lib/google/cloud/run/v2/jobs/rest/client.rb +40 -10
  14. data/lib/google/cloud/run/v2/jobs/rest/operations.rb +56 -35
  15. data/lib/google/cloud/run/v2/jobs/rest/service_stub.rb +86 -56
  16. data/lib/google/cloud/run/v2/revisions/client.rb +37 -4
  17. data/lib/google/cloud/run/v2/revisions/operations.rb +16 -5
  18. data/lib/google/cloud/run/v2/revisions/rest/client.rb +37 -4
  19. data/lib/google/cloud/run/v2/revisions/rest/operations.rb +56 -35
  20. data/lib/google/cloud/run/v2/revisions/rest/service_stub.rb +38 -20
  21. data/lib/google/cloud/run/v2/services/client.rb +39 -9
  22. data/lib/google/cloud/run/v2/services/operations.rb +16 -5
  23. data/lib/google/cloud/run/v2/services/rest/client.rb +39 -9
  24. data/lib/google/cloud/run/v2/services/rest/operations.rb +56 -35
  25. data/lib/google/cloud/run/v2/services/rest/service_stub.rb +78 -50
  26. data/lib/google/cloud/run/v2/tasks/client.rb +36 -3
  27. data/lib/google/cloud/run/v2/tasks/rest/client.rb +36 -3
  28. data/lib/google/cloud/run/v2/tasks/rest/service_stub.rb +30 -14
  29. data/lib/google/cloud/run/v2/version.rb +1 -1
  30. data/proto_docs/google/api/client.rb +19 -0
  31. data/proto_docs/google/cloud/run/v2/build.rb +4 -0
  32. data/proto_docs/google/cloud/run/v2/condition.rb +6 -0
  33. data/proto_docs/google/cloud/run/v2/job.rb +4 -0
  34. data/proto_docs/google/cloud/run/v2/k8s.min.rb +20 -0
  35. data/proto_docs/google/cloud/run/v2/vendor_settings.rb +4 -0
  36. data/proto_docs/google/longrunning/operations.rb +4 -0
  37. metadata +6 -9
@@ -196,7 +196,7 @@ module Google
196
196
  @operations_stub.list_operations request, options do |result, operation|
197
197
  result = ::Gapic::Rest::PagedEnumerable.new @operations_stub, :list_operations, "operations", request, result, options
198
198
  yield result, operation if block_given?
199
- return result
199
+ throw :response, result
200
200
  end
201
201
  rescue ::Gapic::Rest::Error => e
202
202
  raise ::Google::Cloud::Error.from_error(e)
@@ -285,7 +285,7 @@ module Google
285
285
  @operations_stub.get_operation request, options do |result, operation|
286
286
  result = ::Gapic::Operation.new result, @operations_client, options: options
287
287
  yield result, operation if block_given?
288
- return result
288
+ throw :response, result
289
289
  end
290
290
  rescue ::Gapic::Rest::Error => e
291
291
  raise ::Google::Cloud::Error.from_error(e)
@@ -367,7 +367,6 @@ module Google
367
367
 
368
368
  @operations_stub.delete_operation request, options do |result, operation|
369
369
  yield result, operation if block_given?
370
- return result
371
370
  end
372
371
  rescue ::Gapic::Rest::Error => e
373
372
  raise ::Google::Cloud::Error.from_error(e)
@@ -456,7 +455,6 @@ module Google
456
455
 
457
456
  @operations_stub.cancel_operation request, options do |result, operation|
458
457
  yield result, operation if block_given?
459
- return result
460
458
  end
461
459
  rescue ::Gapic::Rest::Error => e
462
460
  raise ::Google::Cloud::Error.from_error(e)
@@ -555,7 +553,7 @@ module Google
555
553
  @operations_stub.wait_operation request, options do |result, operation|
556
554
  result = ::Gapic::Operation.new result, @operations_client, options: options
557
555
  yield result, operation if block_given?
558
- return result
556
+ throw :response, result
559
557
  end
560
558
  rescue ::Gapic::Rest::Error => e
561
559
  raise ::Google::Cloud::Error.from_error(e)
@@ -603,6 +601,13 @@ module Google
603
601
  # * (`Signet::OAuth2::Client`) A signet oauth2 client object
604
602
  # (see the [signet docs](https://rubydoc.info/gems/signet/Signet/OAuth2/Client))
605
603
  # * (`nil`) indicating no credentials
604
+ #
605
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
606
+ # external source for authentication to Google Cloud, you must validate it before
607
+ # providing it to a Google API client library. Providing an unvalidated credential
608
+ # configuration to Google APIs can compromise the security of your systems and data.
609
+ # For more information, refer to [Validate credential configurations from external
610
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
606
611
  # @return [::Object]
607
612
  # @!attribute [rw] scope
608
613
  # The OAuth scopes
@@ -635,6 +640,11 @@ module Google
635
640
  # default endpoint URL. The default value of nil uses the environment
636
641
  # universe (usually the default "googleapis.com" universe).
637
642
  # @return [::String,nil]
643
+ # @!attribute [rw] logger
644
+ # A custom logger to use for request/response debug logging, or the value
645
+ # `:default` (the default) to construct a default logger, or `nil` to
646
+ # explicitly disable logging.
647
+ # @return [::Logger,:default,nil]
638
648
  #
639
649
  class Configuration
640
650
  extend ::Gapic::Config
@@ -656,6 +666,7 @@ module Google
656
666
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
657
667
  config_attr :quota_project, nil, ::String, nil
658
668
  config_attr :universe_domain, nil, ::String, nil
669
+ config_attr :logger, :default, ::Logger, nil, :default
659
670
 
660
671
  # @private
661
672
  def initialize parent_config = nil
@@ -782,16 +793,18 @@ module Google
782
793
 
783
794
  response = @client_stub.make_http_request(
784
795
  verb,
785
- uri: uri,
786
- body: body || "",
787
- params: query_string_params,
796
+ uri: uri,
797
+ body: body || "",
798
+ params: query_string_params,
799
+ method_name: "list_operations",
788
800
  options: options
789
801
  )
790
802
  operation = ::Gapic::Rest::TransportOperation.new response
791
803
  result = ::Google::Longrunning::ListOperationsResponse.decode_json response.body, ignore_unknown_fields: true
792
-
793
- yield result, operation if block_given?
794
- result
804
+ catch :response do
805
+ yield result, operation if block_given?
806
+ result
807
+ end
795
808
  end
796
809
 
797
810
  ##
@@ -820,16 +833,18 @@ module Google
820
833
 
821
834
  response = @client_stub.make_http_request(
822
835
  verb,
823
- uri: uri,
824
- body: body || "",
825
- params: query_string_params,
836
+ uri: uri,
837
+ body: body || "",
838
+ params: query_string_params,
839
+ method_name: "get_operation",
826
840
  options: options
827
841
  )
828
842
  operation = ::Gapic::Rest::TransportOperation.new response
829
843
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
830
-
831
- yield result, operation if block_given?
832
- result
844
+ catch :response do
845
+ yield result, operation if block_given?
846
+ result
847
+ end
833
848
  end
834
849
 
835
850
  ##
@@ -858,16 +873,18 @@ module Google
858
873
 
859
874
  response = @client_stub.make_http_request(
860
875
  verb,
861
- uri: uri,
862
- body: body || "",
863
- params: query_string_params,
876
+ uri: uri,
877
+ body: body || "",
878
+ params: query_string_params,
879
+ method_name: "delete_operation",
864
880
  options: options
865
881
  )
866
882
  operation = ::Gapic::Rest::TransportOperation.new response
867
883
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
868
-
869
- yield result, operation if block_given?
870
- result
884
+ catch :response do
885
+ yield result, operation if block_given?
886
+ result
887
+ end
871
888
  end
872
889
 
873
890
  ##
@@ -896,16 +913,18 @@ module Google
896
913
 
897
914
  response = @client_stub.make_http_request(
898
915
  verb,
899
- uri: uri,
900
- body: body || "",
901
- params: query_string_params,
916
+ uri: uri,
917
+ body: body || "",
918
+ params: query_string_params,
919
+ method_name: "cancel_operation",
902
920
  options: options
903
921
  )
904
922
  operation = ::Gapic::Rest::TransportOperation.new response
905
923
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
906
-
907
- yield result, operation if block_given?
908
- result
924
+ catch :response do
925
+ yield result, operation if block_given?
926
+ result
927
+ end
909
928
  end
910
929
 
911
930
  ##
@@ -934,16 +953,18 @@ module Google
934
953
 
935
954
  response = @client_stub.make_http_request(
936
955
  verb,
937
- uri: uri,
938
- body: body || "",
939
- params: query_string_params,
956
+ uri: uri,
957
+ body: body || "",
958
+ params: query_string_params,
959
+ method_name: "wait_operation",
940
960
  options: options
941
961
  )
942
962
  operation = ::Gapic::Rest::TransportOperation.new response
943
963
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
944
-
945
- yield result, operation if block_given?
946
- result
964
+ catch :response do
965
+ yield result, operation if block_given?
966
+ result
967
+ end
947
968
  end
948
969
 
949
970
  ##
@@ -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 get_execution 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: "get_execution",
93
106
  options: options
94
107
  )
95
108
  operation = ::Gapic::Rest::TransportOperation.new response
96
109
  result = ::Google::Cloud::Run::V2::Execution.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: "list_executions",
131
146
  options: options
132
147
  )
133
148
  operation = ::Gapic::Rest::TransportOperation.new response
134
149
  result = ::Google::Cloud::Run::V2::ListExecutionsResponse.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_execution",
169
186
  options: options
170
187
  )
171
188
  operation = ::Gapic::Rest::TransportOperation.new response
172
189
  result = ::Google::Longrunning::Operation.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
  ##
@@ -201,16 +219,18 @@ module Google
201
219
 
202
220
  response = @client_stub.make_http_request(
203
221
  verb,
204
- uri: uri,
205
- body: body || "",
206
- params: query_string_params,
222
+ uri: uri,
223
+ body: body || "",
224
+ params: query_string_params,
225
+ method_name: "cancel_execution",
207
226
  options: options
208
227
  )
209
228
  operation = ::Gapic::Rest::TransportOperation.new response
210
229
  result = ::Google::Longrunning::Operation.decode_json response.body, ignore_unknown_fields: true
211
-
212
- yield result, operation if block_given?
213
- result
230
+ catch :response do
231
+ yield result, operation if block_given?
232
+ result
233
+ end
214
234
  end
215
235
 
216
236
  ##
@@ -165,14 +165,26 @@ module Google
165
165
  universe_domain: @config.universe_domain,
166
166
  channel_args: @config.channel_args,
167
167
  interceptors: @config.interceptors,
168
- channel_pool_config: @config.channel_pool
168
+ channel_pool_config: @config.channel_pool,
169
+ logger: @config.logger
169
170
  )
170
171
 
172
+ @jobs_stub.stub_logger&.info do |entry|
173
+ entry.set_system_name
174
+ entry.set_service
175
+ entry.message = "Created client for #{entry.service}"
176
+ entry.set_credentials_fields credentials
177
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
178
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
179
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
180
+ end
181
+
171
182
  @location_client = Google::Cloud::Location::Locations::Client.new do |config|
172
183
  config.credentials = credentials
173
184
  config.quota_project = @quota_project_id
174
185
  config.endpoint = @jobs_stub.endpoint
175
186
  config.universe_domain = @jobs_stub.universe_domain
187
+ config.logger = @jobs_stub.logger if config.respond_to? :logger=
176
188
  end
177
189
  end
178
190
 
@@ -190,6 +202,15 @@ module Google
190
202
  #
191
203
  attr_reader :location_client
192
204
 
205
+ ##
206
+ # The logger used for request/response debug logging.
207
+ #
208
+ # @return [Logger]
209
+ #
210
+ def logger
211
+ @jobs_stub.logger
212
+ end
213
+
193
214
  # Service calls
194
215
 
195
216
  ##
@@ -293,7 +314,7 @@ module Google
293
314
  @jobs_stub.call_rpc :create_job, request, options: options do |response, operation|
294
315
  response = ::Gapic::Operation.new response, @operations_client, options: options
295
316
  yield response, operation if block_given?
296
- return response
317
+ throw :response, response
297
318
  end
298
319
  rescue ::GRPC::BadStatus => e
299
320
  raise ::Google::Cloud::Error.from_error(e)
@@ -384,7 +405,6 @@ module Google
384
405
 
385
406
  @jobs_stub.call_rpc :get_job, request, options: options do |response, operation|
386
407
  yield response, operation if block_given?
387
- return response
388
408
  end
389
409
  rescue ::GRPC::BadStatus => e
390
410
  raise ::Google::Cloud::Error.from_error(e)
@@ -487,7 +507,7 @@ module Google
487
507
  @jobs_stub.call_rpc :list_jobs, request, options: options do |response, operation|
488
508
  response = ::Gapic::PagedEnumerable.new @jobs_stub, :list_jobs, request, response, operation, options
489
509
  yield response, operation if block_given?
490
- return response
510
+ throw :response, response
491
511
  end
492
512
  rescue ::GRPC::BadStatus => e
493
513
  raise ::Google::Cloud::Error.from_error(e)
@@ -591,7 +611,7 @@ module Google
591
611
  @jobs_stub.call_rpc :update_job, request, options: options do |response, operation|
592
612
  response = ::Gapic::Operation.new response, @operations_client, options: options
593
613
  yield response, operation if block_given?
594
- return response
614
+ throw :response, response
595
615
  end
596
616
  rescue ::GRPC::BadStatus => e
597
617
  raise ::Google::Cloud::Error.from_error(e)
@@ -696,7 +716,7 @@ module Google
696
716
  @jobs_stub.call_rpc :delete_job, request, options: options do |response, operation|
697
717
  response = ::Gapic::Operation.new response, @operations_client, options: options
698
718
  yield response, operation if block_given?
699
- return response
719
+ throw :response, response
700
720
  end
701
721
  rescue ::GRPC::BadStatus => e
702
722
  raise ::Google::Cloud::Error.from_error(e)
@@ -804,7 +824,7 @@ module Google
804
824
  @jobs_stub.call_rpc :run_job, request, options: options do |response, operation|
805
825
  response = ::Gapic::Operation.new response, @operations_client, options: options
806
826
  yield response, operation if block_given?
807
- return response
827
+ throw :response, response
808
828
  end
809
829
  rescue ::GRPC::BadStatus => e
810
830
  raise ::Google::Cloud::Error.from_error(e)
@@ -895,7 +915,6 @@ module Google
895
915
 
896
916
  @jobs_stub.call_rpc :get_iam_policy, request, options: options do |response, operation|
897
917
  yield response, operation if block_given?
898
- return response
899
918
  end
900
919
  rescue ::GRPC::BadStatus => e
901
920
  raise ::Google::Cloud::Error.from_error(e)
@@ -994,7 +1013,6 @@ module Google
994
1013
 
995
1014
  @jobs_stub.call_rpc :set_iam_policy, request, options: options do |response, operation|
996
1015
  yield response, operation if block_given?
997
- return response
998
1016
  end
999
1017
  rescue ::GRPC::BadStatus => e
1000
1018
  raise ::Google::Cloud::Error.from_error(e)
@@ -1088,7 +1106,6 @@ module Google
1088
1106
 
1089
1107
  @jobs_stub.call_rpc :test_iam_permissions, request, options: options do |response, operation|
1090
1108
  yield response, operation if block_given?
1091
- return response
1092
1109
  end
1093
1110
  rescue ::GRPC::BadStatus => e
1094
1111
  raise ::Google::Cloud::Error.from_error(e)
@@ -1138,6 +1155,13 @@ module Google
1138
1155
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
1139
1156
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
1140
1157
  # * (`nil`) indicating no credentials
1158
+ #
1159
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
1160
+ # external source for authentication to Google Cloud, you must validate it before
1161
+ # providing it to a Google API client library. Providing an unvalidated credential
1162
+ # configuration to Google APIs can compromise the security of your systems and data.
1163
+ # For more information, refer to [Validate credential configurations from external
1164
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
1141
1165
  # @return [::Object]
1142
1166
  # @!attribute [rw] scope
1143
1167
  # The OAuth scopes
@@ -1177,6 +1201,11 @@ module Google
1177
1201
  # default endpoint URL. The default value of nil uses the environment
1178
1202
  # universe (usually the default "googleapis.com" universe).
1179
1203
  # @return [::String,nil]
1204
+ # @!attribute [rw] logger
1205
+ # A custom logger to use for request/response debug logging, or the value
1206
+ # `:default` (the default) to construct a default logger, or `nil` to
1207
+ # explicitly disable logging.
1208
+ # @return [::Logger,:default,nil]
1180
1209
  #
1181
1210
  class Configuration
1182
1211
  extend ::Gapic::Config
@@ -1201,6 +1230,7 @@ module Google
1201
1230
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1202
1231
  config_attr :quota_project, nil, ::String, nil
1203
1232
  config_attr :universe_domain, nil, ::String, nil
1233
+ config_attr :logger, :default, ::Logger, nil, :default
1204
1234
 
1205
1235
  # @private
1206
1236
  def initialize parent_config = nil
@@ -213,7 +213,7 @@ module Google
213
213
  wrap_lro_operation = ->(op_response) { ::Gapic::Operation.new op_response, @operations_client }
214
214
  response = ::Gapic::PagedEnumerable.new @operations_stub, :list_operations, request, response, operation, options, format_resource: wrap_lro_operation
215
215
  yield response, operation if block_given?
216
- return response
216
+ throw :response, response
217
217
  end
218
218
  rescue ::GRPC::BadStatus => e
219
219
  raise ::Google::Cloud::Error.from_error(e)
@@ -309,7 +309,7 @@ module Google
309
309
  @operations_stub.call_rpc :get_operation, request, options: options do |response, operation|
310
310
  response = ::Gapic::Operation.new response, @operations_client, options: options
311
311
  yield response, operation if block_given?
312
- return response
312
+ throw :response, response
313
313
  end
314
314
  rescue ::GRPC::BadStatus => e
315
315
  raise ::Google::Cloud::Error.from_error(e)
@@ -398,7 +398,6 @@ module Google
398
398
 
399
399
  @operations_stub.call_rpc :delete_operation, request, options: options do |response, operation|
400
400
  yield response, operation if block_given?
401
- return response
402
401
  end
403
402
  rescue ::GRPC::BadStatus => e
404
403
  raise ::Google::Cloud::Error.from_error(e)
@@ -494,7 +493,6 @@ module Google
494
493
 
495
494
  @operations_stub.call_rpc :cancel_operation, request, options: options do |response, operation|
496
495
  yield response, operation if block_given?
497
- return response
498
496
  end
499
497
  rescue ::GRPC::BadStatus => e
500
498
  raise ::Google::Cloud::Error.from_error(e)
@@ -600,7 +598,7 @@ module Google
600
598
  @operations_stub.call_rpc :wait_operation, request, options: options do |response, operation|
601
599
  response = ::Gapic::Operation.new response, @operations_client, options: options
602
600
  yield response, operation if block_given?
603
- return response
601
+ throw :response, response
604
602
  end
605
603
  rescue ::GRPC::BadStatus => e
606
604
  raise ::Google::Cloud::Error.from_error(e)
@@ -650,6 +648,13 @@ module Google
650
648
  # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
651
649
  # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
652
650
  # * (`nil`) indicating no credentials
651
+ #
652
+ # Warning: If you accept a credential configuration (JSON file or Hash) from an
653
+ # external source for authentication to Google Cloud, you must validate it before
654
+ # providing it to a Google API client library. Providing an unvalidated credential
655
+ # configuration to Google APIs can compromise the security of your systems and data.
656
+ # For more information, refer to [Validate credential configurations from external
657
+ # sources](https://cloud.google.com/docs/authentication/external/externally-sourced-credentials).
653
658
  # @return [::Object]
654
659
  # @!attribute [rw] scope
655
660
  # The OAuth scopes
@@ -689,6 +694,11 @@ module Google
689
694
  # default endpoint URL. The default value of nil uses the environment
690
695
  # universe (usually the default "googleapis.com" universe).
691
696
  # @return [::String,nil]
697
+ # @!attribute [rw] logger
698
+ # A custom logger to use for request/response debug logging, or the value
699
+ # `:default` (the default) to construct a default logger, or `nil` to
700
+ # explicitly disable logging.
701
+ # @return [::Logger,:default,nil]
692
702
  #
693
703
  class Configuration
694
704
  extend ::Gapic::Config
@@ -713,6 +723,7 @@ module Google
713
723
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
714
724
  config_attr :quota_project, nil, ::String, nil
715
725
  config_attr :universe_domain, nil, ::String, nil
726
+ config_attr :logger, :default, ::Logger, nil, :default
716
727
 
717
728
  # @private
718
729
  def initialize parent_config = nil