google-apis-baremetalsolution_v2 0.2.0 → 0.6.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.
@@ -22,90 +22,6 @@ module Google
22
22
  module Apis
23
23
  module BaremetalsolutionV2
24
24
 
25
- # Associates `members` with a `role`.
26
- class Binding
27
- include Google::Apis::Core::Hashable
28
-
29
- # Represents a textual expression in the Common Expression Language (CEL) syntax.
30
- # CEL is a C-like expression language. The syntax and semantics of CEL are
31
- # documented at https://github.com/google/cel-spec. Example (Comparison): title:
32
- # "Summary size limit" description: "Determines if a summary is less than 100
33
- # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
34
- # Requestor is owner" description: "Determines if requestor is the document
35
- # owner" expression: "document.owner == request.auth.claims.email" Example (
36
- # Logic): title: "Public documents" description: "Determine whether the document
37
- # should be publicly visible" expression: "document.type != 'private' &&
38
- # document.type != 'internal'" Example (Data Manipulation): title: "Notification
39
- # string" description: "Create a notification string with a timestamp."
40
- # expression: "'New message received at ' + string(document.create_time)" The
41
- # exact variables and functions that may be referenced within an expression are
42
- # determined by the service that evaluates it. See the service documentation for
43
- # additional information.
44
- # Corresponds to the JSON property `condition`
45
- # @return [Google::Apis::BaremetalsolutionV2::Expr]
46
- attr_accessor :condition
47
-
48
- # Specifies the identities requesting access for a Cloud Platform resource. `
49
- # members` can have the following values: * `allUsers`: A special identifier
50
- # that represents anyone who is on the internet; with or without a Google
51
- # account. * `allAuthenticatedUsers`: A special identifier that represents
52
- # anyone who is authenticated with a Google account or a service account. * `
53
- # user:`emailid``: An email address that represents a specific Google account.
54
- # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
55
- # address that represents a service account. For example, `my-other-app@appspot.
56
- # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
57
- # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
58
- # `uniqueid``: An email address (plus unique identifier) representing a user
59
- # that has been recently deleted. For example, `alice@example.com?uid=
60
- # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
61
- # emailid`` and the recovered user retains the role in the binding. * `deleted:
62
- # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
63
- # identifier) representing a service account that has been recently deleted. For
64
- # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
65
- # If the service account is undeleted, this value reverts to `serviceAccount:`
66
- # emailid`` and the undeleted service account retains the role in the binding. *
67
- # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
68
- # identifier) representing a Google group that has been recently deleted. For
69
- # example, `admins@example.com?uid=123456789012345678901`. If the group is
70
- # recovered, this value reverts to `group:`emailid`` and the recovered group
71
- # retains the role in the binding. * `domain:`domain``: The G Suite domain (
72
- # primary) that represents all the users of that domain. For example, `google.
73
- # com` or `example.com`.
74
- # Corresponds to the JSON property `members`
75
- # @return [Array<String>]
76
- attr_accessor :members
77
-
78
- # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
79
- # , or `roles/owner`.
80
- # Corresponds to the JSON property `role`
81
- # @return [String]
82
- attr_accessor :role
83
-
84
- def initialize(**args)
85
- update!(**args)
86
- end
87
-
88
- # Update properties of this object
89
- def update!(**args)
90
- @condition = args[:condition] if args.key?(:condition)
91
- @members = args[:members] if args.key?(:members)
92
- @role = args[:role] if args.key?(:role)
93
- end
94
- end
95
-
96
- # The request message for Operations.CancelOperation.
97
- class CancelOperationRequest
98
- include Google::Apis::Core::Hashable
99
-
100
- def initialize(**args)
101
- update!(**args)
102
- end
103
-
104
- # Update properties of this object
105
- def update!(**args)
106
- end
107
- end
108
-
109
25
  # A generic empty message that you can re-use to avoid defining duplicated empty
110
26
  # messages in your APIs. A typical example is to use it as the request or the
111
27
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -123,88 +39,46 @@ module Google
123
39
  end
124
40
  end
125
41
 
126
- # Represents a textual expression in the Common Expression Language (CEL) syntax.
127
- # CEL is a C-like expression language. The syntax and semantics of CEL are
128
- # documented at https://github.com/google/cel-spec. Example (Comparison): title:
129
- # "Summary size limit" description: "Determines if a summary is less than 100
130
- # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
131
- # Requestor is owner" description: "Determines if requestor is the document
132
- # owner" expression: "document.owner == request.auth.claims.email" Example (
133
- # Logic): title: "Public documents" description: "Determine whether the document
134
- # should be publicly visible" expression: "document.type != 'private' &&
135
- # document.type != 'internal'" Example (Data Manipulation): title: "Notification
136
- # string" description: "Create a notification string with a timestamp."
137
- # expression: "'New message received at ' + string(document.create_time)" The
138
- # exact variables and functions that may be referenced within an expression are
139
- # determined by the service that evaluates it. See the service documentation for
140
- # additional information.
141
- class Expr
142
- include Google::Apis::Core::Hashable
143
-
144
- # Optional. Description of the expression. This is a longer text which describes
145
- # the expression, e.g. when hovered over it in a UI.
146
- # Corresponds to the JSON property `description`
147
- # @return [String]
148
- attr_accessor :description
149
-
150
- # Textual representation of an expression in Common Expression Language syntax.
151
- # Corresponds to the JSON property `expression`
152
- # @return [String]
153
- attr_accessor :expression
154
-
155
- # Optional. String indicating the location of the expression for error reporting,
156
- # e.g. a file name and a position in the file.
157
- # Corresponds to the JSON property `location`
158
- # @return [String]
159
- attr_accessor :location
160
-
161
- # Optional. Title for the expression, i.e. a short string describing its purpose.
162
- # This can be used e.g. in UIs which allow to enter the expression.
163
- # Corresponds to the JSON property `title`
164
- # @return [String]
165
- attr_accessor :title
166
-
167
- def initialize(**args)
168
- update!(**args)
169
- end
170
-
171
- # Update properties of this object
172
- def update!(**args)
173
- @description = args[:description] if args.key?(:description)
174
- @expression = args[:expression] if args.key?(:expression)
175
- @location = args[:location] if args.key?(:location)
176
- @title = args[:title] if args.key?(:title)
177
- end
178
- end
179
-
180
- # An instance resource.
42
+ # A server.
181
43
  class Instance
