google-cloud-scheduler-v1beta1 0.11.0 → 0.12.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: eae3de372d946584d02310c7ddd400ec386e66fa08629bf42c07167376499711
4
- data.tar.gz: ca6caf6f343f80814f79fb08bdcd199316a363c0d583a50868d5fc52a792b24d
3
+ metadata.gz: e2b0fb0baa0adff8e5314c7a5ebeb7fc9a9103d0e6f2eaed179906d4c3f683d4
4
+ data.tar.gz: 8b3d9174e14fcff9477fe373a62809708fc8949fd7d15dcf8ebe3423afd6bb7e
5
5
  SHA512:
6
- metadata.gz: 88f4b1d36db93a059b55af4cc55629c7a11f3a7a038df43cf6ceab19cf3562bd74933607a56c676c25a33463d38c21e349fdbad15b2b81bc32a7c2519bdd9853
7
- data.tar.gz: 5c85b1ec786c3c0c3f55cec3b0f6edb0764cd62a67cb8cb247db984a8ed188cb027cf54cac9909b5050533b90205de9ed3f17a4b37ae5be54e2665fde103cf37
6
+ metadata.gz: 4c3a2444b50de090272343afcb69f80acbed39650ea6d526ca95026f788e11d6b285b2cfd98a42c9882604778b32d0cd7baa60bf7e3da9ed62e1a2a83ce096a1
7
+ data.tar.gz: 3997d803535205f5efdae3494f5ddef2e04ccc39c76c03605833207f7763ab9d872ceed1223f646792f63a31983a18790c2105ee9d65c70d6cb148312731969a
data/README.md CHANGED
@@ -43,33 +43,43 @@ for class and method documentation.
43
43
  See also the [Product Documentation](https://cloud.google.com/scheduler)
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/scheduler/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::Scheduler::V1beta1::CloudScheduler::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).
@@ -32,6 +32,9 @@ module Google
32
32
  # schedule asynchronous jobs.
33
33
  #
34
34
  class Client
35
+ # @private
36
+ API_VERSION = ""
37
+
35
38
  # @private
36
39
  DEFAULT_ENDPOINT_TEMPLATE = "cloudscheduler.$UNIVERSE_DOMAIN$"
37
40
 
@@ -187,14 +190,26 @@ module Google
187
190
  universe_domain: @config.universe_domain,
188
191
  channel_args: @config.channel_args,
189
192
  interceptors: @config.interceptors,
190
- channel_pool_config: @config.channel_pool
193
+ channel_pool_config: @config.channel_pool,
194
+ logger: @config.logger
191
195
  )
192
196
 
197
+ @cloud_scheduler_stub.stub_logger&.info do |entry|
198
+ entry.set_system_name
199
+ entry.set_service
200
+ entry.message = "Created client for #{entry.service}"
201
+ entry.set_credentials_fields credentials
202
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
203
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
204
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
205
+ end
206
+
193
207
  @location_client = Google::Cloud::Location::Locations::Client.new do |config|
194
208
  config.credentials = credentials
195
209
  config.quota_project = @quota_project_id
196
210
  config.endpoint = @cloud_scheduler_stub.endpoint
197
211
  config.universe_domain = @cloud_scheduler_stub.universe_domain
212
+ config.logger = @cloud_scheduler_stub.logger if config.respond_to? :logger=
198
213
  end
199
214
  end
200
215
 
@@ -205,6 +220,15 @@ module Google
205
220
  #
206
221
  attr_reader :location_client
207
222
 
223
+ ##
224
+ # The logger used for request/response debug logging.
225
+ #
226
+ # @return [Logger]
227
+ #
228
+ def logger
229
+ @cloud_scheduler_stub.logger
230
+ end
231
+
208
232
  # Service calls
209
233
 
210
234
  ##
@@ -298,10 +322,11 @@ module Google
298
322
  # Customize the options with defaults
299
323
  metadata = @config.rpcs.list_jobs.metadata.to_h
300
324
 
301
- # Set x-goog-api-client and x-goog-user-project headers
325
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
302
326
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
303
327
  lib_name: @config.lib_name, lib_version: @config.lib_version,
