google-api-client 0.44.2 → 0.45.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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -0
  3. data/generated/google/apis/admob_v1.rb +4 -1
  4. data/generated/google/apis/admob_v1/classes.rb +2 -2
  5. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  6. data/generated/google/apis/androidenterprise_v1/service.rb +2 -2
  7. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  8. data/generated/google/apis/apigee_v1.rb +1 -1
  9. data/generated/google/apis/apigee_v1/classes.rb +206 -2
  10. data/generated/google/apis/apigee_v1/representations.rb +74 -0
  11. data/generated/google/apis/apigee_v1/service.rb +41 -19
  12. data/generated/google/apis/appengine_v1.rb +1 -1
  13. data/generated/google/apis/appengine_v1beta.rb +1 -1
  14. data/generated/google/apis/appsmarket_v2.rb +1 -1
  15. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  16. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -0
  17. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -0
  18. data/generated/google/apis/assuredworkloads_v1beta1.rb +34 -0
  19. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +458 -0
  20. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +230 -0
  21. data/generated/google/apis/assuredworkloads_v1beta1/service.rb +328 -0
  22. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  23. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +15 -5
  24. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  25. data/generated/google/apis/chat_v1.rb +1 -1
  26. data/generated/google/apis/chat_v1/classes.rb +3 -3
  27. data/generated/google/apis/classroom_v1.rb +7 -1
  28. data/generated/google/apis/classroom_v1/classes.rb +132 -0
  29. data/generated/google/apis/classroom_v1/representations.rb +43 -0
  30. data/generated/google/apis/classroom_v1/service.rb +240 -0
  31. data/generated/google/apis/cloudasset_v1.rb +1 -1
  32. data/generated/google/apis/cloudasset_v1/classes.rb +52 -0
  33. data/generated/google/apis/cloudasset_v1/representations.rb +16 -0
  34. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  35. data/generated/google/apis/cloudasset_v1p4beta1/classes.rb +4 -2
  36. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  37. data/generated/google/apis/cloudbilling_v1/classes.rb +4 -4
  38. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  39. data/generated/google/apis/cloudidentity_v1/classes.rb +84 -0
  40. data/generated/google/apis/cloudidentity_v1/representations.rb +46 -0
  41. data/generated/google/apis/cloudidentity_v1/service.rb +39 -1
  42. data/generated/google/apis/cloudkms_v1.rb +1 -1
  43. data/generated/google/apis/cloudkms_v1/classes.rb +7 -0
  44. data/generated/google/apis/cloudkms_v1/representations.rb +1 -0
  45. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  46. data/generated/google/apis/cloudtasks_v2/classes.rb +7 -0
  47. data/generated/google/apis/cloudtasks_v2/representations.rb +1 -0
  48. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  49. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +25 -19
  50. data/generated/google/apis/cloudtasks_v2beta2/representations.rb +1 -0
  51. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  52. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +7 -0
  53. data/generated/google/apis/cloudtasks_v2beta3/representations.rb +1 -0
  54. data/generated/google/apis/container_v1beta1.rb +1 -1
  55. data/generated/google/apis/container_v1beta1/classes.rb +28 -0
  56. data/generated/google/apis/container_v1beta1/representations.rb +15 -0
  57. data/generated/google/apis/content_v2_1.rb +1 -1
  58. data/generated/google/apis/content_v2_1/classes.rb +1 -1
  59. data/generated/google/apis/customsearch_v1.rb +1 -1
  60. data/generated/google/apis/customsearch_v1/service.rb +2 -2
  61. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  62. data/generated/google/apis/dataflow_v1b3/classes.rb +135 -0
  63. data/generated/google/apis/dataflow_v1b3/representations.rb +30 -0
  64. data/generated/google/apis/dataflow_v1b3/service.rb +10 -1
  65. data/generated/google/apis/dataproc_v1.rb +1 -1
  66. data/generated/google/apis/dataproc_v1/classes.rb +3 -3
  67. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  68. data/generated/google/apis/dataproc_v1beta2/classes.rb +5 -4
  69. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  70. data/generated/google/apis/dfareporting_v3_3/service.rb +51 -54
  71. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  72. data/generated/google/apis/dfareporting_v3_4/service.rb +51 -54
  73. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  74. data/generated/google/apis/dialogflow_v3beta1/classes.rb +18 -0
  75. data/generated/google/apis/dialogflow_v3beta1/representations.rb +2 -0
  76. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  77. data/generated/google/apis/firebasehosting_v1beta1/service.rb +4 -4
  78. data/generated/google/apis/healthcare_v1.rb +1 -1
  79. data/generated/google/apis/healthcare_v1/service.rb +1 -3
  80. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  81. data/generated/google/apis/healthcare_v1beta1/classes.rb +7 -0
  82. data/generated/google/apis/healthcare_v1beta1/representations.rb +1 -0
  83. data/generated/google/apis/healthcare_v1beta1/service.rb +1 -3
  84. data/generated/google/apis/iam_v1.rb +1 -1
  85. data/generated/google/apis/iam_v1/service.rb +2 -1
  86. data/generated/google/apis/licensing_v1.rb +4 -3
  87. data/generated/google/apis/licensing_v1/classes.rb +1 -1
  88. data/generated/google/apis/licensing_v1/service.rb +55 -85
  89. data/generated/google/apis/monitoring_v1.rb +1 -1
  90. data/generated/google/apis/monitoring_v1/classes.rb +10 -10
  91. data/generated/google/apis/monitoring_v3.rb +1 -1
  92. data/generated/google/apis/monitoring_v3/classes.rb +36 -30
  93. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  94. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +68 -0
  95. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +23 -0
  96. data/generated/google/apis/pubsub_v1.rb +1 -1
  97. data/generated/google/apis/pubsub_v1/classes.rb +7 -0
  98. data/generated/google/apis/pubsub_v1/representations.rb +1 -0
  99. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  100. data/generated/google/apis/pubsub_v1beta2/classes.rb +7 -0
  101. data/generated/google/apis/pubsub_v1beta2/representations.rb +1 -0
  102. data/generated/google/apis/pubsublite_v1.rb +1 -1
  103. data/generated/google/apis/pubsublite_v1/classes.rb +72 -0
  104. data/generated/google/apis/pubsublite_v1/representations.rb +33 -0
  105. data/generated/google/apis/pubsublite_v1/service.rb +33 -0
  106. data/generated/google/apis/redis_v1.rb +1 -1
  107. data/generated/google/apis/redis_v1/classes.rb +0 -386
  108. data/generated/google/apis/redis_v1/representations.rb +0 -139
  109. data/generated/google/apis/redis_v1beta1.rb +1 -1
  110. data/generated/google/apis/redis_v1beta1/classes.rb +0 -386
  111. data/generated/google/apis/redis_v1beta1/representations.rb +0 -139
  112. data/generated/google/apis/reseller_v1.rb +2 -2
  113. data/generated/google/apis/reseller_v1/classes.rb +151 -219
  114. data/generated/google/apis/reseller_v1/service.rb +122 -173
  115. data/generated/google/apis/run_v1.rb +1 -1
  116. data/generated/google/apis/run_v1/classes.rb +8 -8
  117. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  118. data/generated/google/apis/sasportal_v1alpha1/classes.rb +20 -0
  119. data/generated/google/apis/sasportal_v1alpha1/representations.rb +13 -0
  120. data/generated/google/apis/sasportal_v1alpha1/service.rb +479 -0
  121. data/generated/google/apis/secretmanager_v1.rb +1 -1
  122. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  123. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +12 -12
  124. data/generated/google/apis/serviceconsumermanagement_v1/service.rb +31 -29
  125. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  126. data/generated/google/apis/servicecontrol_v1/classes.rb +8 -5
  127. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  128. data/generated/google/apis/servicecontrol_v2/classes.rb +7 -4
  129. data/generated/google/apis/sheets_v4.rb +1 -1
  130. data/generated/google/apis/sheets_v4/classes.rb +1 -1
  131. data/generated/google/apis/spanner_v1.rb +1 -1
  132. data/generated/google/apis/spanner_v1/classes.rb +7 -0
  133. data/generated/google/apis/spanner_v1/representations.rb +1 -0
  134. data/generated/google/apis/{sql_v1beta4.rb → sqladmin_v1beta4.rb} +5 -5
  135. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/classes.rb +142 -97
  136. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/representations.rb +104 -87
  137. data/generated/google/apis/{sql_v1beta4 → sqladmin_v1beta4}/service.rb +244 -244
  138. data/generated/google/apis/tagmanager_v2.rb +1 -1
  139. data/generated/google/apis/tasks_v1.rb +1 -1
  140. data/generated/google/apis/tasks_v1/classes.rb +1 -1
  141. data/generated/google/apis/tasks_v1/service.rb +4 -3
  142. data/generated/google/apis/testing_v1.rb +1 -1
  143. data/generated/google/apis/testing_v1/classes.rb +2 -2
  144. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  145. data/generated/google/apis/youtube_v3.rb +1 -1
  146. data/generated/google/apis/youtube_v3/classes.rb +46 -845
  147. data/generated/google/apis/youtube_v3/representations.rb +0 -390
  148. data/generated/google/apis/youtube_v3/service.rb +2 -197
  149. data/lib/google/apis/version.rb +1 -1
  150. metadata +11 -11
  151. data/generated/google/apis/plus_v1.rb +0 -43
  152. data/generated/google/apis/plus_v1/classes.rb +0 -2094
  153. data/generated/google/apis/plus_v1/representations.rb +0 -907
  154. data/generated/google/apis/plus_v1/service.rb +0 -451