182
44
  include Google::Apis::Core::Hashable
183
45
 
184
- # Output only. Create time stamp.
46
+ # Output only. Create a time stamp.
185
47
  # Corresponds to the JSON property `createTime`
186
48
  # @return [String]
187
49
  attr_accessor :create_time
188
50
 
189
- # True if hyperthreading enabled for the instance, false otherwise. The default
51
+ # True if you enable hyperthreading for the server, otherwise false. The default
190
52
  # value is false.
191
53
  # Corresponds to the JSON property `hyperthreadingEnabled`
192
54
  # @return [Boolean]
193
55
  attr_accessor :hyperthreading_enabled
194
56
  alias_method :hyperthreading_enabled?, :hyperthreading_enabled
195
57
 
58
+ # An identifier for the `Instance`, generated by the backend.
59
+ # Corresponds to the JSON property `id`
60
+ # @return [String]
61
+ attr_accessor :id
62
+
63
+ # True if the interactive serial console feature is enabled for the instance,
64
+ # false otherwise. The default value is false.
65
+ # Corresponds to the JSON property `interactiveSerialConsoleEnabled`
66
+ # @return [Boolean]
67
+ attr_accessor :interactive_serial_console_enabled
68
+ alias_method :interactive_serial_console_enabled?, :interactive_serial_console_enabled
69
+
196
70
  # Labels as key value pairs.
197
71
  # Corresponds to the JSON property `labels`
198
72
  # @return [Hash<String,String>]
199
73
  attr_accessor :labels
200
74
 
201
- # List of luns associated with this instance.
75
+ # List of LUNs associated with this server.
202
76
  # Corresponds to the JSON property `luns`
203
77
  # @return [Array<Google::Apis::BaremetalsolutionV2::Lun>]
204
78
  attr_accessor :luns
205
79
 
206
- # The type of this Instance. [Available Instance types](https://cloud.google.com/
207
- # bare-metal/docs/bms-planning#server_configurations)
80
+ # The server type. [Available server types](https://cloud.google.com/bare-metal/
81
+ # docs/bms-planning#server_configurations)
208
82
  # Corresponds to the JSON property `machineType`
209
83
  # @return [String]
210
84
  attr_accessor :machine_type
@@ -217,17 +91,17 @@ module Google
217
91
  # @return [String]
218
92
  attr_accessor :name
219
93
 
220
- # List of networks associated with this instance.
94
+ # List of networks associated with this server.
221
95
  # Corresponds to the JSON property `networks`
222
96
  # @return [Array<Google::Apis::BaremetalsolutionV2::Network>]
223
97
  attr_accessor :networks
224
98
 
225
- # The state of this Instance.
99
+ # The state of the server.
226
100
  # Corresponds to the JSON property `state`
227
101
  # @return [String]
228
102
  attr_accessor :state
229
103
 
230
- # Output only. Update time stamp.
104
+ # Output only. Update a time stamp.
231
105
  # Corresponds to the JSON property `updateTime`
232
106
  # @return [String]
233
107
  attr_accessor :update_time
@@ -240,6 +114,8 @@ module Google
240
114
  def update!(**args)
241
115
  @create_time = args[:create_time] if args.key?(:create_time)
242
116
  @hyperthreading_enabled = args[:hyperthreading_enabled] if args.key?(:hyperthreading_enabled)
117
+ @id = args[:id] if args.key?(:id)
118
+ @interactive_serial_console_enabled = args[:interactive_serial_console_enabled] if args.key?(:interactive_serial_console_enabled)
243
119
  @labels = args[:labels] if args.key?(:labels)
244
120
  @luns = args[:luns] if args.key?(:luns)
245
121
  @machine_type = args[:machine_type] if args.key?(:machine_type)
@@ -250,16 +126,16 @@ module Google
250
126
  end
251
127
  end
252
128
 
253
- # Message for response to listing Instances.
129
+ # Response message for the list of servers.
254
130
  class ListInstancesResponse
255
131
  include Google::Apis::Core::Hashable
256
132
 
257
- # The list of Instance.
133
+ # The list of servers.
258
134
  # Corresponds to the JSON property `instances`
259
135
  # @return [Array<Google::Apis::BaremetalsolutionV2::Instance>]
260
136
  attr_accessor :instances
261
137
 
262
- # A token identifying a page of results the server should return.
138
+ # A token identifying a page of results from the server.
263
139
  # Corresponds to the JSON property `nextPageToken`
264
140
  # @return [String]
265
141
  attr_accessor :next_page_token
@@ -306,19 +182,24 @@ module Google
306
182
  end
307
183
  end
308
184
 
309
- # The response message for Operations.ListOperations.
310
- class ListOperationsResponse
185
+ # Response message containing the list of storage volume luns.
186
+ class ListLunsResponse
311
187
  include Google::Apis::Core::Hashable
312
188
 
313
- # The standard List next-page token.
189
+ # The list of luns.
190
+ # Corresponds to the JSON property `luns`
191
+ # @return [Array<Google::Apis::BaremetalsolutionV2::Lun>]
192
+ attr_accessor :luns
193
+
194
+ # A token identifying a page of results from the server.
314
195
  # Corresponds to the JSON property `nextPageToken`
315
196
  # @return [String]
316
197
  attr_accessor :next_page_token
317
198
 