304
328
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
329
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
305
330
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
306
331
 
307
332
  header_params = {}
@@ -323,7 +348,7 @@ module Google
323
348
  @cloud_scheduler_stub.call_rpc :list_jobs, request, options: options do |response, operation|
324
349
  response = ::Gapic::PagedEnumerable.new @cloud_scheduler_stub, :list_jobs, request, response, operation, options
325
350
  yield response, operation if block_given?
326
- return response
351
+ throw :response, response
327
352
  end
328
353
  rescue ::GRPC::BadStatus => e
329
354
  raise ::Google::Cloud::Error.from_error(e)
@@ -385,10 +410,11 @@ module Google
385
410
  # Customize the options with defaults
386
411
  metadata = @config.rpcs.get_job.metadata.to_h
387
412
 
388
- # Set x-goog-api-client and x-goog-user-project headers
413
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
389
414
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
390
415
  lib_name: @config.lib_name, lib_version: @config.lib_version,
391
416
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
417
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
392
418
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
393
419
 
394
420
  header_params = {}
@@ -409,7 +435,6 @@ module Google
409
435
 
410
436
  @cloud_scheduler_stub.call_rpc :get_job, request, options: options do |response, operation|
411
437
  yield response, operation if block_given?
412
- return response
413
438
  end
414
439
  rescue ::GRPC::BadStatus => e
415
440
  raise ::Google::Cloud::Error.from_error(e)
@@ -478,10 +503,11 @@ module Google
478
503
  # Customize the options with defaults
479
504
  metadata = @config.rpcs.create_job.metadata.to_h
480
505
 
481
- # Set x-goog-api-client and x-goog-user-project headers
506
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
482
507
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
483
508
  lib_name: @config.lib_name, lib_version: @config.lib_version,
484
509
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
510
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
485
511
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
486
512
 
487
513
  header_params = {}
@@ -502,7 +528,6 @@ module Google
502
528
 
503
529
  @cloud_scheduler_stub.call_rpc :create_job, request, options: options do |response, operation|
504
530
  yield response, operation if block_given?
505
- return response
506
531
  end
507
532
  rescue ::GRPC::BadStatus => e
508
533
  raise ::Google::Cloud::Error.from_error(e)
@@ -578,10 +603,11 @@ module Google
578
603
  # Customize the options with defaults
579
604
  metadata = @config.rpcs.update_job.metadata.to_h
580
605
 
581
- # Set x-goog-api-client and x-goog-user-project headers
606
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
582
607
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
583
608
  lib_name: @config.lib_name, lib_version: @config.lib_version,
584
609
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
610
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
585
611
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
586
612
 
587
613
  header_params = {}
@@ -602,7 +628,6 @@ module Google
602
628
 
603
629
  @cloud_scheduler_stub.call_rpc :update_job, request, options: options do |response, operation|
604
630
  yield response, operation if block_given?
605
- return response
606
631
  end
607
632
  rescue ::GRPC::BadStatus => e
608
633
  raise ::Google::Cloud::Error.from_error(e)
@@ -668,10 +693,11 @@ module Google
668
693
  # Customize the options with defaults
669
694
  metadata = @config.rpcs.delete_job.metadata.to_h
670
695
 
671
- # Set x-goog-api-client and x-goog-user-project headers
696
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
672
697
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
673
698
  lib_name: @config.lib_name, lib_version: @config.lib_version,
674
699
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
700
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
675
701
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
676
702
 
677
703
  header_params = {}
@@ -692,7 +718,6 @@ module Google
692
718
 
693
719
  @cloud_scheduler_stub.call_rpc :delete_job, request, options: options do |response, operation|
694
720
  yield response, operation if block_given?
695
- return response
696
721
  end
697
722
  rescue ::GRPC::BadStatus => e
698
723
  raise ::Google::Cloud::Error.from_error(e)
@@ -764,10 +789,11 @@ module Google
764
789
  # Customize the options with defaults
765
790
  metadata = @config.rpcs.pause_job.metadata.to_h
766
791
 