@@ -28,6 +28,18 @@ module Google
28
28
  include Google::Apis::Core::JsonObjectSupport
29
29
  end
30
30
 
31
+ class ComputeMessageStatsRequest
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class ComputeMessageStatsResponse
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
31
43
  class Cursor
32
44
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
45
 
@@ -114,6 +126,27 @@ module Google
114
126
  end
115
127
  end
116
128
 
129
+ class ComputeMessageStatsRequest
130
+ # @private
131
+ class Representation < Google::Apis::Core::JsonRepresentation
132
+ property :end_cursor, as: 'endCursor', class: Google::Apis::PubsubliteV1::Cursor, decorator: Google::Apis::PubsubliteV1::Cursor::Representation
133
+
134
+ property :partition, :numeric_string => true, as: 'partition'
135
+ property :start_cursor, as: 'startCursor', class: Google::Apis::PubsubliteV1::Cursor, decorator: Google::Apis::PubsubliteV1::Cursor::Representation
136
+
137
+ end
138
+ end
139
+
140
+ class ComputeMessageStatsResponse
141
+ # @private
142
+ class Representation < Google::Apis::Core::JsonRepresentation
143
+ property :message_bytes, :numeric_string => true, as: 'messageBytes'
144
+ property :message_count, :numeric_string => true, as: 'messageCount'
145
+ property :minimum_event_time, as: 'minimumEventTime'
146
+ property :minimum_publish_time, as: 'minimumPublishTime'
147
+ end
148
+ end
149
+
117
150
  class Cursor