318
- # A list of operations that matches the specified filter in the request.
319
- # Corresponds to the JSON property `operations`
320
- # @return [Array<Google::Apis::BaremetalsolutionV2::Operation>]
321
- attr_accessor :operations
199
+ # Locations that could not be reached.
200
+ # Corresponds to the JSON property `unreachable`
201
+ # @return [Array<String>]
202
+ attr_accessor :unreachable
322
203
 
323
204
  def initialize(**args)
324
205
  update!(**args)
@@ -326,16 +207,105 @@ module Google
326
207
 
327
208
  # Update properties of this object
328
209
  def update!(**args)
210
+ @luns = args[:luns] if args.key?(:luns)
329
211
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
330
- @operations = args[:operations] if args.key?(:operations)
212
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
331
213
  end
332
214
  end
333
215
 
334
- # Message for response to listing Volumes.
216
+ # Response message containing the list of networks.
217
+ class ListNetworksResponse
218
+ include Google::Apis::Core::Hashable
219
+
220
+ # The list of networks.
221
+ # Corresponds to the JSON property `networks`
222
+ # @return [Array<Google::Apis::BaremetalsolutionV2::Network>]
223
+ attr_accessor :networks
224
+
225
+ # A token identifying a page of results from the server.
226
+ # Corresponds to the JSON property `nextPageToken`
227
+ # @return [String]
228
+ attr_accessor :next_page_token
229
+
230
+ # Locations that could not be reached.
231
+ # Corresponds to the JSON property `unreachable`
232
+ # @return [Array<String>]
233
+ attr_accessor :unreachable
234
+
235
+ def initialize(**args)
236
+ update!(**args)
237
+ end
238
+
239
+ # Update properties of this object
240
+ def update!(**args)
241
+ @networks = args[:networks] if args.key?(:networks)
242
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
243
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
244
+ end
245
+ end
246
+
247
+ # Response message containing the list of snapshot schedule policies.
248
+ class ListSnapshotSchedulePoliciesResponse
249
+ include Google::Apis::Core::Hashable
250
+
251
+ # Token to retrieve the next page of results, or empty if there are no more
252
+ # results in the list.
253
+ # Corresponds to the JSON property `nextPageToken`
254
+ # @return [String]
255
+ attr_accessor :next_page_token
256
+
257
+ # The snapshot schedule policies registered in this project.
258
+ # Corresponds to the JSON property `snapshotSchedulePolicies`
259
+ # @return [Array<Google::Apis::BaremetalsolutionV2::SnapshotSchedulePolicy>]
260
+ attr_accessor :snapshot_schedule_policies
261
+
262
+ def initialize(**args)
263
+ update!(**args)
264
+ end
265
+
266
+ # Update properties of this object
267
+ def update!(**args)
268
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
269
+ @snapshot_schedule_policies = args[:snapshot_schedule_policies] if args.key?(:snapshot_schedule_policies)
270
+ end
271
+ end
272
+
273
+ # Response message containing the list of storage volume snapshots.
274
+ class ListVolumeSnapshotsResponse
275
+ include Google::Apis::Core::Hashable
276
+
277
+ # A token identifying a page of results from the server.
278
+ # Corresponds to the JSON property `nextPageToken`
279
+ # @return [String]
280
+ attr_accessor :next_page_token
281
+
282
+ # Locations that could not be reached.
283
+ # Corresponds to the JSON property `unreachable`
284
+ # @return [Array<String>]
285
+ attr_accessor :unreachable
286
+
287
+ # The list of storage volumes.
288
+ # Corresponds to the JSON property `volumeSnapshots`
289
+ # @return [Array<Google::Apis::BaremetalsolutionV2::VolumeSnapshot>]
290
+ attr_accessor :volume_snapshots
291
+
292
+ def initialize(**args)
293
+ update!(**args)
294
+ end
295
+
296
+ # Update properties of this object
297
+ def update!(**args)
298
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
299
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
300
+ @volume_snapshots = args[:volume_snapshots] if args.key?(:volume_snapshots)
301
+ end
302
+ end
303
+
304
+ # Response message containing the list of storage volumes.
335
305
  class ListVolumesResponse
336
306
  include Google::Apis::Core::Hashable
337
307
 
338
- # A token identifying a page of results the server should return.
308
+ # A token identifying a page of results from the server.
339
309
  # Corresponds to the JSON property `nextPageToken`
340
310
  # @return [String]
341
311
  attr_accessor :next_page_token
@@ -345,7 +315,7 @@ module Google
345
315
  # @return [Array<String>]
346
316
  attr_accessor :unreachable
347
317
 
348
- # The list of Volume.
318
+ # The list of storage volumes.
349
319
  # Corresponds to the JSON property `volumes`
350
320
  # @return [Array<Google::Apis::BaremetalsolutionV2::Volume>]
351
321
  attr_accessor :volumes
@@ -409,53 +379,63 @@ module Google
409
379
  end
410
380
  end
411
381
 
412
- # A storage Lun.
382
+ # A storage volume logical unit number (LUN).
413
383
  class Lun
414
384
  include Google::Apis::Core::Hashable
415
385
 
416
- # Whether this Lun is a boot Lun.
386
+ # Display if this LUN is a boot LUN.
417
387
  # Corresponds to the JSON property `bootLun`
418
388
  # @return [Boolean]
419
389
  attr_accessor :boot_lun
420
390
  alias_method :boot_lun?, :boot_lun
421
391
 
422
- # The Lun Multiprotocol type to ensure the characteristics of the LUN are
423
- # optimized for the Operating System.
392
+ # An identifier for the LUN, generated by the backend.
393
+ # Corresponds to the JSON property `id`
394
+ # @return [String]
395
+ attr_accessor :id
396
+
397
+ # The LUN multiprotocol type ensures the characteristics of the LUN are
398
+ # optimized for each operating system.
424
399
  # Corresponds to the JSON property `multiprotocolType`
425
400
  # @return [String]
426
401
  attr_accessor :multiprotocol_type
427
402
 
428
- # Output only. The name of this Lun.
403
+ # Output only. The name of the LUN.
429
404
  # Corresponds to the JSON property `name`