767
- # Set x-goog-api-client and x-goog-user-project headers
792
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
768
793
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
769
794
  lib_name: @config.lib_name, lib_version: @config.lib_version,
770
795
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
796
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
771
797
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
772
798
 
773
799
  header_params = {}
@@ -788,7 +814,6 @@ module Google
788
814
 
789
815
  @cloud_scheduler_stub.call_rpc :pause_job, request, options: options do |response, operation|
790
816
  yield response, operation if block_given?
791
- return response
792
817
  end
793
818
  rescue ::GRPC::BadStatus => e
794
819
  raise ::Google::Cloud::Error.from_error(e)
@@ -860,10 +885,11 @@ module Google
860
885
  # Customize the options with defaults
861
886
  metadata = @config.rpcs.resume_job.metadata.to_h
862
887
 
863
- # Set x-goog-api-client and x-goog-user-project headers
888
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
864
889
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
865
890
  lib_name: @config.lib_name, lib_version: @config.lib_version,
866
891
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
892
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
867
893
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
868
894
 
869
895
  header_params = {}
@@ -884,7 +910,6 @@ module Google
884
910
 
885
911
  @cloud_scheduler_stub.call_rpc :resume_job, request, options: options do |response, operation|
886
912
  yield response, operation if block_given?
887
- return response
888
913
  end
889
914
  rescue ::GRPC::BadStatus => e
890
915
  raise ::Google::Cloud::Error.from_error(e)
@@ -953,10 +978,11 @@ module Google
953
978
  # Customize the options with defaults
954
979
  metadata = @config.rpcs.run_job.metadata.to_h
955
980
 
956
- # Set x-goog-api-client and x-goog-user-project headers
981
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
957
982
  metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
958
983
  lib_name: @config.lib_name, lib_version: @config.lib_version,
959
984
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION
985
+ metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
960
986
  metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
961
987
 
962
988
  header_params = {}
@@ -977,7 +1003,6 @@ module Google
977
1003
 
978
1004
  @cloud_scheduler_stub.call_rpc :run_job, request, options: options do |response, operation|
979
1005
  yield response, operation if block_given?
980
- return response
981
1006
  end
982
1007
  rescue ::GRPC::BadStatus => e
983
1008
  raise ::Google::Cloud::Error.from_error(e)
@@ -1066,6 +1091,11 @@ module Google
1066
1091
  # default endpoint URL. The default value of nil uses the environment
1067
1092
  # universe (usually the default "googleapis.com" universe).
1068
1093
  # @return [::String,nil]
1094
+ # @!attribute [rw] logger
1095
+ # A custom logger to use for request/response debug logging, or the value
1096
+ # `:default` (the default) to construct a default logger, or `nil` to
1097
+ # explicitly disable logging.
1098
+ # @return [::Logger,:default,nil]
1069
1099
  #
1070
1100
  class Configuration
1071
1101
  extend ::Gapic::Config
@@ -1090,6 +1120,7 @@ module Google
1090
1120
  config_attr :retry_policy, nil, ::Hash, ::Proc, nil
1091
1121
  config_attr :quota_project, nil, ::String, nil
1092
1122
  config_attr :universe_domain, nil, ::String, nil
1123
+ config_attr :logger, :default, ::Logger, nil, :default
1093
1124
 
1094
1125
  # @private
1095
1126
  def initialize parent_config = nil
@@ -34,6 +34,9 @@ module Google
34
34
  # schedule asynchronous jobs.
35
35
  #
36
36
  class Client
37
+ # @private
38
+ API_VERSION = ""
39
+
37
40
  # @private
38
41
  DEFAULT_ENDPOINT_TEMPLATE = "cloudscheduler.$UNIVERSE_DOMAIN$"
39
42
 
@@ -180,15 +183,27 @@ module Google
180
183
  endpoint: @config.endpoint,
181
184
  endpoint_template: DEFAULT_ENDPOINT_TEMPLATE,
182
185
  universe_domain: @config.universe_domain,
183
- credentials: credentials
186
+ credentials: credentials,
187
+ logger: @config.logger
184
188
  )
