google-apis-baremetalsolution_v2 0.3.0 → 0.7.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 +4 -4
- data/CHANGELOG.md +17 -0
- data/OVERVIEW.md +3 -3
- data/lib/google/apis/baremetalsolution_v2/classes.rb +1362 -25
- data/lib/google/apis/baremetalsolution_v2/gem_version.rb +3 -3
- data/lib/google/apis/baremetalsolution_v2/representations.rb +585 -4
- data/lib/google/apis/baremetalsolution_v2/service.rb +874 -13
- metadata +6 -6
@@ -22,6 +22,83 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module BaremetalsolutionV2
|
24
24
|
|
25
|
+
# Represents an 'access point' for the share.
|
26
|
+
class AllowedClient
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# Allow dev flag. Which controls whether to allow creation of devices.
|
30
|
+
# Corresponds to the JSON property `allowDev`
|
31
|
+
# @return [Boolean]
|
32
|
+
attr_accessor :allow_dev
|
33
|
+
alias_method :allow_dev?, :allow_dev
|
34
|
+
|
35
|
+
# Allow the setuid flag.
|
36
|
+
# Corresponds to the JSON property `allowSuid`
|
37
|
+
# @return [Boolean]
|
38
|
+
attr_accessor :allow_suid
|
39
|
+
alias_method :allow_suid?, :allow_suid
|
40
|
+
|
41
|
+
# The subnet of IP addresses permitted to access the share.
|
42
|
+
# Corresponds to the JSON property `allowedClientsCidr`
|
43
|
+
# @return [String]
|
44
|
+
attr_accessor :allowed_clients_cidr
|
45
|
+
|
46
|
+
# Mount permissions.
|
47
|
+
# Corresponds to the JSON property `mountPermissions`
|
48
|
+
# @return [String]
|
49
|
+
attr_accessor :mount_permissions
|
50
|
+
|
51
|
+
# The network the access point sits on.
|
52
|
+
# Corresponds to the JSON property `network`
|
53
|
+
# @return [String]
|
54
|
+
attr_accessor :network
|
55
|
+
|
56
|
+
# Disable root squashing, which is a feature of NFS. Root squash is a special
|
57
|
+
# mapping of the remote superuser (root) identity when using identity
|
58
|
+
# authentication.
|
59
|
+
# Corresponds to the JSON property `noRootSquash`
|
60
|
+
# @return [Boolean]
|
61
|
+
attr_accessor :no_root_squash
|
62
|
+
alias_method :no_root_squash?, :no_root_squash
|
63
|
+
|
64
|
+
# The IP address of the share on this network.
|
65
|
+
# Corresponds to the JSON property `shareIp`
|
66
|
+
# @return [String]
|
67
|
+
attr_accessor :share_ip
|
68
|
+
|
69
|
+
def initialize(**args)
|
70
|
+
update!(**args)
|
71
|
+
end
|
72
|
+
|
73
|
+
# Update properties of this object
|
74
|
+
def update!(**args)
|
75
|
+
@allow_dev = args[:allow_dev] if args.key?(:allow_dev)
|
76
|
+
@allow_suid = args[:allow_suid] if args.key?(:allow_suid)
|
77
|
+
@allowed_clients_cidr = args[:allowed_clients_cidr] if args.key?(:allowed_clients_cidr)
|
78
|
+
@mount_permissions = args[:mount_permissions] if args.key?(:mount_permissions)
|
79
|
+
@network = args[:network] if args.key?(:network)
|
80
|
+
@no_root_squash = args[:no_root_squash] if args.key?(:no_root_squash)
|
81
|
+
@share_ip = args[:share_ip] if args.key?(:share_ip)
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
86
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
87
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
88
|
+
# protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
|
89
|
+
# `Empty` is empty JSON object ````.
|
90
|
+
class Empty
|
91
|
+
include Google::Apis::Core::Hashable
|
92
|
+
|
93
|
+
def initialize(**args)
|
94
|
+
update!(**args)
|
95
|
+
end
|
96
|
+
|
97
|
+
# Update properties of this object
|
98
|
+
def update!(**args)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
25
102
|
# A server.
|
26
103
|
class Instance
|
27
104
|
include Google::Apis::Core::Hashable
|
@@ -38,6 +115,11 @@ module Google
|
|
38
115
|
attr_accessor :hyperthreading_enabled
|
39
116
|
alias_method :hyperthreading_enabled?, :hyperthreading_enabled
|
40
117
|
|
118
|
+
# An identifier for the `Instance`, generated by the backend.
|
119
|
+
# Corresponds to the JSON property `id`
|
120
|
+
# @return [String]
|
121
|
+
attr_accessor :id
|
122
|
+
|
41
123
|
# True if the interactive serial console feature is enabled for the instance,
|
42
124
|
# false otherwise. The default value is false.
|
43
125
|
# Corresponds to the JSON property `interactiveSerialConsoleEnabled`
|
@@ -92,6 +174,7 @@ module Google
|
|
92
174
|
def update!(**args)
|
93
175
|
@create_time = args[:create_time] if args.key?(:create_time)
|
94
176
|
@hyperthreading_enabled = args[:hyperthreading_enabled] if args.key?(:hyperthreading_enabled)
|
177
|
+
@id = args[:id] if args.key?(:id)
|
95
178
|
@interactive_serial_console_enabled = args[:interactive_serial_console_enabled] if args.key?(:interactive_serial_console_enabled)
|
96
179
|
@labels = args[:labels] if args.key?(:labels)
|
97
180
|
@luns = args[:luns] if args.key?(:luns)
|
@@ -103,6 +186,135 @@ module Google
|
|
103
186
|
end
|
104
187
|
end
|
105
188
|
|
189
|
+
# Configuration parameters for a new instance.
|
190
|
+
class InstanceConfig
|
191
|
+
include Google::Apis::Core::Hashable
|
192
|
+
|
193
|
+
# A network.
|
194
|
+
# Corresponds to the JSON property `clientNetwork`
|
195
|
+
# @return [Google::Apis::BaremetalsolutionV2::NetworkAddress]
|
196
|
+
attr_accessor :client_network
|
197
|
+
|
198
|
+
# Whether the instance should be provisioned with Hyperthreading enabled.
|
199
|
+
# Corresponds to the JSON property `hyperthreading`
|
200
|
+
# @return [Boolean]
|
201
|
+
attr_accessor :hyperthreading
|
202
|
+
alias_method :hyperthreading?, :hyperthreading
|
203
|
+
|
204
|
+
# A transient unique identifier to idenfity an instance within an
|
205
|
+
# ProvisioningConfig request.
|
206
|
+
# Corresponds to the JSON property `id`
|
207
|
+
# @return [String]
|
208
|
+
attr_accessor :id
|
209
|
+
|
210
|
+
# Instance type. [Available types](https://cloud.google.com/bare-metal/docs/bms-
|
211
|
+
# planning#server_configurations)
|
212
|
+
# Corresponds to the JSON property `instanceType`
|
213
|
+
# @return [String]
|
214
|
+
attr_accessor :instance_type
|
215
|
+
|
216
|
+
# Output only. The name of the instance config.
|
217
|
+
# Corresponds to the JSON property `name`
|
218
|
+
# @return [String]
|
219
|
+
attr_accessor :name
|
220
|
+
|
221
|
+
# OS image to initialize the instance. [Available images](https://cloud.google.
|
222
|
+
# com/bare-metal/docs/bms-planning#server_configurations)
|
223
|
+
# Corresponds to the JSON property `osImage`
|
224
|
+
# @return [String]
|
225
|
+
attr_accessor :os_image
|
226
|
+
|
227
|
+
# A network.
|
228
|
+
# Corresponds to the JSON property `privateNetwork`
|
229
|
+
# @return [Google::Apis::BaremetalsolutionV2::NetworkAddress]
|
230
|
+
attr_accessor :private_network
|
231
|
+
|
232
|
+
# User note field, it can be used by customers to add additional information for
|
233
|
+
# the BMS Ops team .
|
234
|
+
# Corresponds to the JSON property `userNote`
|
235
|
+
# @return [String]
|
236
|
+
attr_accessor :user_note
|
237
|
+
|
238
|
+
def initialize(**args)
|
239
|
+
update!(**args)
|
240
|
+
end
|
241
|
+
|
242
|
+
# Update properties of this object
|
243
|
+
def update!(**args)
|
244
|
+
@client_network = args[:client_network] if args.key?(:client_network)
|
245
|
+
@hyperthreading = args[:hyperthreading] if args.key?(:hyperthreading)
|
246
|
+
@id = args[:id] if args.key?(:id)
|
247
|
+
@instance_type = args[:instance_type] if args.key?(:instance_type)
|
248
|
+
@name = args[:name] if args.key?(:name)
|
249
|
+
@os_image = args[:os_image] if args.key?(:os_image)
|
250
|
+
@private_network = args[:private_network] if args.key?(:private_network)
|
251
|
+
@user_note = args[:user_note] if args.key?(:user_note)
|
252
|
+
end
|
253
|
+
end
|
254
|
+
|
255
|
+
# A resource budget.
|
256
|
+
class InstanceQuota
|
257
|
+
include Google::Apis::Core::Hashable
|
258
|
+
|
259
|
+
# Number of machines than can be created for the given location and
|
260
|
+
# instance_type.
|
261
|
+
# Corresponds to the JSON property `availableMachineCount`
|
262
|
+
# @return [Fixnum]
|
263
|
+
attr_accessor :available_machine_count
|
264
|
+
|
265
|
+
# Instance type.
|
266
|
+
# Corresponds to the JSON property `instanceType`
|
267
|
+
# @return [String]
|
268
|
+
attr_accessor :instance_type
|
269
|
+
|
270
|
+
# Location where the quota applies.
|
271
|
+
# Corresponds to the JSON property `location`
|
272
|
+
# @return [String]
|
273
|
+
attr_accessor :location
|
274
|
+
|
275
|
+
# Output only. The name of the instance quota.
|
276
|
+
# Corresponds to the JSON property `name`
|
277
|
+
# @return [String]
|
278
|
+
attr_accessor :name
|
279
|
+
|
280
|
+
def initialize(**args)
|
281
|
+
update!(**args)
|
282
|
+
end
|
283
|
+
|
284
|
+
# Update properties of this object
|
285
|
+
def update!(**args)
|
286
|
+
@available_machine_count = args[:available_machine_count] if args.key?(:available_machine_count)
|
287
|
+
@instance_type = args[:instance_type] if args.key?(:instance_type)
|
288
|
+
@location = args[:location] if args.key?(:location)
|
289
|
+
@name = args[:name] if args.key?(:name)
|
290
|
+
end
|
291
|
+
end
|
292
|
+
|
293
|
+
# A GCP vlan attachment.
|
294
|
+
class IntakeVlanAttachment
|
295
|
+
include Google::Apis::Core::Hashable
|
296
|
+
|
297
|
+
# Identifier of the VLAN attachment.
|
298
|
+
# Corresponds to the JSON property `id`
|
299
|
+
# @return [String]
|
300
|
+
attr_accessor :id
|
301
|
+
|
302
|
+
# Attachment pairing key.
|
303
|
+
# Corresponds to the JSON property `pairingKey`
|
304
|
+
# @return [String]
|
305
|
+
attr_accessor :pairing_key
|
306
|
+
|
307
|
+
def initialize(**args)
|
308
|
+
update!(**args)
|
309
|
+
end
|
310
|
+
|
311
|
+
# Update properties of this object
|
312
|
+
def update!(**args)
|
313
|
+
@id = args[:id] if args.key?(:id)
|
314
|
+
@pairing_key = args[:pairing_key] if args.key?(:pairing_key)
|
315
|
+
end
|
316
|
+
end
|
317
|
+
|
106
318
|
# Response message for the list of servers.
|
107
319
|
class ListInstancesResponse
|
108
320
|
include Google::Apis::Core::Hashable
|
@@ -190,6 +402,201 @@ module Google
|
|
190
402
|
end
|
191
403
|
end
|
192
404
|
|
405
|
+
# Response with Networks with IPs
|
406
|
+
class ListNetworkUsageResponse
|
407
|
+
include Google::Apis::Core::Hashable
|
408
|
+
|
409
|
+
# Networks with IPs.
|
410
|
+
# Corresponds to the JSON property `networks`
|
411
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NetworkUsage>]
|
412
|
+
attr_accessor :networks
|
413
|
+
|
414
|
+
def initialize(**args)
|
415
|
+
update!(**args)
|
416
|
+
end
|
417
|
+
|
418
|
+
# Update properties of this object
|
419
|
+
def update!(**args)
|
420
|
+
@networks = args[:networks] if args.key?(:networks)
|
421
|
+
end
|
422
|
+
end
|
423
|
+
|
424
|
+
# Response message containing the list of networks.
|
425
|
+
class ListNetworksResponse
|
426
|
+
include Google::Apis::Core::Hashable
|
427
|
+
|
428
|
+
# The list of networks.
|
429
|
+
# Corresponds to the JSON property `networks`
|
430
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::Network>]
|
431
|
+
attr_accessor :networks
|
432
|
+
|
433
|
+
# A token identifying a page of results from the server.
|
434
|
+
# Corresponds to the JSON property `nextPageToken`
|
435
|
+
# @return [String]
|
436
|
+
attr_accessor :next_page_token
|
437
|
+
|
438
|
+
# Locations that could not be reached.
|
439
|
+
# Corresponds to the JSON property `unreachable`
|
440
|
+
# @return [Array<String>]
|
441
|
+
attr_accessor :unreachable
|
442
|
+
|
443
|
+
def initialize(**args)
|
444
|
+
update!(**args)
|
445
|
+
end
|
446
|
+
|
447
|
+
# Update properties of this object
|
448
|
+
def update!(**args)
|
449
|
+
@networks = args[:networks] if args.key?(:networks)
|
450
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
451
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
452
|
+
end
|
453
|
+
end
|
454
|
+
|
455
|
+
# Response message containing the list of NFS shares.
|
456
|
+
class ListNfsSharesResponse
|
457
|
+
include Google::Apis::Core::Hashable
|
458
|
+
|
459
|
+
# A token identifying a page of results from the server.
|
460
|
+
# Corresponds to the JSON property `nextPageToken`
|
461
|
+
# @return [String]
|
462
|
+
attr_accessor :next_page_token
|
463
|
+
|
464
|
+
# The list of NFS shares.
|
465
|
+
# Corresponds to the JSON property `nfsShares`
|
466
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NfsShare>]
|
467
|
+
attr_accessor :nfs_shares
|
468
|
+
|
469
|
+
# Locations that could not be reached.
|
470
|
+
# Corresponds to the JSON property `unreachable`
|
471
|
+
# @return [Array<String>]
|
472
|
+
attr_accessor :unreachable
|
473
|
+
|
474
|
+
def initialize(**args)
|
475
|
+
update!(**args)
|
476
|
+
end
|
477
|
+
|
478
|
+
# Update properties of this object
|
479
|
+
def update!(**args)
|
480
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
481
|
+
@nfs_shares = args[:nfs_shares] if args.key?(:nfs_shares)
|
482
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
483
|
+
end
|
484
|
+
end
|
485
|
+
|
486
|
+
# Response message for the list of provisioning quotas.
|
487
|
+
class ListProvisioningQuotasResponse
|
488
|
+
include Google::Apis::Core::Hashable
|
489
|
+
|
490
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
491
|
+
# results in the list.
|
492
|
+
# Corresponds to the JSON property `nextPageToken`
|
493
|
+
# @return [String]
|
494
|
+
attr_accessor :next_page_token
|
495
|
+
|
496
|
+
# The provisioning quotas registered in this project.
|
497
|
+
# Corresponds to the JSON property `provisioningQuotas`
|
498
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::ProvisioningQuota>]
|
499
|
+
attr_accessor :provisioning_quotas
|
500
|
+
|
501
|
+
def initialize(**args)
|
502
|
+
update!(**args)
|
503
|
+
end
|
504
|
+
|
505
|
+
# Update properties of this object
|
506
|
+
def update!(**args)
|
507
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
508
|
+
@provisioning_quotas = args[:provisioning_quotas] if args.key?(:provisioning_quotas)
|
509
|
+
end
|
510
|
+
end
|
511
|
+
|
512
|
+
# Response message containing the list of snapshot schedule policies.
|
513
|
+
class ListSnapshotSchedulePoliciesResponse
|
514
|
+
include Google::Apis::Core::Hashable
|
515
|
+
|
516
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
517
|
+
# results in the list.
|
518
|
+
# Corresponds to the JSON property `nextPageToken`
|
519
|
+
# @return [String]
|
520
|
+
attr_accessor :next_page_token
|
521
|
+
|
522
|
+
# The snapshot schedule policies registered in this project.
|
523
|
+
# Corresponds to the JSON property `snapshotSchedulePolicies`
|
524
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::SnapshotSchedulePolicy>]
|
525
|
+
attr_accessor :snapshot_schedule_policies
|
526
|
+
|
527
|
+
def initialize(**args)
|
528
|
+
update!(**args)
|
529
|
+
end
|
530
|
+
|
531
|
+
# Update properties of this object
|
532
|
+
def update!(**args)
|
533
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
534
|
+
@snapshot_schedule_policies = args[:snapshot_schedule_policies] if args.key?(:snapshot_schedule_policies)
|
535
|
+
end
|
536
|
+
end
|
537
|
+
|
538
|
+
# Response message containing the list of storage volume snapshots.
|
539
|
+
class ListVolumeSnapshotsResponse
|
540
|
+
include Google::Apis::Core::Hashable
|
541
|
+
|
542
|
+
# A token identifying a page of results from the server.
|
543
|
+
# Corresponds to the JSON property `nextPageToken`
|
544
|
+
# @return [String]
|
545
|
+
attr_accessor :next_page_token
|
546
|
+
|
547
|
+
# Locations that could not be reached.
|
548
|
+
# Corresponds to the JSON property `unreachable`
|
549
|
+
# @return [Array<String>]
|
550
|
+
attr_accessor :unreachable
|
551
|
+
|
552
|
+
# The list of storage volumes.
|
553
|
+
# Corresponds to the JSON property `volumeSnapshots`
|
554
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::VolumeSnapshot>]
|
555
|
+
attr_accessor :volume_snapshots
|
556
|
+
|
557
|
+
def initialize(**args)
|
558
|
+
update!(**args)
|
559
|
+
end
|
560
|
+
|
561
|
+
# Update properties of this object
|
562
|
+
def update!(**args)
|
563
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
564
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
565
|
+
@volume_snapshots = args[:volume_snapshots] if args.key?(:volume_snapshots)
|
566
|
+
end
|
567
|
+
end
|
568
|
+
|
569
|
+
# Response message containing the list of storage volumes.
|
570
|
+
class ListVolumesResponse
|
571
|
+
include Google::Apis::Core::Hashable
|
572
|
+
|
573
|
+
# A token identifying a page of results from the server.
|
574
|
+
# Corresponds to the JSON property `nextPageToken`
|
575
|
+
# @return [String]
|
576
|
+
attr_accessor :next_page_token
|
577
|
+
|
578
|
+
# Locations that could not be reached.
|
579
|
+
# Corresponds to the JSON property `unreachable`
|
580
|
+
# @return [Array<String>]
|
581
|
+
attr_accessor :unreachable
|
582
|
+
|
583
|
+
# The list of storage volumes.
|
584
|
+
# Corresponds to the JSON property `volumes`
|
585
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::Volume>]
|
586
|
+
attr_accessor :volumes
|
587
|
+
|
588
|
+
def initialize(**args)
|
589
|
+
update!(**args)
|
590
|
+
end
|
591
|
+
|
592
|
+
# Update properties of this object
|
593
|
+
def update!(**args)
|
594
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
595
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
596
|
+
@volumes = args[:volumes] if args.key?(:volumes)
|
597
|
+
end
|
598
|
+
end
|
599
|
+
|
193
600
|
# A resource that represents Google Cloud Platform location.
|
194
601
|
class Location
|
195
602
|
include Google::Apis::Core::Hashable
|
@@ -247,7 +654,12 @@ module Google
|
|
247
654
|
attr_accessor :boot_lun
|
248
655
|
alias_method :boot_lun?, :boot_lun
|
249
656
|
|
250
|
-
#
|
657
|
+
# An identifier for the LUN, generated by the backend.
|
658
|
+
# Corresponds to the JSON property `id`
|
659
|
+
# @return [String]
|
660
|
+
attr_accessor :id
|
661
|
+
|
662
|
+
# The LUN multiprotocol type ensures the characteristics of the LUN are
|
251
663
|
# optimized for each operating system.
|
252
664
|
# Corresponds to the JSON property `multiprotocolType`
|
253
665
|
# @return [String]
|
@@ -296,6 +708,7 @@ module Google
|
|
296
708
|
# Update properties of this object
|
297
709
|
def update!(**args)
|
298
710
|
@boot_lun = args[:boot_lun] if args.key?(:boot_lun)
|
711
|
+
@id = args[:id] if args.key?(:id)
|
299
712
|
@multiprotocol_type = args[:multiprotocol_type] if args.key?(:multiprotocol_type)
|
300
713
|
@name = args[:name] if args.key?(:name)
|
301
714
|
@shareable = args[:shareable] if args.key?(:shareable)
|
@@ -307,6 +720,31 @@ module Google
|
|
307
720
|
end
|
308
721
|
end
|
309
722
|
|
723
|
+
# A LUN(Logical Unit Number) range.
|
724
|
+
class LunRange
|
725
|
+
include Google::Apis::Core::Hashable
|
726
|
+
|
727
|
+
# Number of LUNs to create.
|
728
|
+
# Corresponds to the JSON property `quantity`
|
729
|
+
# @return [Fixnum]
|
730
|
+
attr_accessor :quantity
|
731
|
+
|
732
|
+
# The requested size of each LUN, in GB.
|
733
|
+
# Corresponds to the JSON property `sizeGb`
|
734
|
+
# @return [Fixnum]
|
735
|
+
attr_accessor :size_gb
|
736
|
+
|
737
|
+
def initialize(**args)
|
738
|
+
update!(**args)
|
739
|
+
end
|
740
|
+
|
741
|
+
# Update properties of this object
|
742
|
+
def update!(**args)
|
743
|
+
@quantity = args[:quantity] if args.key?(:quantity)
|
744
|
+
@size_gb = args[:size_gb] if args.key?(:size_gb)
|
745
|
+
end
|
746
|
+
end
|
747
|
+
|
310
748
|
# A Network.
|
311
749
|
class Network
|
312
750
|
include Google::Apis::Core::Hashable
|
@@ -316,11 +754,21 @@ module Google
|
|
316
754
|
# @return [String]
|
317
755
|
attr_accessor :cidr
|
318
756
|
|
757
|
+
# An identifier for the `Network`, generated by the backend.
|
758
|
+
# Corresponds to the JSON property `id`
|
759
|
+
# @return [String]
|
760
|
+
attr_accessor :id
|
761
|
+
|
319
762
|
# IP address configured.
|
320
763
|
# Corresponds to the JSON property `ipAddress`
|
321
764
|
# @return [String]
|
322
765
|
attr_accessor :ip_address
|
323
766
|
|
767
|
+
# Labels as key value pairs.
|
768
|
+
# Corresponds to the JSON property `labels`
|
769
|
+
# @return [Hash<String,String>]
|
770
|
+
attr_accessor :labels
|
771
|
+
|
324
772
|
# List of physical interfaces.
|
325
773
|
# Corresponds to the JSON property `macAddress`
|
326
774
|
# @return [Array<String>]
|
@@ -329,17 +777,15 @@ module Google
|
|
329
777
|
# Output only. The resource name of this `Network`. Resource names are
|
330
778
|
# schemeless URIs that follow the conventions in https://cloud.google.com/apis/
|
331
779
|
# design/resource_names. Format: `projects/`project`/locations/`location`/
|
332
|
-
# networks/`network``
|
333
|
-
# which will soon be deprecated. Please use this field to reference the name of
|
334
|
-
# the network resource.
|
780
|
+
# networks/`network``
|
335
781
|
# Corresponds to the JSON property `name`
|
336
782
|
# @return [String]
|
337
783
|
attr_accessor :name
|
338
784
|
|
339
|
-
#
|
340
|
-
# Corresponds to the JSON property `
|
785
|
+
# IP range for reserved for services (e.g. NFS).
|
786
|
+
# Corresponds to the JSON property `servicesCidr`
|
341
787
|
# @return [String]
|
342
|
-
attr_accessor :
|
788
|
+
attr_accessor :services_cidr
|
343
789
|
|
344
790
|
# The Network state.
|
345
791
|
# Corresponds to the JSON property `state`
|
@@ -368,10 +814,12 @@ module Google
|
|
368
814
|
# Update properties of this object
|
369
815
|
def update!(**args)
|
370
816
|
@cidr = args[:cidr] if args.key?(:cidr)
|
817
|
+
@id = args[:id] if args.key?(:id)
|
371
818
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
819
|
+
@labels = args[:labels] if args.key?(:labels)
|
372
820
|
@mac_address = args[:mac_address] if args.key?(:mac_address)
|
373
821
|
@name = args[:name] if args.key?(:name)
|
374
|
-
@
|
822
|
+
@services_cidr = args[:services_cidr] if args.key?(:services_cidr)
|
375
823
|
@state = args[:state] if args.key?(:state)
|
376
824
|
@type = args[:type] if args.key?(:type)
|
377
825
|
@vlan_id = args[:vlan_id] if args.key?(:vlan_id)
|
@@ -379,46 +827,935 @@ module Google
|
|
379
827
|
end
|
380
828
|
end
|
381
829
|
|
382
|
-
# A network
|
383
|
-
class
|
830
|
+
# A network.
|
831
|
+
class NetworkAddress
|
384
832
|
include Google::Apis::Core::Hashable
|
385
833
|
|
386
|
-
#
|
387
|
-
# Corresponds to the JSON property `
|
834
|
+
# IPv4 address to be assigned to the server.
|
835
|
+
# Corresponds to the JSON property `address`
|
388
836
|
# @return [String]
|
389
|
-
attr_accessor :
|
837
|
+
attr_accessor :address
|
390
838
|
|
391
|
-
#
|
392
|
-
# Corresponds to the JSON property `
|
839
|
+
# Name of the existing network to use.
|
840
|
+
# Corresponds to the JSON property `existingNetworkId`
|
393
841
|
# @return [String]
|
394
|
-
attr_accessor :
|
842
|
+
attr_accessor :existing_network_id
|
395
843
|
|
396
|
-
#
|
844
|
+
# Id of the network to use, within the same ProvisioningConfig request.
|
845
|
+
# Corresponds to the JSON property `networkId`
|
846
|
+
# @return [String]
|
847
|
+
attr_accessor :network_id
|
848
|
+
|
849
|
+
def initialize(**args)
|
850
|
+
update!(**args)
|
851
|
+
end
|
852
|
+
|
853
|
+
# Update properties of this object
|
854
|
+
def update!(**args)
|
855
|
+
@address = args[:address] if args.key?(:address)
|
856
|
+
@existing_network_id = args[:existing_network_id] if args.key?(:existing_network_id)
|
857
|
+
@network_id = args[:network_id] if args.key?(:network_id)
|
858
|
+
end
|
859
|
+
end
|
860
|
+
|
861
|
+
# Configuration parameters for a new network.
|
862
|
+
class NetworkConfig
|
863
|
+
include Google::Apis::Core::Hashable
|
864
|
+
|
865
|
+
# Interconnect bandwidth. Set only when type is CLIENT.
|
866
|
+
# Corresponds to the JSON property `bandwidth`
|
867
|
+
# @return [String]
|
868
|
+
attr_accessor :bandwidth
|
869
|
+
|
870
|
+
# CIDR range of the network.
|
871
|
+
# Corresponds to the JSON property `cidr`
|
872
|
+
# @return [String]
|
873
|
+
attr_accessor :cidr
|
874
|
+
|
875
|
+
# A transient unique identifier to identify a volume within an
|
876
|
+
# ProvisioningConfig request.
|
877
|
+
# Corresponds to the JSON property `id`
|
878
|
+
# @return [String]
|
879
|
+
attr_accessor :id
|
880
|
+
|
881
|
+
# Output only. The name of the network config.
|
397
882
|
# Corresponds to the JSON property `name`
|
398
883
|
# @return [String]
|
399
884
|
attr_accessor :name
|
400
885
|
|
401
|
-
#
|
402
|
-
# Corresponds to the JSON property `
|
403
|
-
# @return [
|
404
|
-
attr_accessor :
|
886
|
+
# Service CIDR, if any.
|
887
|
+
# Corresponds to the JSON property `serviceCidr`
|
888
|
+
# @return [String]
|
889
|
+
attr_accessor :service_cidr
|
405
890
|
|
406
|
-
# The
|
891
|
+
# The type of this network, either Client or Private.
|
892
|
+
# Corresponds to the JSON property `type`
|
893
|
+
# @return [String]
|
894
|
+
attr_accessor :type
|
895
|
+
|
896
|
+
# User note field, it can be used by customers to add additional information for
|
897
|
+
# the BMS Ops team (b/194021617).
|
898
|
+
# Corresponds to the JSON property `userNote`
|
899
|
+
# @return [String]
|
900
|
+
attr_accessor :user_note
|
901
|
+
|
902
|
+
# List of VLAN attachments. As of now there are always 2 attachments, but it is
|
903
|
+
# going to change in the future (multi vlan).
|
904
|
+
# Corresponds to the JSON property `vlanAttachments`
|
905
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::IntakeVlanAttachment>]
|
906
|
+
attr_accessor :vlan_attachments
|
907
|
+
|
908
|
+
def initialize(**args)
|
909
|
+
update!(**args)
|
910
|
+
end
|
911
|
+
|
912
|
+
# Update properties of this object
|
913
|
+
def update!(**args)
|
914
|
+
@bandwidth = args[:bandwidth] if args.key?(:bandwidth)
|
915
|
+
@cidr = args[:cidr] if args.key?(:cidr)
|
916
|
+
@id = args[:id] if args.key?(:id)
|
917
|
+
@name = args[:name] if args.key?(:name)
|
918
|
+
@service_cidr = args[:service_cidr] if args.key?(:service_cidr)
|
919
|
+
@type = args[:type] if args.key?(:type)
|
920
|
+
@user_note = args[:user_note] if args.key?(:user_note)
|
921
|
+
@vlan_attachments = args[:vlan_attachments] if args.key?(:vlan_attachments)
|
922
|
+
end
|
923
|
+
end
|
924
|
+
|
925
|
+
# Network with all used IP addresses.
|
926
|
+
class NetworkUsage
|
927
|
+
include Google::Apis::Core::Hashable
|
928
|
+
|
929
|
+
# A Network.
|
930
|
+
# Corresponds to the JSON property `network`
|
931
|
+
# @return [Google::Apis::BaremetalsolutionV2::Network]
|
932
|
+
attr_accessor :network
|
933
|
+
|
934
|
+
# All used IP addresses in this network.
|
935
|
+
# Corresponds to the JSON property `usedIps`
|
936
|
+
# @return [Array<String>]
|
937
|
+
attr_accessor :used_ips
|
938
|
+
|
939
|
+
def initialize(**args)
|
940
|
+
update!(**args)
|
941
|
+
end
|
942
|
+
|
943
|
+
# Update properties of this object
|
944
|
+
def update!(**args)
|
945
|
+
@network = args[:network] if args.key?(:network)
|
946
|
+
@used_ips = args[:used_ips] if args.key?(:used_ips)
|
947
|
+
end
|
948
|
+
end
|
949
|
+
|
950
|
+
# A NFS export entry.
|
951
|
+
class NfsExport
|
952
|
+
include Google::Apis::Core::Hashable
|
953
|
+
|
954
|
+
# Allow dev flag in NfsShare AllowedClientsRequest.
|
955
|
+
# Corresponds to the JSON property `allowDev`
|
956
|
+
# @return [Boolean]
|
957
|
+
attr_accessor :allow_dev
|
958
|
+
alias_method :allow_dev?, :allow_dev
|
959
|
+
|
960
|
+
# Allow the setuid flag.
|
961
|
+
# Corresponds to the JSON property `allowSuid`
|
962
|
+
# @return [Boolean]
|
963
|
+
attr_accessor :allow_suid
|
964
|
+
alias_method :allow_suid?, :allow_suid
|
965
|
+
|
966
|
+
# A CIDR range.
|
967
|
+
# Corresponds to the JSON property `cidr`
|
968
|
+
# @return [String]
|
969
|
+
attr_accessor :cidr
|
970
|
+
|
971
|
+
# Either a single machine, identified by an ID, or a comma-separated list of
|
972
|
+
# machine IDs.
|
973
|
+
# Corresponds to the JSON property `machineId`
|
974
|
+
# @return [String]
|
975
|
+
attr_accessor :machine_id
|
976
|
+
|
977
|
+
# Network to use to publish the export.
|
978
|
+
# Corresponds to the JSON property `networkId`
|
979
|
+
# @return [String]
|
980
|
+
attr_accessor :network_id
|
981
|
+
|
982
|
+
# Disable root squashing, which is a feature of NFS. Root squash is a special
|
983
|
+
# mapping of the remote superuser (root) identity when using identity
|
984
|
+
# authentication.
|
985
|
+
# Corresponds to the JSON property `noRootSquash`
|
986
|
+
# @return [Boolean]
|
987
|
+
attr_accessor :no_root_squash
|
988
|
+
alias_method :no_root_squash?, :no_root_squash
|
989
|
+
|
990
|
+
# Export permissions.
|
991
|
+
# Corresponds to the JSON property `permissions`
|
992
|
+
# @return [String]
|
993
|
+
attr_accessor :permissions
|
994
|
+
|
995
|
+
def initialize(**args)
|
996
|
+
update!(**args)
|
997
|
+
end
|
998
|
+
|
999
|
+
# Update properties of this object
|
1000
|
+
def update!(**args)
|
1001
|
+
@allow_dev = args[:allow_dev] if args.key?(:allow_dev)
|
1002
|
+
@allow_suid = args[:allow_suid] if args.key?(:allow_suid)
|
1003
|
+
@cidr = args[:cidr] if args.key?(:cidr)
|
1004
|
+
@machine_id = args[:machine_id] if args.key?(:machine_id)
|
1005
|
+
@network_id = args[:network_id] if args.key?(:network_id)
|
1006
|
+
@no_root_squash = args[:no_root_squash] if args.key?(:no_root_squash)
|
1007
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
1008
|
+
end
|
1009
|
+
end
|
1010
|
+
|
1011
|
+
# An NFS share.
|
1012
|
+
class NfsShare
|
1013
|
+
include Google::Apis::Core::Hashable
|
1014
|
+
|
1015
|
+
# List of allowed access points.
|
1016
|
+
# Corresponds to the JSON property `allowedClients`
|
1017
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::AllowedClient>]
|
1018
|
+
attr_accessor :allowed_clients
|
1019
|
+
|
1020
|
+
# Labels as key value pairs.
|
1021
|
+
# Corresponds to the JSON property `labels`
|
1022
|
+
# @return [Hash<String,String>]
|
1023
|
+
attr_accessor :labels
|
1024
|
+
|
1025
|
+
# Output only. The name of the NFS share.
|
1026
|
+
# Corresponds to the JSON property `name`
|
1027
|
+
# @return [String]
|
1028
|
+
attr_accessor :name
|
1029
|
+
|
1030
|
+
# Output only. An identifier for the NFS share, generated by the backend.
|
1031
|
+
# Corresponds to the JSON property `nfsShareId`
|
1032
|
+
# @return [String]
|
1033
|
+
attr_accessor :nfs_share_id
|
1034
|
+
|
1035
|
+
# The state of the NFS share.
|
407
1036
|
# Corresponds to the JSON property `state`
|
408
1037
|
# @return [String]
|
409
1038
|
attr_accessor :state
|
410
1039
|
|
1040
|
+
# The volume containing the share.
|
1041
|
+
# Corresponds to the JSON property `volume`
|
1042
|
+
# @return [String]
|
1043
|
+
attr_accessor :volume
|
1044
|
+
|
411
1045
|
def initialize(**args)
|
412
1046
|
update!(**args)
|
413
1047
|
end
|
414
1048
|
|
415
1049
|
# Update properties of this object
|
416
1050
|
def update!(**args)
|
417
|
-
@
|
418
|
-
@
|
1051
|
+
@allowed_clients = args[:allowed_clients] if args.key?(:allowed_clients)
|
1052
|
+
@labels = args[:labels] if args.key?(:labels)
|
419
1053
|
@name = args[:name] if args.key?(:name)
|
420
|
-
@
|
1054
|
+
@nfs_share_id = args[:nfs_share_id] if args.key?(:nfs_share_id)
|
421
1055
|
@state = args[:state] if args.key?(:state)
|
1056
|
+
@volume = args[:volume] if args.key?(:volume)
|
1057
|
+
end
|
1058
|
+
end
|
1059
|
+
|
1060
|
+
# This resource represents a long-running operation that is the result of a
|
1061
|
+
# network API call.
|
1062
|
+
class Operation
|
1063
|
+
include Google::Apis::Core::Hashable
|
1064
|
+
|
1065
|
+
# If the value is `false`, it means the operation is still in progress. If `true`
|
1066
|
+
# , the operation is completed, and either `error` or `response` is available.
|
1067
|
+
# Corresponds to the JSON property `done`
|
1068
|
+
# @return [Boolean]
|
1069
|
+
attr_accessor :done
|
1070
|
+
alias_method :done?, :done
|
1071
|
+
|
1072
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1073
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1074
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1075
|
+
# data: error code, error message, and error details. You can find out more
|
1076
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1077
|
+
# //cloud.google.com/apis/design/errors).
|
1078
|
+
# Corresponds to the JSON property `error`
|
1079
|
+
# @return [Google::Apis::BaremetalsolutionV2::Status]
|
1080
|
+
attr_accessor :error
|
1081
|
+
|
1082
|
+
# Service-specific metadata associated with the operation. It typically contains
|
1083
|
+
# progress information and common metadata such as create time. Some services
|
1084
|
+
# might not provide such metadata. Any method that returns a long-running
|
1085
|
+
# operation should document the metadata type, if any.
|
1086
|
+
# Corresponds to the JSON property `metadata`
|
1087
|
+
# @return [Hash<String,Object>]
|
1088
|
+
attr_accessor :metadata
|
1089
|
+
|
1090
|
+
# The server-assigned name, which is only unique within the same service that
|
1091
|
+
# originally returns it. If you use the default HTTP mapping, the `name` should
|
1092
|
+
# be a resource name ending with `operations/`unique_id``.
|
1093
|
+
# Corresponds to the JSON property `name`
|
1094
|
+
# @return [String]
|
1095
|
+
attr_accessor :name
|
1096
|
+
|
1097
|
+
# The normal response of the operation in case of success. If the original
|
1098
|
+
# method returns no data on success, such as `Delete`, the response is `google.
|
1099
|
+
# protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
|
1100
|
+
# the response should be the resource. For other methods, the response should
|
1101
|
+
# have the type `XxxResponse`, where `Xxx` is the original method name. For
|
1102
|
+
# example, if the original method name is `TakeSnapshot()`, the inferred
|
1103
|
+
# response type is `TakeSnapshotResponse`.
|
1104
|
+
# Corresponds to the JSON property `response`
|
1105
|
+
# @return [Hash<String,Object>]
|
1106
|
+
attr_accessor :response
|
1107
|
+
|
1108
|
+
def initialize(**args)
|
1109
|
+
update!(**args)
|
1110
|
+
end
|
1111
|
+
|
1112
|
+
# Update properties of this object
|
1113
|
+
def update!(**args)
|
1114
|
+
@done = args[:done] if args.key?(:done)
|
1115
|
+
@error = args[:error] if args.key?(:error)
|
1116
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1117
|
+
@name = args[:name] if args.key?(:name)
|
1118
|
+
@response = args[:response] if args.key?(:response)
|
1119
|
+
end
|
1120
|
+
end
|
1121
|
+
|
1122
|
+
# A provisioning configuration.
|
1123
|
+
class ProvisioningConfig
|
1124
|
+
include Google::Apis::Core::Hashable
|
1125
|
+
|
1126
|
+
# A service account to enable customers to access instance credentials upon
|
1127
|
+
# handover.
|
1128
|
+
# Corresponds to the JSON property `handoverServiceAccount`
|
1129
|
+
# @return [String]
|
1130
|
+
attr_accessor :handover_service_account
|
1131
|
+
|
1132
|
+
# Instances to be created.
|
1133
|
+
# Corresponds to the JSON property `instances`
|
1134
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::InstanceConfig>]
|
1135
|
+
attr_accessor :instances
|
1136
|
+
|
1137
|
+
# Output only. The name of the provisioning config.
|
1138
|
+
# Corresponds to the JSON property `name`
|
1139
|
+
# @return [String]
|
1140
|
+
attr_accessor :name
|
1141
|
+
|
1142
|
+
# Networks to be created.
|
1143
|
+
# Corresponds to the JSON property `networks`
|
1144
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NetworkConfig>]
|
1145
|
+
attr_accessor :networks
|
1146
|
+
|
1147
|
+
# A generated buganizer id to track provisioning request.
|
1148
|
+
# Corresponds to the JSON property `ticketId`
|
1149
|
+
# @return [String]
|
1150
|
+
attr_accessor :ticket_id
|
1151
|
+
|
1152
|
+
# Volumes to be created.
|
1153
|
+
# Corresponds to the JSON property `volumes`
|
1154
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::VolumeConfig>]
|
1155
|
+
attr_accessor :volumes
|
1156
|
+
|
1157
|
+
def initialize(**args)
|
1158
|
+
update!(**args)
|
1159
|
+
end
|
1160
|
+
|
1161
|
+
# Update properties of this object
|
1162
|
+
def update!(**args)
|
1163
|
+
@handover_service_account = args[:handover_service_account] if args.key?(:handover_service_account)
|
1164
|
+
@instances = args[:instances] if args.key?(:instances)
|
1165
|
+
@name = args[:name] if args.key?(:name)
|
1166
|
+
@networks = args[:networks] if args.key?(:networks)
|
1167
|
+
@ticket_id = args[:ticket_id] if args.key?(:ticket_id)
|
1168
|
+
@volumes = args[:volumes] if args.key?(:volumes)
|
1169
|
+
end
|
1170
|
+
end
|
1171
|
+
|
1172
|
+
# A provisioning quota for a given project.
|
1173
|
+
class ProvisioningQuota
|
1174
|
+
include Google::Apis::Core::Hashable
|
1175
|
+
|
1176
|
+
# The asset type of this provisioning quota.
|
1177
|
+
# Corresponds to the JSON property `assetType`
|
1178
|
+
# @return [String]
|
1179
|
+
attr_accessor :asset_type
|
1180
|
+
|
1181
|
+
# The available count of the provisioning quota.
|
1182
|
+
# Corresponds to the JSON property `availableCount`
|
1183
|
+
# @return [Fixnum]
|
1184
|
+
attr_accessor :available_count
|
1185
|
+
|
1186
|
+
# The gcp service of the provisioning quota.
|
1187
|
+
# Corresponds to the JSON property `gcpService`
|
1188
|
+
# @return [String]
|
1189
|
+
attr_accessor :gcp_service
|
1190
|
+
|
1191
|
+
# A resource budget.
|
1192
|
+
# Corresponds to the JSON property `instanceQuota`
|
1193
|
+
# @return [Google::Apis::BaremetalsolutionV2::InstanceQuota]
|
1194
|
+
attr_accessor :instance_quota
|
1195
|
+
|
1196
|
+
# The specific location of the provisioining quota.
|
1197
|
+
# Corresponds to the JSON property `location`
|
1198
|
+
# @return [String]
|
1199
|
+
attr_accessor :location
|
1200
|
+
|
1201
|
+
# Output only. The name of the provisioning quota.
|
1202
|
+
# Corresponds to the JSON property `name`
|
1203
|
+
# @return [String]
|
1204
|
+
attr_accessor :name
|
1205
|
+
|
1206
|
+
def initialize(**args)
|
1207
|
+
update!(**args)
|
1208
|
+
end
|
1209
|
+
|
1210
|
+
# Update properties of this object
|
1211
|
+
def update!(**args)
|
1212
|
+
@asset_type = args[:asset_type] if args.key?(:asset_type)
|
1213
|
+
@available_count = args[:available_count] if args.key?(:available_count)
|
1214
|
+
@gcp_service = args[:gcp_service] if args.key?(:gcp_service)
|
1215
|
+
@instance_quota = args[:instance_quota] if args.key?(:instance_quota)
|
1216
|
+
@location = args[:location] if args.key?(:location)
|
1217
|
+
@name = args[:name] if args.key?(:name)
|
1218
|
+
end
|
1219
|
+
end
|
1220
|
+
|
1221
|
+
# QOS policy parameters.
|
1222
|
+
class QosPolicy
|
1223
|
+
include Google::Apis::Core::Hashable
|
1224
|
+
|
1225
|
+
# The bandwidth permitted by the QOS policy, in gbps.
|
1226
|
+
# Corresponds to the JSON property `bandwidthGbps`
|
1227
|
+
# @return [Float]
|
1228
|
+
attr_accessor :bandwidth_gbps
|
1229
|
+
|
1230
|
+
def initialize(**args)
|
1231
|
+
update!(**args)
|
1232
|
+
end
|
1233
|
+
|
1234
|
+
# Update properties of this object
|
1235
|
+
def update!(**args)
|
1236
|
+
@bandwidth_gbps = args[:bandwidth_gbps] if args.key?(:bandwidth_gbps)
|
1237
|
+
end
|
1238
|
+
end
|
1239
|
+
|
1240
|
+
# Message requesting to reset a server.
|
1241
|
+
class ResetInstanceRequest
|
1242
|
+
include Google::Apis::Core::Hashable
|
1243
|
+
|
1244
|
+
def initialize(**args)
|
1245
|
+
update!(**args)
|
1246
|
+
end
|
1247
|
+
|
1248
|
+
# Update properties of this object
|
1249
|
+
def update!(**args)
|
1250
|
+
end
|
1251
|
+
end
|
1252
|
+
|
1253
|
+
# Message for restoring a volume snapshot.
|
1254
|
+
class RestoreVolumeSnapshotRequest
|
1255
|
+
include Google::Apis::Core::Hashable
|
1256
|
+
|
1257
|
+
def initialize(**args)
|
1258
|
+
update!(**args)
|
1259
|
+
end
|
1260
|
+
|
1261
|
+
# Update properties of this object
|
1262
|
+
def update!(**args)
|
1263
|
+
end
|
1264
|
+
end
|
1265
|
+
|
1266
|
+
# A snapshot schedule.
|
1267
|
+
class Schedule
|
1268
|
+
include Google::Apis::Core::Hashable
|
1269
|
+
|
1270
|
+
# A crontab-like specification that the schedule uses to take snapshots.
|
1271
|
+
# Corresponds to the JSON property `crontabSpec`
|
1272
|
+
# @return [String]
|
1273
|
+
attr_accessor :crontab_spec
|
1274
|
+
|
1275
|
+
# A list of snapshot names created in this schedule.
|
1276
|
+
# Corresponds to the JSON property `prefix`
|
1277
|
+
# @return [String]
|
1278
|
+
attr_accessor :prefix
|
1279
|
+
|
1280
|
+
# The maximum number of snapshots to retain in this schedule.
|
1281
|
+
# Corresponds to the JSON property `retentionCount`
|
1282
|
+
# @return [Fixnum]
|
1283
|
+
attr_accessor :retention_count
|
1284
|
+
|
1285
|
+
def initialize(**args)
|
1286
|
+
update!(**args)
|
1287
|
+
end
|
1288
|
+
|
1289
|
+
# Update properties of this object
|
1290
|
+
def update!(**args)
|
1291
|
+
@crontab_spec = args[:crontab_spec] if args.key?(:crontab_spec)
|
1292
|
+
@prefix = args[:prefix] if args.key?(:prefix)
|
1293
|
+
@retention_count = args[:retention_count] if args.key?(:retention_count)
|
1294
|
+
end
|
1295
|
+
end
|
1296
|
+
|
1297
|
+
# Details about snapshot space reservation and usage on the storage volume.
|
1298
|
+
class SnapshotReservationDetail
|
1299
|
+
include Google::Apis::Core::Hashable
|
1300
|
+
|
1301
|
+
# The space on this storage volume reserved for snapshots, shown in GiB.
|
1302
|
+
# Corresponds to the JSON property `reservedSpaceGib`
|
1303
|
+
# @return [Fixnum]
|
1304
|
+
attr_accessor :reserved_space_gib
|
1305
|
+
|
1306
|
+
# The amount, in GiB, of available space in this storage volume's reserved
|
1307
|
+
# snapshot space.
|
1308
|
+
# Corresponds to the JSON property `reservedSpaceRemainingGib`
|
1309
|
+
# @return [Fixnum]
|
1310
|
+
attr_accessor :reserved_space_remaining_gib
|
1311
|
+
|
1312
|
+
# The percent of snapshot space on this storage volume actually being used by
|
1313
|
+
# the snapshot copies. This value might be higher than 100% if the snapshot
|
1314
|
+
# copies have overflowed into the data portion of the storage volume.
|
1315
|
+
# Corresponds to the JSON property `reservedSpaceUsedPercent`
|
1316
|
+
# @return [Fixnum]
|
1317
|
+
attr_accessor :reserved_space_used_percent
|
1318
|
+
|
1319
|
+
def initialize(**args)
|
1320
|
+
update!(**args)
|
1321
|
+
end
|
1322
|
+
|
1323
|
+
# Update properties of this object
|
1324
|
+
def update!(**args)
|
1325
|
+
@reserved_space_gib = args[:reserved_space_gib] if args.key?(:reserved_space_gib)
|
1326
|
+
@reserved_space_remaining_gib = args[:reserved_space_remaining_gib] if args.key?(:reserved_space_remaining_gib)
|
1327
|
+
@reserved_space_used_percent = args[:reserved_space_used_percent] if args.key?(:reserved_space_used_percent)
|
1328
|
+
end
|
1329
|
+
end
|
1330
|
+
|
1331
|
+
# A snapshot schedule policy.
|
1332
|
+
class SnapshotSchedulePolicy
|
1333
|
+
include Google::Apis::Core::Hashable
|
1334
|
+
|
1335
|
+
# The description of the snapshot schedule policy.
|
1336
|
+
# Corresponds to the JSON property `description`
|
1337
|
+
# @return [String]
|
1338
|
+
attr_accessor :description
|
1339
|
+
|
1340
|
+
# An identifier for the snapshot schedule policy, generated by the backend.
|
1341
|
+
# Corresponds to the JSON property `id`
|
1342
|
+
# @return [String]
|
1343
|
+
attr_accessor :id
|
1344
|
+
|
1345
|
+
# Labels as key value pairs.
|
1346
|
+
# Corresponds to the JSON property `labels`
|
1347
|
+
# @return [Hash<String,String>]
|
1348
|
+
attr_accessor :labels
|
1349
|
+
|
1350
|
+
# Output only. The name of the snapshot schedule policy.
|
1351
|
+
# Corresponds to the JSON property `name`
|
1352
|
+
# @return [String]
|
1353
|
+
attr_accessor :name
|
1354
|
+
|
1355
|
+
# The snapshot schedules contained in this policy. You can specify a maximum of
|
1356
|
+
# 5 schedules.
|
1357
|
+
# Corresponds to the JSON property `schedules`
|
1358
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::Schedule>]
|
1359
|
+
attr_accessor :schedules
|
1360
|
+
|
1361
|
+
# The state of the snapshot schedule policy.
|
1362
|
+
# Corresponds to the JSON property `state`
|
1363
|
+
# @return [String]
|
1364
|
+
attr_accessor :state
|
1365
|
+
|
1366
|
+
def initialize(**args)
|
1367
|
+
update!(**args)
|
1368
|
+
end
|
1369
|
+
|
1370
|
+
# Update properties of this object
|
1371
|
+
def update!(**args)
|
1372
|
+
@description = args[:description] if args.key?(:description)
|
1373
|
+
@id = args[:id] if args.key?(:id)
|
1374
|
+
@labels = args[:labels] if args.key?(:labels)
|
1375
|
+
@name = args[:name] if args.key?(:name)
|
1376
|
+
@schedules = args[:schedules] if args.key?(:schedules)
|
1377
|
+
@state = args[:state] if args.key?(:state)
|
1378
|
+
end
|
1379
|
+
end
|
1380
|
+
|
1381
|
+
# Message requesting to start a server.
|
1382
|
+
class StartInstanceRequest
|
1383
|
+
include Google::Apis::Core::Hashable
|
1384
|
+
|
1385
|
+
def initialize(**args)
|
1386
|
+
update!(**args)
|
1387
|
+
end
|
1388
|
+
|
1389
|
+
# Update properties of this object
|
1390
|
+
def update!(**args)
|
1391
|
+
end
|
1392
|
+
end
|
1393
|
+
|
1394
|
+
# The `Status` type defines a logical error model that is suitable for different
|
1395
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
1396
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
1397
|
+
# data: error code, error message, and error details. You can find out more
|
1398
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
1399
|
+
# //cloud.google.com/apis/design/errors).
|
1400
|
+
class Status
|
1401
|
+
include Google::Apis::Core::Hashable
|
1402
|
+
|
1403
|
+
# The status code, which should be an enum value of google.rpc.Code.
|
1404
|
+
# Corresponds to the JSON property `code`
|
1405
|
+
# @return [Fixnum]
|
1406
|
+
attr_accessor :code
|
1407
|
+
|
1408
|
+
# A list of messages that carry the error details. There is a common set of
|
1409
|
+
# message types for APIs to use.
|
1410
|
+
# Corresponds to the JSON property `details`
|
1411
|
+
# @return [Array<Hash<String,Object>>]
|
1412
|
+
attr_accessor :details
|
1413
|
+
|
1414
|
+
# A developer-facing error message, which should be in English. Any user-facing
|
1415
|
+
# error message should be localized and sent in the google.rpc.Status.details
|
1416
|
+
# field, or localized by the client.
|
1417
|
+
# Corresponds to the JSON property `message`
|
1418
|
+
# @return [String]
|
1419
|
+
attr_accessor :message
|
1420
|
+
|
1421
|
+
def initialize(**args)
|
1422
|
+
update!(**args)
|
1423
|
+
end
|
1424
|
+
|
1425
|
+
# Update properties of this object
|
1426
|
+
def update!(**args)
|
1427
|
+
@code = args[:code] if args.key?(:code)
|
1428
|
+
@details = args[:details] if args.key?(:details)
|
1429
|
+
@message = args[:message] if args.key?(:message)
|
1430
|
+
end
|
1431
|
+
end
|
1432
|
+
|
1433
|
+
# Request for SubmitProvisioningConfig.
|
1434
|
+
class SubmitProvisioningConfigRequest
|
1435
|
+
include Google::Apis::Core::Hashable
|
1436
|
+
|
1437
|
+
# Optional. Email provided to send a confirmation with provisioning config to.
|
1438
|
+
# Corresponds to the JSON property `email`
|
1439
|
+
# @return [String]
|
1440
|
+
attr_accessor :email
|
1441
|
+
|
1442
|
+
# A provisioning configuration.
|
1443
|
+
# Corresponds to the JSON property `provisioningConfig`
|
1444
|
+
# @return [Google::Apis::BaremetalsolutionV2::ProvisioningConfig]
|
1445
|
+
attr_accessor :provisioning_config
|
1446
|
+
|
1447
|
+
def initialize(**args)
|
1448
|
+
update!(**args)
|
1449
|
+
end
|
1450
|
+
|
1451
|
+
# Update properties of this object
|
1452
|
+
def update!(**args)
|
1453
|
+
@email = args[:email] if args.key?(:email)
|
1454
|
+
@provisioning_config = args[:provisioning_config] if args.key?(:provisioning_config)
|
1455
|
+
end
|
1456
|
+
end
|
1457
|
+
|
1458
|
+
# Response for SubmitProvisioningConfig.
|
1459
|
+
class SubmitProvisioningConfigResponse
|
1460
|
+
include Google::Apis::Core::Hashable
|
1461
|
+
|
1462
|
+
# A provisioning configuration.
|
1463
|
+
# Corresponds to the JSON property `provisioningConfig`
|
1464
|
+
# @return [Google::Apis::BaremetalsolutionV2::ProvisioningConfig]
|
1465
|
+
attr_accessor :provisioning_config
|
1466
|
+
|
1467
|
+
def initialize(**args)
|
1468
|
+
update!(**args)
|
1469
|
+
end
|
1470
|
+
|
1471
|
+
# Update properties of this object
|
1472
|
+
def update!(**args)
|
1473
|
+
@provisioning_config = args[:provisioning_config] if args.key?(:provisioning_config)
|
1474
|
+
end
|
1475
|
+
end
|
1476
|
+
|
1477
|
+
# A network VRF.
|
1478
|
+
class Vrf
|
1479
|
+
include Google::Apis::Core::Hashable
|
1480
|
+
|
1481
|
+
# The name of the VRF.
|
1482
|
+
# Corresponds to the JSON property `name`
|
1483
|
+
# @return [String]
|
1484
|
+
attr_accessor :name
|
1485
|
+
|
1486
|
+
# QOS policy parameters.
|
1487
|
+
# Corresponds to the JSON property `qosPolicy`
|
1488
|
+
# @return [Google::Apis::BaremetalsolutionV2::QosPolicy]
|
1489
|
+
attr_accessor :qos_policy
|
1490
|
+
|
1491
|
+
# The possible state of VRF.
|
1492
|
+
# Corresponds to the JSON property `state`
|
1493
|
+
# @return [String]
|
1494
|
+
attr_accessor :state
|
1495
|
+
|
1496
|
+
# The list of VLAN attachments for the VRF.
|
1497
|
+
# Corresponds to the JSON property `vlanAttachments`
|
1498
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::VlanAttachment>]
|
1499
|
+
attr_accessor :vlan_attachments
|
1500
|
+
|
1501
|
+
def initialize(**args)
|
1502
|
+
update!(**args)
|
1503
|
+
end
|
1504
|
+
|
1505
|
+
# Update properties of this object
|
1506
|
+
def update!(**args)
|
1507
|
+
@name = args[:name] if args.key?(:name)
|
1508
|
+
@qos_policy = args[:qos_policy] if args.key?(:qos_policy)
|
1509
|
+
@state = args[:state] if args.key?(:state)
|
1510
|
+
@vlan_attachments = args[:vlan_attachments] if args.key?(:vlan_attachments)
|
1511
|
+
end
|
1512
|
+
end
|
1513
|
+
|
1514
|
+
# VLAN attachment details.
|
1515
|
+
class VlanAttachment
|
1516
|
+
include Google::Apis::Core::Hashable
|
1517
|
+
|
1518
|
+
# The peer IP of the attachment.
|
1519
|
+
# Corresponds to the JSON property `peerIp`
|
1520
|
+
# @return [String]
|
1521
|
+
attr_accessor :peer_ip
|
1522
|
+
|
1523
|
+
# The peer vlan ID of the attachment.
|
1524
|
+
# Corresponds to the JSON property `peerVlanId`
|
1525
|
+
# @return [Fixnum]
|
1526
|
+
attr_accessor :peer_vlan_id
|
1527
|
+
|
1528
|
+
# The router IP of the attachment.
|
1529
|
+
# Corresponds to the JSON property `routerIp`
|
1530
|
+
# @return [String]
|
1531
|
+
attr_accessor :router_ip
|
1532
|
+
|
1533
|
+
def initialize(**args)
|
1534
|
+
update!(**args)
|
1535
|
+
end
|
1536
|
+
|
1537
|
+
# Update properties of this object
|
1538
|
+
def update!(**args)
|
1539
|
+
@peer_ip = args[:peer_ip] if args.key?(:peer_ip)
|
1540
|
+
@peer_vlan_id = args[:peer_vlan_id] if args.key?(:peer_vlan_id)
|
1541
|
+
@router_ip = args[:router_ip] if args.key?(:router_ip)
|
1542
|
+
end
|
1543
|
+
end
|
1544
|
+
|
1545
|
+
# A storage volume.
|
1546
|
+
class Volume
|
1547
|
+
include Google::Apis::Core::Hashable
|
1548
|
+
|
1549
|
+
# The size, in GiB, that this storage volume has expanded as a result of an auto
|
1550
|
+
# grow policy. In the absence of auto-grow, the value is 0.
|
1551
|
+
# Corresponds to the JSON property `autoGrownSizeGib`
|
1552
|
+
# @return [Fixnum]
|
1553
|
+
attr_accessor :auto_grown_size_gib
|
1554
|
+
|
1555
|
+
# The current size of this storage volume, in GiB, including space reserved for
|
1556
|
+
# snapshots. This size might be different than the requested size if the storage
|
1557
|
+
# volume has been configured with auto grow or auto shrink.
|
1558
|
+
# Corresponds to the JSON property `currentSizeGib`
|
1559
|
+
# @return [Fixnum]
|
1560
|
+
attr_accessor :current_size_gib
|
1561
|
+
|
1562
|
+
# An identifier for the `Volume`, generated by the backend.
|
1563
|
+
# Corresponds to the JSON property `id`
|
1564
|
+
# @return [String]
|
1565
|
+
attr_accessor :id
|
1566
|
+
|
1567
|
+
# Labels as key value pairs.
|
1568
|
+
# Corresponds to the JSON property `labels`
|
1569
|
+
# @return [Hash<String,String>]
|
1570
|
+
attr_accessor :labels
|
1571
|
+
|
1572
|
+
# Output only. The resource name of this `Volume`. Resource names are schemeless
|
1573
|
+
# URIs that follow the conventions in https://cloud.google.com/apis/design/
|
1574
|
+
# resource_names. Format: `projects/`project`/locations/`location`/volumes/`
|
1575
|
+
# volume``
|
1576
|
+
# Corresponds to the JSON property `name`
|
1577
|
+
# @return [String]
|
1578
|
+
attr_accessor :name
|
1579
|
+
|
1580
|
+
# The space remaining in the storage volume for new LUNs, in GiB, excluding
|
1581
|
+
# space reserved for snapshots.
|
1582
|
+
# Corresponds to the JSON property `remainingSpaceGib`
|
1583
|
+
# @return [Fixnum]
|
1584
|
+
attr_accessor :remaining_space_gib
|
1585
|
+
|
1586
|
+
# The requested size of this storage volume, in GiB.
|
1587
|
+
# Corresponds to the JSON property `requestedSizeGib`
|
1588
|
+
# @return [Fixnum]
|
1589
|
+
attr_accessor :requested_size_gib
|
1590
|
+
|
1591
|
+
# The behavior to use when snapshot reserved space is full.
|
1592
|
+
# Corresponds to the JSON property `snapshotAutoDeleteBehavior`
|
1593
|
+
# @return [String]
|
1594
|
+
attr_accessor :snapshot_auto_delete_behavior
|
1595
|
+
|
1596
|
+
# Details about snapshot space reservation and usage on the storage volume.
|
1597
|
+
# Corresponds to the JSON property `snapshotReservationDetail`
|
1598
|
+
# @return [Google::Apis::BaremetalsolutionV2::SnapshotReservationDetail]
|
1599
|
+
attr_accessor :snapshot_reservation_detail
|
1600
|
+
|
1601
|
+
# The name of the snapshot schedule policy in use for this volume, if any.
|
1602
|
+
# Corresponds to the JSON property `snapshotSchedulePolicy`
|
1603
|
+
# @return [String]
|
1604
|
+
attr_accessor :snapshot_schedule_policy
|
1605
|
+
|
1606
|
+
# The state of this storage volume.
|
1607
|
+
# Corresponds to the JSON property `state`
|
1608
|
+
# @return [String]
|
1609
|
+
attr_accessor :state
|
1610
|
+
|
1611
|
+
# The storage type for this volume.
|
1612
|
+
# Corresponds to the JSON property `storageType`
|
1613
|
+
# @return [String]
|
1614
|
+
attr_accessor :storage_type
|
1615
|
+
|
1616
|
+
def initialize(**args)
|
1617
|
+
update!(**args)
|
1618
|
+
end
|
1619
|
+
|
1620
|
+
# Update properties of this object
|
1621
|
+
def update!(**args)
|
1622
|
+
@auto_grown_size_gib = args[:auto_grown_size_gib] if args.key?(:auto_grown_size_gib)
|
1623
|
+
@current_size_gib = args[:current_size_gib] if args.key?(:current_size_gib)
|
1624
|
+
@id = args[:id] if args.key?(:id)
|
1625
|
+
@labels = args[:labels] if args.key?(:labels)
|
1626
|
+
@name = args[:name] if args.key?(:name)
|
1627
|
+
@remaining_space_gib = args[:remaining_space_gib] if args.key?(:remaining_space_gib)
|
1628
|
+
@requested_size_gib = args[:requested_size_gib] if args.key?(:requested_size_gib)
|
1629
|
+
@snapshot_auto_delete_behavior = args[:snapshot_auto_delete_behavior] if args.key?(:snapshot_auto_delete_behavior)
|
1630
|
+
@snapshot_reservation_detail = args[:snapshot_reservation_detail] if args.key?(:snapshot_reservation_detail)
|
1631
|
+
@snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
|
1632
|
+
@state = args[:state] if args.key?(:state)
|
1633
|
+
@storage_type = args[:storage_type] if args.key?(:storage_type)
|
1634
|
+
end
|
1635
|
+
end
|
1636
|
+
|
1637
|
+
# Configuration parameters for a new volume.
|
1638
|
+
class VolumeConfig
|
1639
|
+
include Google::Apis::Core::Hashable
|
1640
|
+
|
1641
|
+
# A transient unique identifier to identify a volume within an
|
1642
|
+
# ProvisioningConfig request.
|
1643
|
+
# Corresponds to the JSON property `id`
|
1644
|
+
# @return [String]
|
1645
|
+
attr_accessor :id
|
1646
|
+
|
1647
|
+
# LUN ranges to be configured. Set only when protocol is PROTOCOL_FC.
|
1648
|
+
# Corresponds to the JSON property `lunRanges`
|
1649
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::LunRange>]
|
1650
|
+
attr_accessor :lun_ranges
|
1651
|
+
|
1652
|
+
# Machine ids connected to this volume. Set only when protocol is PROTOCOL_FC.
|
1653
|
+
# Corresponds to the JSON property `machineIds`
|
1654
|
+
# @return [Array<String>]
|
1655
|
+
attr_accessor :machine_ids
|
1656
|
+
|
1657
|
+
# Output only. The name of the volume config.
|
1658
|
+
# Corresponds to the JSON property `name`
|
1659
|
+
# @return [String]
|
1660
|
+
attr_accessor :name
|
1661
|
+
|
1662
|
+
# NFS exports. Set only when protocol is PROTOCOL_NFS.
|
1663
|
+
# Corresponds to the JSON property `nfsExports`
|
1664
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NfsExport>]
|
1665
|
+
attr_accessor :nfs_exports
|
1666
|
+
|
1667
|
+
# Volume protocol.
|
1668
|
+
# Corresponds to the JSON property `protocol`
|
1669
|
+
# @return [String]
|
1670
|
+
attr_accessor :protocol
|
1671
|
+
|
1672
|
+
# The requested size of this volume, in GB.
|
1673
|
+
# Corresponds to the JSON property `sizeGb`
|
1674
|
+
# @return [Fixnum]
|
1675
|
+
attr_accessor :size_gb
|
1676
|
+
|
1677
|
+
# Whether snapshots should be enabled.
|
1678
|
+
# Corresponds to the JSON property `snapshotsEnabled`
|
1679
|
+
# @return [Boolean]
|
1680
|
+
attr_accessor :snapshots_enabled
|
1681
|
+
alias_method :snapshots_enabled?, :snapshots_enabled
|
1682
|
+
|
1683
|
+
# The type of this Volume.
|
1684
|
+
# Corresponds to the JSON property `type`
|
1685
|
+
# @return [String]
|
1686
|
+
attr_accessor :type
|
1687
|
+
|
1688
|
+
# User note field, it can be used by customers to add additional information for
|
1689
|
+
# the BMS Ops team (b/194021617).
|
1690
|
+
# Corresponds to the JSON property `userNote`
|
1691
|
+
# @return [String]
|
1692
|
+
attr_accessor :user_note
|
1693
|
+
|
1694
|
+
def initialize(**args)
|
1695
|
+
update!(**args)
|
1696
|
+
end
|
1697
|
+
|
1698
|
+
# Update properties of this object
|
1699
|
+
def update!(**args)
|
1700
|
+
@id = args[:id] if args.key?(:id)
|
1701
|
+
@lun_ranges = args[:lun_ranges] if args.key?(:lun_ranges)
|
1702
|
+
@machine_ids = args[:machine_ids] if args.key?(:machine_ids)
|
1703
|
+
@name = args[:name] if args.key?(:name)
|
1704
|
+
@nfs_exports = args[:nfs_exports] if args.key?(:nfs_exports)
|
1705
|
+
@protocol = args[:protocol] if args.key?(:protocol)
|
1706
|
+
@size_gb = args[:size_gb] if args.key?(:size_gb)
|
1707
|
+
@snapshots_enabled = args[:snapshots_enabled] if args.key?(:snapshots_enabled)
|
1708
|
+
@type = args[:type] if args.key?(:type)
|
1709
|
+
@user_note = args[:user_note] if args.key?(:user_note)
|
1710
|
+
end
|
1711
|
+
end
|
1712
|
+
|
1713
|
+
# Snapshot registered for a given storage volume.
|
1714
|
+
class VolumeSnapshot
|
1715
|
+
include Google::Apis::Core::Hashable
|
1716
|
+
|
1717
|
+
# Output only. The creation time of the storage volume snapshot.
|
1718
|
+
# Corresponds to the JSON property `createTime`
|
1719
|
+
# @return [String]
|
1720
|
+
attr_accessor :create_time
|
1721
|
+
|
1722
|
+
# The description of the storage volume snapshot.
|
1723
|
+
# Corresponds to the JSON property `description`
|
1724
|
+
# @return [String]
|
1725
|
+
attr_accessor :description
|
1726
|
+
|
1727
|
+
# An identifier for the snapshot, generated by the backend.
|
1728
|
+
# Corresponds to the JSON property `id`
|
1729
|
+
# @return [String]
|
1730
|
+
attr_accessor :id
|
1731
|
+
|
1732
|
+
# Output only. The name of the storage volume snapshot.
|
1733
|
+
# Corresponds to the JSON property `name`
|
1734
|
+
# @return [String]
|
1735
|
+
attr_accessor :name
|
1736
|
+
|
1737
|
+
# The size of the storage volume snapshot, in bytes.
|
1738
|
+
# Corresponds to the JSON property `sizeBytes`
|
1739
|
+
# @return [Fixnum]
|
1740
|
+
attr_accessor :size_bytes
|
1741
|
+
|
1742
|
+
# The storage volume this snapshot belongs to.
|
1743
|
+
# Corresponds to the JSON property `storageVolume`
|
1744
|
+
# @return [String]
|
1745
|
+
attr_accessor :storage_volume
|
1746
|
+
|
1747
|
+
def initialize(**args)
|
1748
|
+
update!(**args)
|
1749
|
+
end
|
1750
|
+
|
1751
|
+
# Update properties of this object
|
1752
|
+
def update!(**args)
|
1753
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1754
|
+
@description = args[:description] if args.key?(:description)
|
1755
|
+
@id = args[:id] if args.key?(:id)
|
1756
|
+
@name = args[:name] if args.key?(:name)
|
1757
|
+
@size_bytes = args[:size_bytes] if args.key?(:size_bytes)
|
1758
|
+
@storage_volume = args[:storage_volume] if args.key?(:storage_volume)
|
422
1759
|
end
|
423
1760
|
end
|
424
1761
|
end
|