430
405
  # @return [String]
431
406
  attr_accessor :name
432
407
 
433
- # Whether this Lun is allowed to be shared between multiple physical servers.
434
- # Corresponds to the JSON property `shared`
408
+ # Display if this LUN can be shared between multiple physical servers.
409
+ # Corresponds to the JSON property `shareable`
435
410
  # @return [Boolean]
436
- attr_accessor :shared
437
- alias_method :shared?, :shared
411
+ attr_accessor :shareable
412
+ alias_method :shareable?, :shareable
438
413
 
439
- # The size of this Lun, in gigabytes.
414
+ # The size of this LUN, in gigabytes.
440
415
  # Corresponds to the JSON property `sizeGb`
441
416
  # @return [Fixnum]
442
417
  attr_accessor :size_gb
443
418
 
444
- # The state of this Volume.
419
+ # The state of this storage volume.
445
420
  # Corresponds to the JSON property `state`
446
421
  # @return [String]
447
422
  attr_accessor :state
448
423
 
449
- # The storage type of this Lun.
424
+ # The storage type for this LUN.
450
425
  # Corresponds to the JSON property `storageType`
451
426
  # @return [String]
452
427
  attr_accessor :storage_type
453
428
 
454
- # The storage volume that this Lun is attached to.
429
+ # Display the storage volume for this LUN.
455
430
  # Corresponds to the JSON property `storageVolume`
456
431
  # @return [String]
457
432
  attr_accessor :storage_volume
458
433
 
434
+ # The WWID for this LUN.
435
+ # Corresponds to the JSON property `wwid`
436
+ # @return [String]
437
+ attr_accessor :wwid
438
+
459
439
  def initialize(**args)
460
440
  update!(**args)
461
441
  end
@@ -463,50 +443,97 @@ module Google
463
443
  # Update properties of this object
464
444
  def update!(**args)
465
445
  @boot_lun = args[:boot_lun] if args.key?(:boot_lun)
446
+ @id = args[:id] if args.key?(:id)
466
447
  @multiprotocol_type = args[:multiprotocol_type] if args.key?(:multiprotocol_type)
467
448
  @name = args[:name] if args.key?(:name)
468
- @shared = args[:shared] if args.key?(:shared)
449
+ @shareable = args[:shareable] if args.key?(:shareable)
469
450
  @size_gb = args[:size_gb] if args.key?(:size_gb)
470
451
  @state = args[:state] if args.key?(:state)
471
452
  @storage_type = args[:storage_type] if args.key?(:storage_type)
472
453
  @storage_volume = args[:storage_volume] if args.key?(:storage_volume)
454
+ @wwid = args[:wwid] if args.key?(:wwid)
473
455
  end
474
456
  end
475
457
 
476
- # A network.
458
+ # A Network.
477
459
  class Network
478
460
  include Google::Apis::Core::Hashable
479
461
 
462
+ # The cidr of the Network.
463
+ # Corresponds to the JSON property `cidr`
464
+ # @return [String]
465
+ attr_accessor :cidr
466
+
467
+ # An identifier for the `Network`, generated by the backend.
468
+ # Corresponds to the JSON property `id`
469
+ # @return [String]
470
+ attr_accessor :id
471
+
480
472
  # IP address configured.
481
473
  # Corresponds to the JSON property `ipAddress`
482
474
  # @return [String]
483
475
  attr_accessor :ip_address
484
476
 
485
- # List of physical nics.
477
+ # Labels as key value pairs.
478
+ # Corresponds to the JSON property `labels`
479
+ # @return [Hash<String,String>]
480
+ attr_accessor :labels
481
+
482
+ # List of physical interfaces.
486
483
  # Corresponds to the JSON property `macAddress`
487
484
  # @return [Array<String>]
488
485
  attr_accessor :mac_address
489
486
 
490
- # Name of the network.
491
- # Corresponds to the JSON property `network`
487
+ # Output only. The resource name of this `Network`. Resource names are
488
+ # schemeless URIs that follow the conventions in https://cloud.google.com/apis/
489
+ # design/resource_names. Format: `projects/`project`/locations/`location`/
490
+ # networks/`network``
491
+ # Corresponds to the JSON property `name`
492
+ # @return [String]
493
+ attr_accessor :name
494
+
495
+ # IP range for reserved for services (e.g. NFS).
496
+ # Corresponds to the JSON property `servicesCidr`
497
+ # @return [String]
498
+ attr_accessor :services_cidr
499
+
500
+ # The Network state.
501
+ # Corresponds to the JSON property `state`
492
502
  # @return [String]
493
- attr_accessor :network
503
+ attr_accessor :state
494
504
 
495
505
  # The type of this network.
496
506
  # Corresponds to the JSON property `type`
497
507
  # @return [String]
498
508
  attr_accessor :type
499
509
 
510
+ # The vlan id of the Network.
511
+ # Corresponds to the JSON property `vlanId`
512
+ # @return [String]
513
+ attr_accessor :vlan_id
514
+
515
+ # A network VRF.
516
+ # Corresponds to the JSON property `vrf`
517
+ # @return [Google::Apis::BaremetalsolutionV2::Vrf]
518
+ attr_accessor :vrf
519
+
500
520
  def initialize(**args)
501
521
  update!(**args)
502
522
  end
503
523
 
504
524
  # Update properties of this object
505
525
  def update!(**args)
526
+ @cidr = args[:cidr] if args.key?(:cidr)
527
+ @id = args[:id] if args.key?(:id)
506
528
  @ip_address = args[:ip_address] if args.key?(:ip_address)
529
+ @labels = args[:labels] if args.key?(:labels)
507
530
  @mac_address = args[:mac_address] if args.key?(:mac_address)
508
- @network = args[:network] if args.key?(:network)
531
+ @name = args[:name] if args.key?(:name)
532
+ @services_cidr = args[:services_cidr] if args.key?(:services_cidr)
533
+ @state = args[:state] if args.key?(:state)
509
534
  @type = args[:type] if args.key?(:type)