185
189
 
190
+ @cloud_scheduler_stub.logger(stub: true)&.info do |entry|
191
+ entry.set_system_name
192
+ entry.set_service
193
+ entry.message = "Created client for #{entry.service}"
194
+ entry.set_credentials_fields credentials
195
+ entry.set "customEndpoint", @config.endpoint if @config.endpoint
196
+ entry.set "defaultTimeout", @config.timeout if @config.timeout
197
+ entry.set "quotaProject", @quota_project_id if @quota_project_id
198
+ end
199
+
186
200
  @location_client = Google::Cloud::Location::Locations::Rest::Client.new do |config|
187
201
  config.credentials = credentials
188
202
  config.quota_project = @quota_project_id
189
203
  config.endpoint = @cloud_scheduler_stub.endpoint
190
204
  config.universe_domain = @cloud_scheduler_stub.universe_domain
191
205
  config.bindings_override = @config.bindings_override
206
+ config.logger = @cloud_scheduler_stub.logger if config.respond_to? :logger=
192
207
  end
193
208
  end
194
209
 
@@ -199,6 +214,15 @@ module Google
199
214
  #
200
215
  attr_reader :location_client
201
216
 
217
+ ##
218
+ # The logger used for request/response debug logging.
219
+ #
220
+ # @return [Logger]
221
+ #
222
+ def logger
223
+ @cloud_scheduler_stub.logger
224
+ end
225
+
202
226
  # Service calls
203
227
 
204
228
  ##
@@ -291,12 +315,13 @@ module Google
291
315
  # Customize the options with defaults
292
316
  call_metadata = @config.rpcs.list_jobs.metadata.to_h
293
317
 
294
- # Set x-goog-api-client and x-goog-user-project headers
318
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
295
319
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
296
320
  lib_name: @config.lib_name, lib_version: @config.lib_version,
297
321
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
298
322
  transports_version_send: [:rest]
299
323
 
324
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
300
325
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
301
326
 
302
327
  options.apply_defaults timeout: @config.rpcs.list_jobs.timeout,
@@ -310,7 +335,7 @@ module Google
310
335
  @cloud_scheduler_stub.list_jobs request, options do |result, operation|
311
336
  result = ::Gapic::Rest::PagedEnumerable.new @cloud_scheduler_stub, :list_jobs, "jobs", request, result, options
312
337
  yield result, operation if block_given?
313
- return result
338
+ throw :response, result
314
339
  end
315
340
  rescue ::Gapic::Rest::Error => e
316
341
  raise ::Google::Cloud::Error.from_error(e)
@@ -371,12 +396,13 @@ module Google
371
396
  # Customize the options with defaults
372
397
  call_metadata = @config.rpcs.get_job.metadata.to_h
373
398
 
374
- # Set x-goog-api-client and x-goog-user-project headers
399
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
375
400
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
376
401
  lib_name: @config.lib_name, lib_version: @config.lib_version,
377
402
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
378
403
  transports_version_send: [:rest]
379
404
 
405
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
380
406
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
381
407
 
382
408
  options.apply_defaults timeout: @config.rpcs.get_job.timeout,
@@ -389,7 +415,6 @@ module Google
389
415
 
390
416
  @cloud_scheduler_stub.get_job request, options do |result, operation|
391
417
  yield result, operation if block_given?
392
- return result
393
418
  end
394
419
  rescue ::Gapic::Rest::Error => e
395
420
  raise ::Google::Cloud::Error.from_error(e)
@@ -457,12 +482,13 @@ module Google
457
482
  # Customize the options with defaults
458
483
  call_metadata = @config.rpcs.create_job.metadata.to_h
459
484
 
460
- # Set x-goog-api-client and x-goog-user-project headers
485
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
461
486
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
462
487
  lib_name: @config.lib_name, lib_version: @config.lib_version,
463
488
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
464
489
  transports_version_send: [:rest]
465
490
 
491
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
466
492
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
467
493
 
468
494
  options.apply_defaults timeout: @config.rpcs.create_job.timeout,
@@ -475,7 +501,6 @@ module Google
475
501
 