118
151
  # @private
119
152
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -512,6 +512,39 @@ module Google
512
512
  command.query['quotaUser'] = quota_user unless quota_user.nil?
513
513
  execute_or_queue_command(command, &block)
514
514
  end
515
+
516
+ # Compute statistics about a range of messages in a given topic and partition.
517
+ # @param [String] topic
518
+ # Required. The topic for which we should compute message stats.
519
+ # @param [Google::Apis::PubsubliteV1::ComputeMessageStatsRequest] compute_message_stats_request_object
520
+ # @param [String] fields
521
+ # Selector specifying which fields to include in a partial response.
522
+ # @param [String] quota_user
523
+ # Available to use for quota purposes for server-side applications. Can be any
524
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
525
+ # @param [Google::Apis::RequestOptions] options
526
+ # Request-specific options
527
+ #
528
+ # @yield [result, err] Result & error if block supplied
529
+ # @yieldparam result [Google::Apis::PubsubliteV1::ComputeMessageStatsResponse] parsed result object
530
+ # @yieldparam err [StandardError] error object if request failed
531
+ #
532
+ # @return [Google::Apis::PubsubliteV1::ComputeMessageStatsResponse]
533
+ #
534
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
535
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
536
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
537
+ def compute_topic_message_stats(topic, compute_message_stats_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
538
+ command = make_simple_command(:post, 'v1/topicStats/{+topic}:computeMessageStats', options)
539
+ command.request_representation = Google::Apis::PubsubliteV1::ComputeMessageStatsRequest::Representation
540
+ command.request_object = compute_message_stats_request_object
541
+ command.response_representation = Google::Apis::PubsubliteV1::ComputeMessageStatsResponse::Representation
542
+ command.response_class = Google::Apis::PubsubliteV1::ComputeMessageStatsResponse
543
+ command.params['topic'] = topic unless topic.nil?
544
+ command.query['fields'] = fields unless fields.nil?
545
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
546
+ execute_or_queue_command(command, &block)
547
+ end
515
548
 
516
549
  protected
517
550
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/memorystore/docs/redis/
26
26
  module RedisV1
27
27
  VERSION = 'V1'
28
- REVISION = '20200810'
28
+ REVISION = '20200916'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -211,392 +211,6 @@ module Google
211
211
  end
212
212
  end
213
213
 
214
- #
215
- class GoogleCloudSaasacceleratorManagementProvidersV1Instance
216
- include Google::Apis::Core::Hashable
217
-
218
- # consumer_defined_name is the name that is set by the consumer. On the other
219
- # hand Name field represents system-assigned id of an instance so consumers are
220
- # not necessarily aware of it. consumer_defined_name is used for notification/UI
221
- # purposes for consumer to recognize their instances.
222
- # Corresponds to the JSON property `consumerDefinedName`
223
- # @return [String]
224
- attr_accessor :consumer_defined_name
225
-
226
- # Output only. Timestamp when the resource was created.
227
- # Corresponds to the JSON property `createTime`
228
- # @return [String]
229
- attr_accessor :create_time
230
-
231
- # Optional. Resource labels to represent user provided metadata. Each label is a
232
- # key-value pair, where both the key and the value are arbitrary strings
233
- # provided by the user.
234
- # Corresponds to the JSON property `labels`
235
- # @return [Hash<String,String>]
236
- attr_accessor :labels
237
-
238
- # The MaintenancePolicies that have been attached to the instance. The key must
239
- # be of the type name of the oneof policy name defined in MaintenancePolicy, and
240
- # the referenced policy must define the same policy type. For complete details
241
- # of MaintenancePolicy, please refer to go/cloud-saas-mw-ug.
242
- # Corresponds to the JSON property `maintenancePolicyNames`
243
- # @return [Hash<String,String>]
244
- attr_accessor :maintenance_policy_names
245
-
246
- # The MaintenanceSchedule contains the scheduling information of published
247
- # maintenance schedule.
248
- # Corresponds to the JSON property `maintenanceSchedules`
249
- # @return [Hash<String,Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule>]
250
- attr_accessor :maintenance_schedules
251
-
252
- # Maintenance settings associated with instance. Allows service producers and
253
- # end users to assign settings that controls maintenance on this instance.
254
- # Corresponds to the JSON property `maintenanceSettings`
255
- # @return [Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings]
256
- attr_accessor :maintenance_settings
257
-
258
- # Unique name of the resource. It uses the form: `projects/`project_id`/
259
- # locations/`location_id`/instances/`instance_id``
260
- # Corresponds to the JSON property `name`
261
- # @return [String]
262
- attr_accessor :name
263
-
264
- # Output only. Custom string attributes used primarily to expose producer-
265
- # specific information in monitoring dashboards. See go/get-instance-metadata.
266
- # Corresponds to the JSON property `producerMetadata`
267
- # @return [Hash<String,String>]
268
- attr_accessor :producer_metadata
269
-
270
- # Output only. The list of data plane resources provisioned for this instance, e.
271
- # g. compute VMs. See go/get-instance-metadata.
272
- # Corresponds to the JSON property `provisionedResources`
273
- # @return [Array<Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource>]
274
- attr_accessor :provisioned_resources
275
-
276
- # Link to the SLM instance template. Only populated when updating SLM instances
277
- # via SSA's Actuation service adaptor. Service producers with custom control
278
- # plane (e.g. Cloud SQL) doesn't need to populate this field. Instead they
279
- # should use software_versions.
280
- # Corresponds to the JSON property `slmInstanceTemplate`
281
- # @return [String]
282
- attr_accessor :slm_instance_template
283
-
284
- # SloMetadata contains resources required for proper SLO classification of the
285
- # instance.
286
- # Corresponds to the JSON property `sloMetadata`
287
- # @return [Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata]
288
- attr_accessor :slo_metadata
289
-
290
- # Software versions that are used to deploy this instance. This can be mutated
291
- # by rollout services.
292
- # Corresponds to the JSON property `softwareVersions`
293
- # @return [Hash<String,String>]
294
- attr_accessor :software_versions
295
-
296
- # Output only. Current lifecycle state of the resource (e.g. if it's being
297
- # created or ready to use).
298
- # Corresponds to the JSON property `state`
299
- # @return [String]
300
- attr_accessor :state
301
-
302
- # Output only. ID of the associated GCP tenant project. See go/get-instance-
303
- # metadata.
304
- # Corresponds to the JSON property `tenantProjectId`
305
- # @return [String]
306
- attr_accessor :tenant_project_id
307
-
308
- # Output only. Timestamp when the resource was last modified.
309
- # Corresponds to the JSON property `updateTime`
310
- # @return [String]
311
- attr_accessor :update_time
312
-
313
- def initialize(**args)
314
- update!(**args)
315
- end
316
-
317
- # Update properties of this object
318
- def update!(**args)
319
- @consumer_defined_name = args[:consumer_defined_name] if args.key?(:consumer_defined_name)
320
- @create_time = args[:create_time] if args.key?(:create_time)
321
- @labels = args[:labels] if args.key?(:labels)
322
- @maintenance_policy_names = args[:maintenance_policy_names] if args.key?(:maintenance_policy_names)
323
- @maintenance_schedules = args[:maintenance_schedules] if args.key?(:maintenance_schedules)
324
- @maintenance_settings = args[:maintenance_settings] if args.key?(:maintenance_settings)
325
- @name = args[:name] if args.key?(:name)
326
- @producer_metadata = args[:producer_metadata] if args.key?(:producer_metadata)
327
- @provisioned_resources = args[:provisioned_resources] if args.key?(:provisioned_resources)
328
- @slm_instance_template = args[:slm_instance_template] if args.key?(:slm_instance_template)
329
- @slo_metadata = args[:slo_metadata] if args.key?(:slo_metadata)
330
- @software_versions = args[:software_versions] if args.key?(:software_versions)
331
- @state = args[:state] if args.key?(:state)
332
- @tenant_project_id = args[:tenant_project_id] if args.key?(:tenant_project_id)
333
- @update_time = args[:update_time] if args.key?(:update_time)
334
- end
335
- end
336
-
337
- # Maintenance schedule which is exposed to customer and potentially end user,
338
- # indicating published upcoming future maintenance schedule
339
- class GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSchedule
340
- include Google::Apis::Core::Hashable
341
-
342
- # Can this scheduled update be rescheduled? By default, it's true and API needs
343
- # to do explicitly check whether it's set, if it's set as false explicitly, it's
344
- # false
345
- # Corresponds to the JSON property `canReschedule`
346
- # @return [Boolean]
347
- attr_accessor :can_reschedule
348
- alias_method :can_reschedule?, :can_reschedule
349
-
350
- # The scheduled end time for the maintenance.
351
- # Corresponds to the JSON property `endTime`
352
- # @return [String]
353
- attr_accessor :end_time
354
-
355
- # The rollout management policy this maintenance schedule is associated with.
356
- # When doing reschedule update request, the reschedule should be against this
357
- # given policy.
358
- # Corresponds to the JSON property `rolloutManagementPolicy`
359
- # @return [String]
360
- attr_accessor :rollout_management_policy
361
-
362
- # The scheduled start time for the maintenance.
363
- # Corresponds to the JSON property `startTime`
364
- # @return [String]
365
- attr_accessor :start_time
366
-
367
- def initialize(**args)
368
- update!(**args)
369
- end
370
-
371
- # Update properties of this object
372
- def update!(**args)
373
- @can_reschedule = args[:can_reschedule] if args.key?(:can_reschedule)
374
- @end_time = args[:end_time] if args.key?(:end_time)
375
- @rollout_management_policy = args[:rollout_management_policy] if args.key?(:rollout_management_policy)
376
- @start_time = args[:start_time] if args.key?(:start_time)
377
- end
378
- end
379
-
380
- # Maintenance settings associated with instance. Allows service producers and
381
- # end users to assign settings that controls maintenance on this instance.
382
- class GoogleCloudSaasacceleratorManagementProvidersV1MaintenanceSettings
383
- include Google::Apis::Core::Hashable
384
-
385
- # Optional. Exclude instance from maintenance. When true, rollout service will
386
- # not attempt maintenance on the instance. Rollout service will include the
387
- # instance in reported rollout progress as not attempted.
388
- # Corresponds to the JSON property `exclude`
389
- # @return [Boolean]
390
- attr_accessor :exclude
391
- alias_method :exclude?, :exclude
392
-
393
- def initialize(**args)
394
- update!(**args)
395
- end
396
-
397
- # Update properties of this object
398
- def update!(**args)
399
- @exclude = args[:exclude] if args.key?(:exclude)
400
- end
401
- end
402
-
403
- # Node information for custom per-node SLO implementations. SSA does not support
404
- # per-node SLO, but producers can populate per-node information in SloMetadata
405
- # for custom precomputations. SSA Eligibility Exporter will emit per-node metric
406
- # based on this information.
407
- class GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata
408
- include Google::Apis::Core::Hashable
409
-
410
- # By default node is eligible if instance is eligible. But individual node might
411
- # be excluded from SLO by adding entry here. For semantic see SloMetadata.
412
- # exclusions. If both instance and node level exclusions are present for time
413
- # period, the node level's reason will be reported by Eligibility Exporter.
414
- # Corresponds to the JSON property `exclusions`
415
- # @return [Array<Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion>]
416
- attr_accessor :exclusions
417
-
418
- # The location of the node, if different from instance location.
419
- # Corresponds to the JSON property `location`
420
- # @return [String]
421
- attr_accessor :location
422
-
423
- # The id of the node. This should be equal to SaasInstanceNode.node_id.
424
- # Corresponds to the JSON property `nodeId`
425
- # @return [String]
426
- attr_accessor :node_id
427
-
428
- def initialize(**args)
429
- update!(**args)
430
- end
431
-
432
- # Update properties of this object
433
- def update!(**args)
434
- @exclusions = args[:exclusions] if args.key?(:exclusions)
435
- @location = args[:location] if args.key?(:location)
436
- @node_id = args[:node_id] if args.key?(:node_id)
437
- end
438
- end
439
-
440
- # Describes provisioned dataplane resources.
441
- class GoogleCloudSaasacceleratorManagementProvidersV1ProvisionedResource
442
- include Google::Apis::Core::Hashable
443
-
444
- # Type of the resource. This can be either a GCP resource or a custom one (e.g.
445
- # another cloud provider's VM). For GCP compute resources use singular form of
446
- # the names listed in GCP compute API documentation (https://cloud.google.com/
447
- # compute/docs/reference/rest/v1/), prefixed with 'compute-', for example: '
448
- # compute-instance', 'compute-disk', 'compute-autoscaler'.
449
- # Corresponds to the JSON property `resourceType`
450
- # @return [String]
451
- attr_accessor :resource_type
452
-
453
- # URL identifying the resource, e.g. "https://www.googleapis.com/compute/v1/
454
- # projects/...)".
455
- # Corresponds to the JSON property `resourceUrl`
456
- # @return [String]
457
- attr_accessor :resource_url
458
-
459
- def initialize(**args)
460
- update!(**args)
461
- end
462
-
463
- # Update properties of this object
464
- def update!(**args)
465
- @resource_type = args[:resource_type] if args.key?(:resource_type)
466
- @resource_url = args[:resource_url] if args.key?(:resource_url)
467
- end
468
- end
469
-
470
- # SloEligibility is a tuple containing eligibility value: true if an instance is
471
- # eligible for SLO calculation or false if it should be excluded from all SLO-
472
- # related calculations along with a user-defined reason.
473
- class GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility
474
- include Google::Apis::Core::Hashable
475
-
476
- # Whether an instance is eligible or ineligible.
477
- # Corresponds to the JSON property `eligible`
478
- # @return [Boolean]
479
- attr_accessor :eligible
480
- alias_method :eligible?, :eligible
481
-
482
- # User-defined reason for the current value of instance eligibility. Usually,
483
- # this can be directly mapped to the internal state. An empty reason is allowed.
484
- # Corresponds to the JSON property `reason`
485
- # @return [String]
486
- attr_accessor :reason
487
-
488
- def initialize(**args)
489
- update!(**args)
490
- end
491
-
492
- # Update properties of this object
493
- def update!(**args)
494
- @eligible = args[:eligible] if args.key?(:eligible)
495
- @reason = args[:reason] if args.key?(:reason)
496
- end
497
- end
498
-
499
- # SloExclusion represents an exclusion in SLI calculation applies to all SLOs.
500
- class GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion
501
- include Google::Apis::Core::Hashable
502
-
503
- # Exclusion duration. No restrictions on the possible values. When an ongoing
504
- # operation is taking longer than initially expected, an existing entry in the
505
- # exclusion list can be updated by extending the duration. This is supported by
506
- # the subsystem exporting eligibility data as long as such extension is
507
- # committed at least 10 minutes before the original exclusion expiration -
508
- # otherwise it is possible that there will be "gaps" in the exclusion
509
- # application in the exported timeseries.
510
- # Corresponds to the JSON property `duration`
511
- # @return [String]
512
- attr_accessor :duration
513
-
514
- # Human-readable reason for the exclusion. This should be a static string (e.g. "
515
- # Disruptive update in progress") and should not contain dynamically generated
516
- # data (e.g. instance name). Can be left empty.
517
- # Corresponds to the JSON property `reason`
518
- # @return [String]
519
- attr_accessor :reason
520
-
521
- # Name of an SLI that this exclusion applies to. Can be left empty, signaling
522
- # that the instance should be excluded from all SLIs defined in the service SLO
523
- # configuration.
524
- # Corresponds to the JSON property `sliName`
525
- # @return [String]
526
- attr_accessor :sli_name
527
-
528
- # Start time of the exclusion. No alignment (e.g. to a full minute) needed.
529
- # Corresponds to the JSON property `startTime`
530
- # @return [String]
531
- attr_accessor :start_time
532
-
533
- def initialize(**args)
534
- update!(**args)
535
- end
536
-
537
- # Update properties of this object
538
- def update!(**args)
539
- @duration = args[:duration] if args.key?(:duration)
540
- @reason = args[:reason] if args.key?(:reason)
541
- @sli_name = args[:sli_name] if args.key?(:sli_name)
542
- @start_time = args[:start_time] if args.key?(:start_time)
543
- end
544
- end
545
-
546
- # SloMetadata contains resources required for proper SLO classification of the
547
- # instance.
548
- class GoogleCloudSaasacceleratorManagementProvidersV1SloMetadata
549
- include Google::Apis::Core::Hashable
550
-
551
- # SloEligibility is a tuple containing eligibility value: true if an instance is
552
- # eligible for SLO calculation or false if it should be excluded from all SLO-
553
- # related calculations along with a user-defined reason.
554
- # Corresponds to the JSON property `eligibility`
555
- # @return [Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1SloEligibility]
556
- attr_accessor :eligibility
557
-
558
- # List of SLO exclusion windows. When multiple entries in the list match (
559
- # matching the exclusion time-window against current time point) the exclusion
560
- # reason used in the first matching entry will be published. It is not needed to
561
- # include expired exclusion in this list, as only the currently applicable
562
- # exclusions are taken into account by the eligibility exporting subsystem (the
563
- # historical state of exclusions will be reflected in the historically produced
564
- # timeseries regardless of the current state). This field can be used to mark
565
- # the instance as temporary ineligible for the purpose of SLO calculation. For
566
- # permanent instance SLO exclusion, use of custom instance eligibility is
567
- # recommended. See 'eligibility' field below.
568
- # Corresponds to the JSON property `exclusions`
569
- # @return [Array<Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1SloExclusion>]
570
- attr_accessor :exclusions
571
-
572
- # Optional. List of nodes. Some producers need to use per-node metadata to
573
- # calculate SLO. This field allows such producers to publish per-node SLO meta
574
- # data, which will be consumed by SSA Eligibility Exporter and published in the
575
- # form of per node metric to Monarch.
576
- # Corresponds to the JSON property `nodes`
577
- # @return [Array<Google::Apis::RedisV1::GoogleCloudSaasacceleratorManagementProvidersV1NodeSloMetadata>]
578
- attr_accessor :nodes
579
-
580
- # Name of the SLO tier the Instance belongs to. This name will be expected to
581
- # match the tiers specified in the service SLO configuration. Field is mandatory
582
- # and must not be empty.
583
- # Corresponds to the JSON property `tier`
584
- # @return [String]
585
- attr_accessor :tier
586
-
587
- def initialize(**args)
588
- update!(**args)
589
- end
590
-
591
- # Update properties of this object
592
- def update!(**args)
593
- @eligibility = args[:eligibility] if args.key?(:eligibility)
594
- @exclusions = args[:exclusions] if args.key?(:exclusions)
595
- @nodes = args[:nodes] if args.key?(:nodes)
596
- @tier = args[:tier] if args.key?(:tier)
597
- end
598
- end
599
-
600
214
  # Request for Import.
601
215
  class ImportInstanceRequest
602
216
  include Google::Apis::Core::Hashable