535
+ @vlan_id = args[:vlan_id] if args.key?(:vlan_id)
536
+ @vrf = args[:vrf] if args.key?(:vrf)
510
537
  end
511
538
  end
512
539
 
@@ -572,48 +599,28 @@ module Google
572
599
  end
573
600
  end
574
601
 
575
- # Represents the metadata of the long-running operation.
576
- class OperationMetadata
602
+ # QOS policy parameters.
603
+ class QosPolicy
577
604
  include Google::Apis::Core::Hashable
578
605
 
579
- # Output only. API version used to start the operation.
580
- # Corresponds to the JSON property `apiVersion`
581
- # @return [String]
582
- attr_accessor :api_version
583
-
584
- # Output only. The time the operation was created.
585
- # Corresponds to the JSON property `createTime`
586
- # @return [String]
587
- attr_accessor :create_time
588
-
589
- # Output only. The time the operation finished running.
590
- # Corresponds to the JSON property `endTime`
591
- # @return [String]
592
- attr_accessor :end_time
593
-
594
- # Output only. Identifies whether the user has requested cancellation of the
595
- # operation. Operations that have successfully been cancelled have Operation.
596
- # error value with a google.rpc.Status.code of 1, corresponding to `Code.
597
- # CANCELLED`.
598
- # Corresponds to the JSON property `requestedCancellation`
599
- # @return [Boolean]
600
- attr_accessor :requested_cancellation
601
- alias_method :requested_cancellation?, :requested_cancellation
606
+ # The bandwidth permitted by the QOS policy, in gbps.
607
+ # Corresponds to the JSON property `bandwidthGbps`
608
+ # @return [Float]
609
+ attr_accessor :bandwidth_gbps
602
610
 
603
- # Output only. Human-readable status of the operation, if any.
604
- # Corresponds to the JSON property `statusMessage`
605
- # @return [String]
606
- attr_accessor :status_message
611
+ def initialize(**args)
612
+ update!(**args)
613
+ end
607
614
 
608
- # Output only. Server-defined resource path for the target of the operation.
609
- # Corresponds to the JSON property `target`
610
- # @return [String]
611
- attr_accessor :target
615
+ # Update properties of this object
616
+ def update!(**args)
617
+ @bandwidth_gbps = args[:bandwidth_gbps] if args.key?(:bandwidth_gbps)
618
+ end
619
+ end
612
620
 
613
- # Output only. Name of the verb executed by the operation.
614
- # Corresponds to the JSON property `verb`
615
- # @return [String]
616
- attr_accessor :verb
621
+ # Message requesting to reset a server.
622
+ class ResetInstanceRequest
623
+ include Google::Apis::Core::Hashable
617
624
 
618
625
  def initialize(**args)
619
626
  update!(**args)
@@ -621,134 +628,40 @@ module Google
621
628
 
622
629
  # Update properties of this object
623
630
  def update!(**args)
624
- @api_version = args[:api_version] if args.key?(:api_version)
625
- @create_time = args[:create_time] if args.key?(:create_time)
626
- @end_time = args[:end_time] if args.key?(:end_time)
627
- @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
628
- @status_message = args[:status_message] if args.key?(:status_message)
629
- @target = args[:target] if args.key?(:target)
630
- @verb = args[:verb] if args.key?(:verb)
631
631
  end
632
632
  end
633
633
 
634
- # An Identity and Access Management (IAM) policy, which specifies access
635
- # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
636
- # A `binding` binds one or more `members` to a single `role`. Members can be
637
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
638
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
639
- # role or a user-created custom role. For some types of Google Cloud resources,
640
- # a `binding` can also specify a `condition`, which is a logical expression that
641
- # allows access to a resource only if the expression evaluates to `true`. A
642
- # condition can add constraints based on attributes of the request, the resource,
643
- # or both. To learn which resources support conditions in their IAM policies,
644
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
645
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
646
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
647
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
648
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
649
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
650
- # title": "expirable access", "description": "Does not grant access after Sep
651
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
652
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
653
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
654
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
655
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
656
- # roles/resourcemanager.organizationViewer condition: title: expirable access
657
- # description: Does not grant access after Sep 2020 expression: request.time <
658
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
659
- # description of IAM and its features, see the [IAM documentation](https://cloud.
660
- # google.com/iam/docs/).
661
- class Policy
634
+ # Message for restoring a volume snapshot.
635
+ class RestoreVolumeSnapshotRequest
662
636
  include Google::Apis::Core::Hashable
663
637
 
664
- # Associates a list of `members` to a `role`. Optionally, may specify a `
665
- # condition` that determines how and when the `bindings` are applied. Each of
666
- # the `bindings` must contain at least one member.
667
- # Corresponds to the JSON property `bindings`
668
- # @return [Array<Google::Apis::BaremetalsolutionV2::Binding>]
669
- attr_accessor :bindings
670
-
671
- # `etag` is used for optimistic concurrency control as a way to help prevent
672
- # simultaneous updates of a policy from overwriting each other. It is strongly
673
- # suggested that systems make use of the `etag` in the read-modify-write cycle
674
- # to perform policy updates in order to avoid race conditions: An `etag` is
675
- # returned in the response to `getIamPolicy`, and systems are expected to put
676
- # that etag in the request to `setIamPolicy` to ensure that their change will be
677
- # applied to the same version of the policy. **Important:** If you use IAM
678
- # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
679
- # If you omit this field, then IAM allows you to overwrite a version `3` policy
680
- # with a version `1` policy, and all of the conditions in the version `3` policy
681
- # are lost.
682
- # Corresponds to the JSON property `etag`
683
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
684
- # @return [String]
685
- attr_accessor :etag
686
-
687
- # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
688
- # Requests that specify an invalid value are rejected. Any operation that
689
- # affects conditional role bindings must specify version `3`. This requirement
690
- # applies to the following operations: * Getting a policy that includes a
691
- # conditional role binding * Adding a conditional role binding to a policy *
692
- # Changing a conditional role binding in a policy * Removing any role binding,
693
- # with or without a condition, from a policy that includes conditions **
694
- # Important:** If you use IAM Conditions, you must include the `etag` field
695
- # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
696
- # to overwrite a version `3` policy with a version `1` policy, and all of the
697
- # conditions in the version `3` policy are lost. If a policy does not include
698
- # any conditions, operations on that policy may specify any valid version or
699
- # leave the field unset. To learn which resources support conditions in their
700
- # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
701
- # conditions/resource-policies).
702
- # Corresponds to the JSON property `version`
703
- # @return [Fixnum]
704
- attr_accessor :version
705
-
706
638
  def initialize(**args)