476
502
  @cloud_scheduler_stub.create_job request, options do |result, operation|
477
503
  yield result, operation if block_given?
478
- return result
479
504
  end
480
505
  rescue ::Gapic::Rest::Error => e
481
506
  raise ::Google::Cloud::Error.from_error(e)
@@ -550,12 +575,13 @@ module Google
550
575
  # Customize the options with defaults
551
576
  call_metadata = @config.rpcs.update_job.metadata.to_h
552
577
 
553
- # Set x-goog-api-client and x-goog-user-project headers
578
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
554
579
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
555
580
  lib_name: @config.lib_name, lib_version: @config.lib_version,
556
581
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
557
582
  transports_version_send: [:rest]
558
583
 
584
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
559
585
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
560
586
 
561
587
  options.apply_defaults timeout: @config.rpcs.update_job.timeout,
@@ -568,7 +594,6 @@ module Google
568
594
 
569
595
  @cloud_scheduler_stub.update_job request, options do |result, operation|
570
596
  yield result, operation if block_given?
571
- return result
572
597
  end
573
598
  rescue ::Gapic::Rest::Error => e
574
599
  raise ::Google::Cloud::Error.from_error(e)
@@ -633,12 +658,13 @@ module Google
633
658
  # Customize the options with defaults
634
659
  call_metadata = @config.rpcs.delete_job.metadata.to_h
635
660
 
636
- # Set x-goog-api-client and x-goog-user-project headers
661
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
637
662
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
638
663
  lib_name: @config.lib_name, lib_version: @config.lib_version,
639
664
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
640
665
  transports_version_send: [:rest]
641
666
 
667
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
642
668
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
643
669
 
644
670
  options.apply_defaults timeout: @config.rpcs.delete_job.timeout,
@@ -651,7 +677,6 @@ module Google
651
677
 
652
678
  @cloud_scheduler_stub.delete_job request, options do |result, operation|
653
679
  yield result, operation if block_given?
654
- return result
655
680
  end
656
681
  rescue ::Gapic::Rest::Error => e
657
682
  raise ::Google::Cloud::Error.from_error(e)
@@ -722,12 +747,13 @@ module Google
722
747
  # Customize the options with defaults
723
748
  call_metadata = @config.rpcs.pause_job.metadata.to_h
724
749
 
725
- # Set x-goog-api-client and x-goog-user-project headers
750
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
726
751
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
727
752
  lib_name: @config.lib_name, lib_version: @config.lib_version,
728
753
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
729
754
  transports_version_send: [:rest]
730
755
 
756
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
731
757
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
732
758
 
733
759
  options.apply_defaults timeout: @config.rpcs.pause_job.timeout,
@@ -740,7 +766,6 @@ module Google
740
766
 
741
767
  @cloud_scheduler_stub.pause_job request, options do |result, operation|
742
768
  yield result, operation if block_given?
743
- return result
744
769
  end
745
770
  rescue ::Gapic::Rest::Error => e
746
771
  raise ::Google::Cloud::Error.from_error(e)
@@ -811,12 +836,13 @@ module Google
811
836
  # Customize the options with defaults
812
837
  call_metadata = @config.rpcs.resume_job.metadata.to_h
813
838
 
814
- # Set x-goog-api-client and x-goog-user-project headers
839
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
815
840
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
816
841
  lib_name: @config.lib_name, lib_version: @config.lib_version,
817
842
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
818
843
  transports_version_send: [:rest]
819
844
 
845
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
820
846
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
821
847
 
822
848
  options.apply_defaults timeout: @config.rpcs.resume_job.timeout,
@@ -829,7 +855,6 @@ module Google
829
855
 
830
856
  @cloud_scheduler_stub.resume_job request, options do |result, operation|
831
857
  yield result, operation if block_given?
832
- return result
833
858
  end
834
859
  rescue ::Gapic::Rest::Error => e
835
860
  raise ::Google::Cloud::Error.from_error(e)
@@ -897,12 +922,13 @@ module Google
897
922
  # Customize the options with defaults