707
639
  update!(**args)
708
640
  end
709
641
 
710
642
  # Update properties of this object
711
643
  def update!(**args)
712
- @bindings = args[:bindings] if args.key?(:bindings)
713
- @etag = args[:etag] if args.key?(:etag)
714
- @version = args[:version] if args.key?(:version)
715
644
  end
716
645
  end
717
646
 
718
- # Request message for `SetIamPolicy` method.
719
- class SetIamPolicyRequest
647
+ # A snapshot schedule.
648
+ class Schedule
720
649
  include Google::Apis::Core::Hashable
721
650
 
722
- # An Identity and Access Management (IAM) policy, which specifies access
723
- # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
724
- # A `binding` binds one or more `members` to a single `role`. Members can be
725
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
726
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
727
- # role or a user-created custom role. For some types of Google Cloud resources,
728
- # a `binding` can also specify a `condition`, which is a logical expression that
729
- # allows access to a resource only if the expression evaluates to `true`. A
730
- # condition can add constraints based on attributes of the request, the resource,
731
- # or both. To learn which resources support conditions in their IAM policies,
732
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
733
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
734
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
735
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
736
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
737
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
738
- # title": "expirable access", "description": "Does not grant access after Sep
739
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
740
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
741
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
742
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
743
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
744
- # roles/resourcemanager.organizationViewer condition: title: expirable access
745
- # description: Does not grant access after Sep 2020 expression: request.time <
746
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
747
- # description of IAM and its features, see the [IAM documentation](https://cloud.
748
- # google.com/iam/docs/).
749
- # Corresponds to the JSON property `policy`
750
- # @return [Google::Apis::BaremetalsolutionV2::Policy]
751
- attr_accessor :policy
651
+ # A crontab-like specification that the schedule uses to take snapshots.
652
+ # Corresponds to the JSON property `crontabSpec`
653
+ # @return [String]
654
+ attr_accessor :crontab_spec
655
+
656
+ # A list of snapshot names created in this schedule.
657
+ # Corresponds to the JSON property `prefix`
658
+ # @return [String]
659
+ attr_accessor :prefix
660
+
661
+ # The maximum number of snapshots to retain in this schedule.
662
+ # Corresponds to the JSON property `retentionCount`
663
+ # @return [Fixnum]
664
+ attr_accessor :retention_count
752
665
 
753
666
  def initialize(**args)
754
667
  update!(**args)
@@ -756,28 +669,30 @@ module Google
756
669
 
757
670
  # Update properties of this object
758
671
  def update!(**args)
759
- @policy = args[:policy] if args.key?(:policy)
672
+ @crontab_spec = args[:crontab_spec] if args.key?(:crontab_spec)
673
+ @prefix = args[:prefix] if args.key?(:prefix)
674
+ @retention_count = args[:retention_count] if args.key?(:retention_count)
760
675
  end
761
676
  end
762
677
 
763
- # Details about snapshot space reservation and usage on the Volume.
678
+ # Details about snapshot space reservation and usage on the storage volume.
764
679
  class SnapshotReservationDetail
765
680
  include Google::Apis::Core::Hashable
766
681
 
767
- # The space on this Volume reserved for snapshotsk, provided in GiB.
682
+ # The space on this storage volume reserved for snapshots, shown in GiB.
768
683
  # Corresponds to the JSON property `reservedSpaceGib`
769
684
  # @return [Fixnum]
770
685
  attr_accessor :reserved_space_gib
771
686
 
772
- # The amount, in GiB, of space available in this Volume's reserved snapshot
773
- # space.
687
+ # The amount, in GiB, of available space in this storage volume's reserved
688
+ # snapshot space.
774
689
  # Corresponds to the JSON property `reservedSpaceRemainingGib`
775
690
  # @return [Fixnum]
776
691
  attr_accessor :reserved_space_remaining_gib
777
692
 
778
- # The percent of reserved snapshot space on this Volume that is actually used by
779
- # snapshot copies. This may be higher than 100% if snapshot copies are occupying
780
- # more space than has been reserved on the Volume.
693
+ # The percent of snapshot space on this storage volume actually being used by
694
+ # the snapshot copies. This value might be higher than 100% if the snapshot
695
+ # copies have overflowed into the data portion of the storage volume.
781
696
  # Corresponds to the JSON property `reservedSpaceUsedPercent`
782
697
  # @return [Fixnum]
783
698
  attr_accessor :reserved_space_used_percent
@@ -794,6 +709,50 @@ module Google
794
709
  end
795
710
  end
796
711
 
712
+ # A snapshot schedule policy.
713
+ class SnapshotSchedulePolicy
714
+ include Google::Apis::Core::Hashable
715
+
716
+ # The description of the snapshot schedule policy.
717
+ # Corresponds to the JSON property `description`
718
+ # @return [String]
719
+ attr_accessor :description
720
+
721
+ # An identifier for the snapshot schedule policy, generated by the backend.
722
+ # Corresponds to the JSON property `id`
723
+ # @return [String]
724
+ attr_accessor :id
725
+
726
+ # Labels as key value pairs.
727
+ # Corresponds to the JSON property `labels`
728
+ # @return [Hash<String,String>]
729
+ attr_accessor :labels
730
+
731
+ # Output only. The name of the snapshot schedule policy.
732
+ # Corresponds to the JSON property `name`
733
+ # @return [String]
734
+ attr_accessor :name
735
+
736
+ # The snapshot schedules contained in this policy. You can specify a maximum of
737
+ # 5 schedules.
738
+ # Corresponds to the JSON property `schedules`
739
+ # @return [Array<Google::Apis::BaremetalsolutionV2::Schedule>]
740
+ attr_accessor :schedules
741
+
742
+ def initialize(**args)
743
+ update!(**args)
744
+ end
745
+
746
+ # Update properties of this object
747
+ def update!(**args)
748
+ @description = args[:description] if args.key?(:description)
749
+ @id = args[:id] if args.key?(:id)
750
+ @labels = args[:labels] if args.key?(:labels)
751
+ @name = args[:name] if args.key?(:name)
752
+ @schedules = args[:schedules] if args.key?(:schedules)
753
+ end
754
+ end
755
+
797
756
  # The `Status` type defines a logical error model that is suitable for different
798
757
  # programming environments, including REST APIs and RPC APIs. It is used by [
799
758
  # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
@@ -833,16 +792,29 @@ module Google
833
792
  end
834
793
  end
835
794
 
836
- # Request message for `TestIamPermissions` method.
837
- class TestIamPermissionsRequest
795
+ # A network VRF.
796
+ class Vrf
838
797
  include Google::Apis::Core::Hashable
839
798
 
840
- # The set of permissions to check for the `resource`. Permissions with wildcards
841
- # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
842
- # Overview](https://cloud.google.com/iam/docs/overview#permissions).
843
- # Corresponds to the JSON property `permissions`
844
- # @return [Array<String>]
845
- attr_accessor :permissions
799
+ # The name of the VRF.
800
+ # Corresponds to the JSON property `name`
801
+ # @return [String]
802
+ attr_accessor :name
803
+
804
+ # QOS policy parameters.
805
+ # Corresponds to the JSON property `qosPolicy`
806
+ # @return [Google::Apis::BaremetalsolutionV2::QosPolicy]
807
+ attr_accessor :qos_policy
808
+
809
+ # The possible state of VRF.
810
+ # Corresponds to the JSON property `state`
811
+ # @return [String]
812
+ attr_accessor :state
813
+
814
+ # The list of VLAN attachments for the VRF.
815
+ # Corresponds to the JSON property `vlanAttachments`
816
+ # @return [Array<Google::Apis::BaremetalsolutionV2::VlanAttachment>]
817
+ attr_accessor :vlan_attachments
846
818
 
847
819
  def initialize(**args)
848
820
  update!(**args)
@@ -850,18 +822,31 @@ module Google
850
822
 
851
823
  # Update properties of this object
852
824
  def update!(**args)
853
- @permissions = args[:permissions] if args.key?(:permissions)
825
+ @name = args[:name] if args.key?(:name)
826
+ @qos_policy = args[:qos_policy] if args.key?(:qos_policy)
827
+ @state = args[:state] if args.key?(:state)
828
+ @vlan_attachments = args[:vlan_attachments] if args.key?(:vlan_attachments)
854
829
  end
855
830
  end
856
831
 
857
- # Response message for `TestIamPermissions` method.
858
- class TestIamPermissionsResponse
832
+ # VLAN attachment details.
833
+ class VlanAttachment
859
834
  include Google::Apis::Core::Hashable
860
835
 
861
- # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
862
- # Corresponds to the JSON property `permissions`
863
- # @return [Array<String>]
864
- attr_accessor :permissions
836
+ # The peer IP of the attachment.
837
+ # Corresponds to the JSON property `peerIp`
838
+ # @return [String]
839
+ attr_accessor :peer_ip
840
+
841
+ # The peer vlan ID of the attachment.
842
+ # Corresponds to the JSON property `peerVlanId`
843
+ # @return [Fixnum]
844
+ attr_accessor :peer_vlan_id
845
+
846
+ # The router IP of the attachment.
847
+ # Corresponds to the JSON property `routerIp`
848
+ # @return [String]
849
+ attr_accessor :router_ip
865
850
 
866
851
  def initialize(**args)
867
852
  update!(**args)
@@ -869,27 +854,39 @@ module Google
869
854
 
870
855
  # Update properties of this object
871
856
  def update!(**args)
872
- @permissions = args[:permissions] if args.key?(:permissions)
857
+ @peer_ip = args[:peer_ip] if args.key?(:peer_ip)
858
+ @peer_vlan_id = args[:peer_vlan_id] if args.key?(:peer_vlan_id)
859
+ @router_ip = args[:router_ip] if args.key?(:router_ip)
873
860
  end
874
861
  end
875
862
 
876
- # A storage Volume.
863
+ # A storage volume.
877
864
  class Volume
878
865
  include Google::Apis::Core::Hashable
879
866
 
880
- # The size, in GiB, that this Volume has expanded as a result of an auto grow
881
- # policy. In the absence of auto-grow, the value is 0.
867
+ # The size, in GiB, that this storage volume has expanded as a result of an auto
868
+ # grow policy. In the absence of auto-grow, the value is 0.
882
869
  # Corresponds to the JSON property `autoGrownSizeGib`
883
870
  # @return [Fixnum]
884
871
  attr_accessor :auto_grown_size_gib
885
872
 
886
- # The current size of this Volume, in GiB, including space reserved for
887
- # snapshots. This size may be different than the requested size if the Volume
888
- # has been configured with auto grow or auto shrink.
873
+ # The current size of this storage volume, in GiB, including space reserved for
874
+ # snapshots. This size might be different than the requested size if the storage
875
+ # volume has been configured with auto grow or auto shrink.
889
876
  # Corresponds to the JSON property `currentSizeGib`