898
923
  call_metadata = @config.rpcs.run_job.metadata.to_h
899
924
 
900
- # Set x-goog-api-client and x-goog-user-project headers
925
+ # Set x-goog-api-client, x-goog-user-project and x-goog-api-version headers
901
926
  call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
902
927
  lib_name: @config.lib_name, lib_version: @config.lib_version,
903
928
  gapic_version: ::Google::Cloud::Scheduler::V1beta1::VERSION,
904
929
  transports_version_send: [:rest]
905
930
 
931
+ call_metadata[:"x-goog-api-version"] = API_VERSION unless API_VERSION.empty?
906
932
  call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
907
933
 
908
934
  options.apply_defaults timeout: @config.rpcs.run_job.timeout,
@@ -915,7 +941,6 @@ module Google
915
941
 
916
942
  @cloud_scheduler_stub.run_job request, options do |result, operation|
917
943
  yield result, operation if block_given?
918
- return result
919
944
  end
920
945
  rescue ::Gapic::Rest::Error => e
921
946
  raise ::Google::Cloud::Error.from_error(e)
@@ -995,6 +1020,11 @@ module Google
995
1020
  # default endpoint URL. The default value of nil uses the environment
996
1021
  # universe (usually the default "googleapis.com" universe).
997
1022
  # @return [::String,nil]
1023
+ # @!attribute [rw] logger
1024
+ # A custom logger to use for request/response debug logging, or the value
1025
+ # `:default` (the default) to construct a default logger, or `nil` to
1026
+ # explicitly disable logging.
1027
+ # @return [::Logger,:default,nil]
998
1028
  #
999
1029
  class Configuration
1000
1030
  extend ::Gapic::Config
@@ -1023,6 +1053,7 @@ module Google
1023
1053
  # by the host service.
1024
1054
  # @return [::Hash{::Symbol=>::Array<::Gapic::Rest::GrpcTranscoder::HttpBinding>}]
1025
1055
  config_attr :bindings_override, {}, ::Hash, nil
1056
+ config_attr :logger, :default, ::Logger, nil, :default
1026
1057
 
1027
1058
  # @private
1028
1059
  def initialize parent_config = nil
@@ -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 list_jobs 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: "list_jobs",
93
106
  options: options
94
107
  )
95
108
  operation = ::Gapic::Rest::TransportOperation.new response
96
109
  result = ::Google::Cloud::Scheduler::V1beta1::ListJobsResponse.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: "get_job",
131
146
  options: options
132
147
  )
133
148
  operation = ::Gapic::Rest::TransportOperation.new response
134
149
  result = ::Google::Cloud::Scheduler::V1beta1::Job.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: "create_job",
169
186
  options: options
170
187
  )
171
188
  operation = ::Gapic::Rest::TransportOperation.new response
172
189
  result = ::Google::Cloud::Scheduler::V1beta1::Job.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: "update_job",
207
226
  options: options
208
227
  )
209
228
  operation = ::Gapic::Rest::TransportOperation.new response
210
229
  result = ::Google::Cloud::Scheduler::V1beta1::Job.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
  ##
@@ -239,16 +259,18 @@ module Google
239
259
 
240
260
  response = @client_stub.make_http_request(
241
261
  verb,
242
- uri: uri,
243
- body: body || "",
244
- params: query_string_params,
262
+ uri: uri,
263
+ body: body || "",
264
+ params: query_string_params,
265
+ method_name: "delete_job",
245
266
  options: options
246
267
  )
247
268
  operation = ::Gapic::Rest::TransportOperation.new response
248
269
  result = ::Google::Protobuf::Empty.decode_json response.body, ignore_unknown_fields: true
249
-
250
- yield result, operation if block_given?
251
- result
270
+ catch :response do
271
+ yield result, operation if block_given?
272
+ result
273
+ end
252
274
  end
253
275
 
254
276
  ##
@@ -277,16 +299,18 @@ module Google
277
299
 
278
300
  response = @client_stub.make_http_request(
279
301
  verb,
280
- uri: uri,
281
- body: body || "",
282
- params: query_string_params,
302
+ uri: uri,
303
+ body: body || "",
304
+ params: query_string_params,
305
+ method_name: "pause_job",
283
306
  options: options
284
307
  )
285
308
  operation = ::Gapic::Rest::TransportOperation.new response
286
309
  result = ::Google::Cloud::Scheduler::V1beta1::Job.decode_json response.body, ignore_unknown_fields: true
287
-
288
- yield result, operation if block_given?
289
- result
310
+ catch :response do
311
+ yield result, operation if block_given?
312
+ result
313
+ end
290
314
  end
291
315
 
292
316
  ##
@@ -315,16 +339,18 @@ module Google
315
339
 
316
340
  response = @client_stub.make_http_request(
317
341
  verb,
318
- uri: uri,
319
- body: body || "",
320
- params: query_string_params,
342
+ uri: uri,
343
+ body: body || "",
344
+ params: query_string_params,
345
+ method_name: "resume_job",
321
346
  options: options
322
347
  )
323
348
  operation = ::Gapic::Rest::TransportOperation.new response
324
349
  result = ::Google::Cloud::Scheduler::V1beta1::Job.decode_json response.body, ignore_unknown_fields: true
325
-
326
- yield result, operation if block_given?
327
- result
350
+ catch :response do
351
+ yield result, operation if block_given?
352
+ result
353
+ end
328
354
  end
329
355
 
330
356
  ##
@@ -353,16 +379,18 @@ module Google
353
379
 
354
380
  response = @client_stub.make_http_request(
355
381
  verb,
356
- uri: uri,
357
- body: body || "",
358
- params: query_string_params,
382
+ uri: uri,
383
+ body: body || "",
384
+ params: query_string_params,
385
+ method_name: "run_job",
359
386
  options: options
360
387
  )
361
388
  operation = ::Gapic::Rest::TransportOperation.new response
362
389
  result = ::Google::Cloud::Scheduler::V1beta1::Job.decode_json response.body, ignore_unknown_fields: true
363
-
364
- yield result, operation if block_given?
365
- result
390
+ catch :response do
391
+ yield result, operation if block_given?
392
+ result
393
+ end
366
394
  end
367
395
 
368
396
  ##
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Scheduler
23
23
  module V1beta1
24
- VERSION = "0.11.0"
24
+ VERSION = "0.12.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
@@ -118,6 +121,10 @@ module Google
118
121
  # @return [::String]
119
122
  # Optional link to proto reference documentation. Example:
120
123
  # https://cloud.google.com/pubsub/lite/docs/reference/rpc
124
+ # @!attribute [rw] rest_reference_documentation_uri
125
+ # @return [::String]
126
+ # Optional link to REST reference documentation. Example:
127
+ # https://cloud.google.com/pubsub/lite/docs/reference/rest
121
128
  class Publishing
122
129
  include ::Google::Protobuf::MessageExts
123
130
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -192,9 +199,32 @@ module Google
192
199
  # @!attribute [rw] common
193
200
  # @return [::Google::Api::CommonLanguageSettings]
194
201
  # Some settings.
202
+ # @!attribute [rw] experimental_features
203
+ # @return [::Google::Api::PythonSettings::ExperimentalFeatures]
204
+ # Experimental features to be included during client library generation.
195
205
  class PythonSettings
196
206
  include ::Google::Protobuf::MessageExts
197
207
  extend ::Google::Protobuf::MessageExts::ClassMethods
208
+
209
+ # Experimental features to be included during client library generation.
210
+ # These fields will be deprecated once the feature graduates and is enabled
211
+ # by default.
212
+ # @!attribute [rw] rest_async_io_enabled
213
+ # @return [::Boolean]
214
+ # Enables generation of asynchronous REST clients if `rest` transport is
215
+ # enabled. By default, asynchronous REST clients will not be generated.
216
+ # This feature will be enabled by default 1 month after launching the
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.
224
+ class ExperimentalFeatures
225
+ include ::Google::Protobuf::MessageExts
226
+ extend ::Google::Protobuf::MessageExts::ClassMethods
227
+ end
198
228
  end
199
229
 