890
877
  # @return [Fixnum]
891
878
  attr_accessor :current_size_gib
892
879
 
880
+ # An identifier for the `Volume`, generated by the backend.
881
+ # Corresponds to the JSON property `id`
882
+ # @return [String]
883
+ attr_accessor :id
884
+
885
+ # Labels as key value pairs.
886
+ # Corresponds to the JSON property `labels`
887
+ # @return [Hash<String,String>]
888
+ attr_accessor :labels
889
+
893
890
  # Output only. The resource name of this `Volume`. Resource names are schemeless
894
891
  # URIs that follow the conventions in https://cloud.google.com/apis/design/
895
892
  # resource_names. Format: `projects/`project`/locations/`location`/volumes/`
@@ -898,28 +895,38 @@ module Google
898
895
  # @return [String]
899
896
  attr_accessor :name
900
897
 
901
- # The space remaining in the Volume for new LUNs, in GiB, excluding space
902
- # reserved for snapshots.
898
+ # The space remaining in the storage volume for new LUNs, in GiB, excluding
899
+ # space reserved for snapshots.
903
900
  # Corresponds to the JSON property `remainingSpaceGib`
904
901
  # @return [Fixnum]
905
902
  attr_accessor :remaining_space_gib
906
903
 
907
- # The requested size of this Volume, in GiB.
904
+ # The requested size of this storage volume, in GiB.
908
905
  # Corresponds to the JSON property `requestedSizeGib`
909
906
  # @return [Fixnum]
910
907
  attr_accessor :requested_size_gib
911
908
 
912
- # Details about snapshot space reservation and usage on the Volume.
909
+ # The behavior to use when snapshot reserved space is full.
910
+ # Corresponds to the JSON property `snapshotAutoDeleteBehavior`
911
+ # @return [String]
912
+ attr_accessor :snapshot_auto_delete_behavior
913
+
914
+ # Details about snapshot space reservation and usage on the storage volume.
913
915
  # Corresponds to the JSON property `snapshotReservationDetail`
914
916
  # @return [Google::Apis::BaremetalsolutionV2::SnapshotReservationDetail]
915
917
  attr_accessor :snapshot_reservation_detail
916
918
 
917
- # The state of this Volume.
919
+ # The name of the snapshot schedule policy in use for this volume, if any.
920
+ # Corresponds to the JSON property `snapshotSchedulePolicy`
921
+ # @return [String]
922
+ attr_accessor :snapshot_schedule_policy
923
+
924
+ # The state of this storage volume.
918
925
  # Corresponds to the JSON property `state`
919
926
  # @return [String]
920
927
  attr_accessor :state
921
928
 
922
- # The storage type of this Volume.
929
+ # The storage type for this volume.
923
930
  # Corresponds to the JSON property `storageType`
924
931
  # @return [String]
925
932
  attr_accessor :storage_type
@@ -932,14 +939,67 @@ module Google
932
939
  def update!(**args)
933
940
  @auto_grown_size_gib = args[:auto_grown_size_gib] if args.key?(:auto_grown_size_gib)
934
941
  @current_size_gib = args[:current_size_gib] if args.key?(:current_size_gib)
942
+ @id = args[:id] if args.key?(:id)
943
+ @labels = args[:labels] if args.key?(:labels)
935
944
  @name = args[:name] if args.key?(:name)
936
945
  @remaining_space_gib = args[:remaining_space_gib] if args.key?(:remaining_space_gib)
937
946
  @requested_size_gib = args[:requested_size_gib] if args.key?(:requested_size_gib)
947
+ @snapshot_auto_delete_behavior = args[:snapshot_auto_delete_behavior] if args.key?(:snapshot_auto_delete_behavior)
938
948
  @snapshot_reservation_detail = args[:snapshot_reservation_detail] if args.key?(:snapshot_reservation_detail)
949
+ @snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
939
950
  @state = args[:state] if args.key?(:state)
940
951
  @storage_type = args[:storage_type] if args.key?(:storage_type)
941
952
  end
942
953
  end
954
+
955
+ # Snapshot registered for a given storage volume.
956
+ class VolumeSnapshot
957
+ include Google::Apis::Core::Hashable
958
+
959
+ # Output only. The creation time of the storage volume snapshot.
960
+ # Corresponds to the JSON property `createTime`
961
+ # @return [String]
962
+ attr_accessor :create_time
963
+
964
+ # The description of the storage volume snapshot.
965
+ # Corresponds to the JSON property `description`
966
+ # @return [String]
967
+ attr_accessor :description
968
+
969
+ # An identifier for the snapshot, generated by the backend.
970
+ # Corresponds to the JSON property `id`
971
+ # @return [String]
972
+ attr_accessor :id
973
+
974
+ # Output only. The name of the storage volume snapshot.
975
+ # Corresponds to the JSON property `name`
976
+ # @return [String]
977
+ attr_accessor :name
978
+
979
+ # The size of the storage volume snapshot, in bytes.
980
+ # Corresponds to the JSON property `sizeBytes`
981
+ # @return [Fixnum]
982
+ attr_accessor :size_bytes
983
+
984
+ # The storage volume this snapshot belongs to.
985
+ # Corresponds to the JSON property `storageVolume`
986
+ # @return [String]
987
+ attr_accessor :storage_volume
988
+
989
+ def initialize(**args)
990
+ update!(**args)
991
+ end
992
+
993
+ # Update properties of this object
994
+ def update!(**args)
995
+ @create_time = args[:create_time] if args.key?(:create_time)
996
+ @description = args[:description] if args.key?(:description)
997
+ @id = args[:id] if args.key?(:id)
998
+ @name = args[:name] if args.key?(:name)
999
+ @size_bytes = args[:size_bytes] if args.key?(:size_bytes)
1000
+ @storage_volume = args[:storage_volume] if args.key?(:storage_volume)
1001
+ end
1002
+ end
943
1003
  end
944
1004
  end
945
1005
  end