200
230
  # Settings for Node client libraries.
@@ -276,9 +306,28 @@ module Google
276
306
  # @!attribute [rw] common
277
307
  # @return [::Google::Api::CommonLanguageSettings]
278
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
279
319
  class GoSettings
280
320
  include ::Google::Protobuf::MessageExts
281
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
282
331
  end
283
332
 
284
333
  # Describes the generator configuration for a method.
@@ -286,6 +335,13 @@ module Google
286
335
  # @return [::String]
287
336
  # The fully qualified name of the method, for which the options below apply.
288
337
  # This is used to find the method to apply the options.
338
+ #
339
+ # Example:
340
+ #
341
+ # publishing:
342
+ # method_settings:
343
+ # - selector: google.storage.control.v2.StorageControl.CreateFolder
344
+ # # method settings for CreateFolder...
289
345
  # @!attribute [rw] long_running
290
346
  # @return [::Google::Api::MethodSettings::LongRunning]
291
347
  # Describes settings to use for long-running operations when generating
@@ -294,17 +350,14 @@ module Google
294
350
  #
295
351
  # Example of a YAML configuration::
296
352
  #
297
- # publishing:
298
- # method_settings:
353
+ # publishing:
354
+ # method_settings:
299
355
  # - selector: google.cloud.speech.v2.Speech.BatchRecognize
300
356
  # long_running:
301
- # initial_poll_delay:
302
- # seconds: 60 # 1 minute
357
+ # initial_poll_delay: 60s # 1 minute
303
358
  # poll_delay_multiplier: 1.5
304
- # max_poll_delay:
305
- # seconds: 360 # 6 minutes
306
- # total_poll_timeout:
307
- # seconds: 54000 # 90 minutes
359
+ # max_poll_delay: 360s # 6 minutes
360
+ # total_poll_timeout: 54000s # 90 minutes
308
361
  # @!attribute [rw] auto_populated_fields
309
362
  # @return [::Array<::String>]
310
363
  # List of top-level fields of the request message, that should be
@@ -313,8 +366,8 @@ module Google
313
366
  #
314
367
  # Example of a YAML configuration:
315
368
  #
316
- # publishing:
317
- # method_settings:
369
+ # publishing:
370
+ # method_settings:
318
371
  # - selector: google.example.v1.ExampleService.CreateExample
319
372
  # auto_populated_fields:
320
373
  # - request_id
@@ -350,6 +403,17 @@ module Google
350
403
  end
351
404
  end
352
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
+
353
417
  # The organization for which the client libraries are being published.
354
418
  # Affects the url where generated docs are published, etc.
355
419
  module ClientLibraryOrganization
@@ -124,8 +124,13 @@ module Google
124
124
  # @return [::String]
125
125
  # The plural name used in the resource name and permission names, such as
126
126
  # 'projects' for the resource name of 'projects/\\{project}' and the permission
127
- # name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same
128
- # concept of the `plural` field in k8s CRD spec
127
+ # name of 'cloudresourcemanager.googleapis.com/projects.get'. One exception
128
+ # to this is for Nested Collections that have stuttering names, as defined
129
+ # in [AIP-122](https://google.aip.dev/122#nested-collections), where the
130
+ # collection ID in the resource name pattern does not necessarily directly
131
+ # match the `plural` value.
132
+ #
133
+ # It is the same concept of the `plural` field in k8s CRD spec
129
134
  # https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
130
135
  #
131
136
  # Note: The plural form is required even for singleton resources. See
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-scheduler-v1beta1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.12.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-26 00:00:00.000000000 Z
11
+ date: 2024-12-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -16,7 +16,7 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.21.1
19
+ version: 0.24.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
22
  version: 2.a
@@ -26,7 +26,7 @@ dependencies:
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 0.21.1
29
+ version: 0.24.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
32
  version: 2.a
@@ -130,7 +130,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  requirements: []
133
- rubygems_version: 3.5.6
133
+ rubygems_version: 3.5.23
134
134
  signing_key:
135
135
  specification_version: 4
136
136
  summary: Creates and manages jobs run on a regular recurring schedule.