google-apis-baremetalsolution_v2 0.5.0 → 0.8.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 +13 -0
- data/OVERVIEW.md +1 -1
- data/lib/google/apis/baremetalsolution_v2/classes.rb +789 -51
- data/lib/google/apis/baremetalsolution_v2/gem_version.rb +3 -3
- data/lib/google/apis/baremetalsolution_v2/representations.rb +307 -16
- data/lib/google/apis/baremetalsolution_v2/service.rb +243 -66
- metadata +4 -4
@@ -22,19 +22,6 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module BaremetalsolutionV2
|
24
24
|
|
25
|
-
# The request message for Operations.CancelOperation.
|
26
|
-
class CancelOperationRequest
|
27
|
-
include Google::Apis::Core::Hashable
|
28
|
-
|
29
|
-
def initialize(**args)
|
30
|
-
update!(**args)
|
31
|
-
end
|
32
|
-
|
33
|
-
# Update properties of this object
|
34
|
-
def update!(**args)
|
35
|
-
end
|
36
|
-
end
|
37
|
-
|
38
25
|
# A generic empty message that you can re-use to avoid defining duplicated empty
|
39
26
|
# messages in your APIs. A typical example is to use it as the request or the
|
40
27
|
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
@@ -68,6 +55,11 @@ module Google
|
|
68
55
|
attr_accessor :hyperthreading_enabled
|
69
56
|
alias_method :hyperthreading_enabled?, :hyperthreading_enabled
|
70
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
|
+
|
71
63
|
# True if the interactive serial console feature is enabled for the instance,
|
72
64
|
# false otherwise. The default value is false.
|
73
65
|
# Corresponds to the JSON property `interactiveSerialConsoleEnabled`
|
@@ -122,6 +114,7 @@ module Google
|
|
122
114
|
def update!(**args)
|
123
115
|
@create_time = args[:create_time] if args.key?(:create_time)
|
124
116
|
@hyperthreading_enabled = args[:hyperthreading_enabled] if args.key?(:hyperthreading_enabled)
|
117
|
+
@id = args[:id] if args.key?(:id)
|
125
118
|
@interactive_serial_console_enabled = args[:interactive_serial_console_enabled] if args.key?(:interactive_serial_console_enabled)
|
126
119
|
@labels = args[:labels] if args.key?(:labels)
|
127
120
|
@luns = args[:luns] if args.key?(:luns)
|
@@ -133,6 +126,135 @@ module Google
|
|
133
126
|
end
|
134
127
|
end
|
135
128
|
|
129
|
+
# Configuration parameters for a new instance.
|
130
|
+
class InstanceConfig
|
131
|
+
include Google::Apis::Core::Hashable
|
132
|
+
|
133
|
+
# A network.
|
134
|
+
# Corresponds to the JSON property `clientNetwork`
|
135
|
+
# @return [Google::Apis::BaremetalsolutionV2::NetworkAddress]
|
136
|
+
attr_accessor :client_network
|
137
|
+
|
138
|
+
# Whether the instance should be provisioned with Hyperthreading enabled.
|
139
|
+
# Corresponds to the JSON property `hyperthreading`
|
140
|
+
# @return [Boolean]
|
141
|
+
attr_accessor :hyperthreading
|
142
|
+
alias_method :hyperthreading?, :hyperthreading
|
143
|
+
|
144
|
+
# A transient unique identifier to idenfity an instance within an
|
145
|
+
# ProvisioningConfig request.
|
146
|
+
# Corresponds to the JSON property `id`
|
147
|
+
# @return [String]
|
148
|
+
attr_accessor :id
|
149
|
+
|
150
|
+
# Instance type. [Available types](https://cloud.google.com/bare-metal/docs/bms-
|
151
|
+
# planning#server_configurations)
|
152
|
+
# Corresponds to the JSON property `instanceType`
|
153
|
+
# @return [String]
|
154
|
+
attr_accessor :instance_type
|
155
|
+
|
156
|
+
# Output only. The name of the instance config.
|
157
|
+
# Corresponds to the JSON property `name`
|
158
|
+
# @return [String]
|
159
|
+
attr_accessor :name
|
160
|
+
|
161
|
+
# OS image to initialize the instance. [Available images](https://cloud.google.
|
162
|
+
# com/bare-metal/docs/bms-planning#server_configurations)
|
163
|
+
# Corresponds to the JSON property `osImage`
|
164
|
+
# @return [String]
|
165
|
+
attr_accessor :os_image
|
166
|
+
|
167
|
+
# A network.
|
168
|
+
# Corresponds to the JSON property `privateNetwork`
|
169
|
+
# @return [Google::Apis::BaremetalsolutionV2::NetworkAddress]
|
170
|
+
attr_accessor :private_network
|
171
|
+
|
172
|
+
# User note field, it can be used by customers to add additional information for
|
173
|
+
# the BMS Ops team .
|
174
|
+
# Corresponds to the JSON property `userNote`
|
175
|
+
# @return [String]
|
176
|
+
attr_accessor :user_note
|
177
|
+
|
178
|
+
def initialize(**args)
|
179
|
+
update!(**args)
|
180
|
+
end
|
181
|
+
|
182
|
+
# Update properties of this object
|
183
|
+
def update!(**args)
|
184
|
+
@client_network = args[:client_network] if args.key?(:client_network)
|
185
|
+
@hyperthreading = args[:hyperthreading] if args.key?(:hyperthreading)
|
186
|
+
@id = args[:id] if args.key?(:id)
|
187
|
+
@instance_type = args[:instance_type] if args.key?(:instance_type)
|
188
|
+
@name = args[:name] if args.key?(:name)
|
189
|
+
@os_image = args[:os_image] if args.key?(:os_image)
|
190
|
+
@private_network = args[:private_network] if args.key?(:private_network)
|
191
|
+
@user_note = args[:user_note] if args.key?(:user_note)
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
# A resource budget.
|
196
|
+
class InstanceQuota
|
197
|
+
include Google::Apis::Core::Hashable
|
198
|
+
|
199
|
+
# Number of machines than can be created for the given location and
|
200
|
+
# instance_type.
|
201
|
+
# Corresponds to the JSON property `availableMachineCount`
|
202
|
+
# @return [Fixnum]
|
203
|
+
attr_accessor :available_machine_count
|
204
|
+
|
205
|
+
# Instance type.
|
206
|
+
# Corresponds to the JSON property `instanceType`
|
207
|
+
# @return [String]
|
208
|
+
attr_accessor :instance_type
|
209
|
+
|
210
|
+
# Location where the quota applies.
|
211
|
+
# Corresponds to the JSON property `location`
|
212
|
+
# @return [String]
|
213
|
+
attr_accessor :location
|
214
|
+
|
215
|
+
# Output only. The name of the instance quota.
|
216
|
+
# Corresponds to the JSON property `name`
|
217
|
+
# @return [String]
|
218
|
+
attr_accessor :name
|
219
|
+
|
220
|
+
def initialize(**args)
|
221
|
+
update!(**args)
|
222
|
+
end
|
223
|
+
|
224
|
+
# Update properties of this object
|
225
|
+
def update!(**args)
|
226
|
+
@available_machine_count = args[:available_machine_count] if args.key?(:available_machine_count)
|
227
|
+
@instance_type = args[:instance_type] if args.key?(:instance_type)
|
228
|
+
@location = args[:location] if args.key?(:location)
|
229
|
+
@name = args[:name] if args.key?(:name)
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
# A GCP vlan attachment.
|
234
|
+
class IntakeVlanAttachment
|
235
|
+
include Google::Apis::Core::Hashable
|
236
|
+
|
237
|
+
# Identifier of the VLAN attachment.
|
238
|
+
# Corresponds to the JSON property `id`
|
239
|
+
# @return [String]
|
240
|
+
attr_accessor :id
|
241
|
+
|
242
|
+
# Attachment pairing key.
|
243
|
+
# Corresponds to the JSON property `pairingKey`
|
244
|
+
# @return [String]
|
245
|
+
attr_accessor :pairing_key
|
246
|
+
|
247
|
+
def initialize(**args)
|
248
|
+
update!(**args)
|
249
|
+
end
|
250
|
+
|
251
|
+
# Update properties of this object
|
252
|
+
def update!(**args)
|
253
|
+
@id = args[:id] if args.key?(:id)
|
254
|
+
@pairing_key = args[:pairing_key] if args.key?(:pairing_key)
|
255
|
+
end
|
256
|
+
end
|
257
|
+
|
136
258
|
# Response message for the list of servers.
|
137
259
|
class ListInstancesResponse
|
138
260
|
include Google::Apis::Core::Hashable
|
@@ -220,6 +342,25 @@ module Google
|
|
220
342
|
end
|
221
343
|
end
|
222
344
|
|
345
|
+
# Response with Networks with IPs
|
346
|
+
class ListNetworkUsageResponse
|
347
|
+
include Google::Apis::Core::Hashable
|
348
|
+
|
349
|
+
# Networks with IPs.
|
350
|
+
# Corresponds to the JSON property `networks`
|
351
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NetworkUsage>]
|
352
|
+
attr_accessor :networks
|
353
|
+
|
354
|
+
def initialize(**args)
|
355
|
+
update!(**args)
|
356
|
+
end
|
357
|
+
|
358
|
+
# Update properties of this object
|
359
|
+
def update!(**args)
|
360
|
+
@networks = args[:networks] if args.key?(:networks)
|
361
|
+
end
|
362
|
+
end
|
363
|
+
|
223
364
|
# Response message containing the list of networks.
|
224
365
|
class ListNetworksResponse
|
225
366
|
include Google::Apis::Core::Hashable
|
@@ -251,19 +392,20 @@ module Google
|
|
251
392
|
end
|
252
393
|
end
|
253
394
|
|
254
|
-
#
|
255
|
-
class
|
395
|
+
# Response message for the list of provisioning quotas.
|
396
|
+
class ListProvisioningQuotasResponse
|
256
397
|
include Google::Apis::Core::Hashable
|
257
398
|
|
258
|
-
#
|
399
|
+
# Token to retrieve the next page of results, or empty if there are no more
|
400
|
+
# results in the list.
|
259
401
|
# Corresponds to the JSON property `nextPageToken`
|
260
402
|
# @return [String]
|
261
403
|
attr_accessor :next_page_token
|
262
404
|
|
263
|
-
#
|
264
|
-
# Corresponds to the JSON property `
|
265
|
-
# @return [Array<Google::Apis::BaremetalsolutionV2::
|
266
|
-
attr_accessor :
|
405
|
+
# The provisioning quotas registered in this project.
|
406
|
+
# Corresponds to the JSON property `provisioningQuotas`
|
407
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::ProvisioningQuota>]
|
408
|
+
attr_accessor :provisioning_quotas
|
267
409
|
|
268
410
|
def initialize(**args)
|
269
411
|
update!(**args)
|
@@ -272,7 +414,7 @@ module Google
|
|
272
414
|
# Update properties of this object
|
273
415
|
def update!(**args)
|
274
416
|
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
275
|
-
@
|
417
|
+
@provisioning_quotas = args[:provisioning_quotas] if args.key?(:provisioning_quotas)
|
276
418
|
end
|
277
419
|
end
|
278
420
|
|
@@ -421,6 +563,11 @@ module Google
|
|
421
563
|
attr_accessor :boot_lun
|
422
564
|
alias_method :boot_lun?, :boot_lun
|
423
565
|
|
566
|
+
# An identifier for the LUN, generated by the backend.
|
567
|
+
# Corresponds to the JSON property `id`
|
568
|
+
# @return [String]
|
569
|
+
attr_accessor :id
|
570
|
+
|
424
571
|
# The LUN multiprotocol type ensures the characteristics of the LUN are
|
425
572
|
# optimized for each operating system.
|
426
573
|
# Corresponds to the JSON property `multiprotocolType`
|
@@ -470,6 +617,7 @@ module Google
|
|
470
617
|
# Update properties of this object
|
471
618
|
def update!(**args)
|
472
619
|
@boot_lun = args[:boot_lun] if args.key?(:boot_lun)
|
620
|
+
@id = args[:id] if args.key?(:id)
|
473
621
|
@multiprotocol_type = args[:multiprotocol_type] if args.key?(:multiprotocol_type)
|
474
622
|
@name = args[:name] if args.key?(:name)
|
475
623
|
@shareable = args[:shareable] if args.key?(:shareable)
|
@@ -481,6 +629,31 @@ module Google
|
|
481
629
|
end
|
482
630
|
end
|
483
631
|
|
632
|
+
# A LUN(Logical Unit Number) range.
|
633
|
+
class LunRange
|
634
|
+
include Google::Apis::Core::Hashable
|
635
|
+
|
636
|
+
# Number of LUNs to create.
|
637
|
+
# Corresponds to the JSON property `quantity`
|
638
|
+
# @return [Fixnum]
|
639
|
+
attr_accessor :quantity
|
640
|
+
|
641
|
+
# The requested size of each LUN, in GB.
|
642
|
+
# Corresponds to the JSON property `sizeGb`
|
643
|
+
# @return [Fixnum]
|
644
|
+
attr_accessor :size_gb
|
645
|
+
|
646
|
+
def initialize(**args)
|
647
|
+
update!(**args)
|
648
|
+
end
|
649
|
+
|
650
|
+
# Update properties of this object
|
651
|
+
def update!(**args)
|
652
|
+
@quantity = args[:quantity] if args.key?(:quantity)
|
653
|
+
@size_gb = args[:size_gb] if args.key?(:size_gb)
|
654
|
+
end
|
655
|
+
end
|
656
|
+
|
484
657
|
# A Network.
|
485
658
|
class Network
|
486
659
|
include Google::Apis::Core::Hashable
|
@@ -490,11 +663,21 @@ module Google
|
|
490
663
|
# @return [String]
|
491
664
|
attr_accessor :cidr
|
492
665
|
|
666
|
+
# An identifier for the `Network`, generated by the backend.
|
667
|
+
# Corresponds to the JSON property `id`
|
668
|
+
# @return [String]
|
669
|
+
attr_accessor :id
|
670
|
+
|
493
671
|
# IP address configured.
|
494
672
|
# Corresponds to the JSON property `ipAddress`
|
495
673
|
# @return [String]
|
496
674
|
attr_accessor :ip_address
|
497
675
|
|
676
|
+
# Labels as key value pairs.
|
677
|
+
# Corresponds to the JSON property `labels`
|
678
|
+
# @return [Hash<String,String>]
|
679
|
+
attr_accessor :labels
|
680
|
+
|
498
681
|
# List of physical interfaces.
|
499
682
|
# Corresponds to the JSON property `macAddress`
|
500
683
|
# @return [Array<String>]
|
@@ -503,17 +686,15 @@ module Google
|
|
503
686
|
# Output only. The resource name of this `Network`. Resource names are
|
504
687
|
# schemeless URIs that follow the conventions in https://cloud.google.com/apis/
|
505
688
|
# design/resource_names. Format: `projects/`project`/locations/`location`/
|
506
|
-
# networks/`network``
|
507
|
-
# which will soon be deprecated. Please use this field to reference the name of
|
508
|
-
# the network resource.
|
689
|
+
# networks/`network``
|
509
690
|
# Corresponds to the JSON property `name`
|
510
691
|
# @return [String]
|
511
692
|
attr_accessor :name
|
512
693
|
|
513
|
-
#
|
514
|
-
# Corresponds to the JSON property `
|
694
|
+
# IP range for reserved for services (e.g. NFS).
|
695
|
+
# Corresponds to the JSON property `servicesCidr`
|
515
696
|
# @return [String]
|
516
|
-
attr_accessor :
|
697
|
+
attr_accessor :services_cidr
|
517
698
|
|
518
699
|
# The Network state.
|
519
700
|
# Corresponds to the JSON property `state`
|
@@ -542,10 +723,12 @@ module Google
|
|
542
723
|
# Update properties of this object
|
543
724
|
def update!(**args)
|
544
725
|
@cidr = args[:cidr] if args.key?(:cidr)
|
726
|
+
@id = args[:id] if args.key?(:id)
|
545
727
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
728
|
+
@labels = args[:labels] if args.key?(:labels)
|
546
729
|
@mac_address = args[:mac_address] if args.key?(:mac_address)
|
547
730
|
@name = args[:name] if args.key?(:name)
|
548
|
-
@
|
731
|
+
@services_cidr = args[:services_cidr] if args.key?(:services_cidr)
|
549
732
|
@state = args[:state] if args.key?(:state)
|
550
733
|
@type = args[:type] if args.key?(:type)
|
551
734
|
@vlan_id = args[:vlan_id] if args.key?(:vlan_id)
|
@@ -553,6 +736,201 @@ module Google
|
|
553
736
|
end
|
554
737
|
end
|
555
738
|
|
739
|
+
# A network.
|
740
|
+
class NetworkAddress
|
741
|
+
include Google::Apis::Core::Hashable
|
742
|
+
|
743
|
+
# IPv4 address to be assigned to the server.
|
744
|
+
# Corresponds to the JSON property `address`
|
745
|
+
# @return [String]
|
746
|
+
attr_accessor :address
|
747
|
+
|
748
|
+
# Name of the existing network to use.
|
749
|
+
# Corresponds to the JSON property `existingNetworkId`
|
750
|
+
# @return [String]
|
751
|
+
attr_accessor :existing_network_id
|
752
|
+
|
753
|
+
# Id of the network to use, within the same ProvisioningConfig request.
|
754
|
+
# Corresponds to the JSON property `networkId`
|
755
|
+
# @return [String]
|
756
|
+
attr_accessor :network_id
|
757
|
+
|
758
|
+
def initialize(**args)
|
759
|
+
update!(**args)
|
760
|
+
end
|
761
|
+
|
762
|
+
# Update properties of this object
|
763
|
+
def update!(**args)
|
764
|
+
@address = args[:address] if args.key?(:address)
|
765
|
+
@existing_network_id = args[:existing_network_id] if args.key?(:existing_network_id)
|
766
|
+
@network_id = args[:network_id] if args.key?(:network_id)
|
767
|
+
end
|
768
|
+
end
|
769
|
+
|
770
|
+
# Configuration parameters for a new network.
|
771
|
+
class NetworkConfig
|
772
|
+
include Google::Apis::Core::Hashable
|
773
|
+
|
774
|
+
# Interconnect bandwidth. Set only when type is CLIENT.
|
775
|
+
# Corresponds to the JSON property `bandwidth`
|
776
|
+
# @return [String]
|
777
|
+
attr_accessor :bandwidth
|
778
|
+
|
779
|
+
# CIDR range of the network.
|
780
|
+
# Corresponds to the JSON property `cidr`
|
781
|
+
# @return [String]
|
782
|
+
attr_accessor :cidr
|
783
|
+
|
784
|
+
# The GCP service of the network. Available gcp_service are in https://cloud.
|
785
|
+
# google.com/bare-metal/docs/bms-planning.
|
786
|
+
# Corresponds to the JSON property `gcpService`
|
787
|
+
# @return [String]
|
788
|
+
attr_accessor :gcp_service
|
789
|
+
|
790
|
+
# A transient unique identifier to identify a volume within an
|
791
|
+
# ProvisioningConfig request.
|
792
|
+
# Corresponds to the JSON property `id`
|
793
|
+
# @return [String]
|
794
|
+
attr_accessor :id
|
795
|
+
|
796
|
+
# Output only. The name of the network config.
|
797
|
+
# Corresponds to the JSON property `name`
|
798
|
+
# @return [String]
|
799
|
+
attr_accessor :name
|
800
|
+
|
801
|
+
# Service CIDR, if any.
|
802
|
+
# Corresponds to the JSON property `serviceCidr`
|
803
|
+
# @return [String]
|
804
|
+
attr_accessor :service_cidr
|
805
|
+
|
806
|
+
# The type of this network, either Client or Private.
|
807
|
+
# Corresponds to the JSON property `type`
|
808
|
+
# @return [String]
|
809
|
+
attr_accessor :type
|
810
|
+
|
811
|
+
# User note field, it can be used by customers to add additional information for
|
812
|
+
# the BMS Ops team (b/194021617).
|
813
|
+
# Corresponds to the JSON property `userNote`
|
814
|
+
# @return [String]
|
815
|
+
attr_accessor :user_note
|
816
|
+
|
817
|
+
# List of VLAN attachments. As of now there are always 2 attachments, but it is
|
818
|
+
# going to change in the future (multi vlan).
|
819
|
+
# Corresponds to the JSON property `vlanAttachments`
|
820
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::IntakeVlanAttachment>]
|
821
|
+
attr_accessor :vlan_attachments
|
822
|
+
|
823
|
+
# Whether the VLAN attachment pair is located in the same project.
|
824
|
+
# Corresponds to the JSON property `vlanSameProject`
|
825
|
+
# @return [Boolean]
|
826
|
+
attr_accessor :vlan_same_project
|
827
|
+
alias_method :vlan_same_project?, :vlan_same_project
|
828
|
+
|
829
|
+
def initialize(**args)
|
830
|
+
update!(**args)
|
831
|
+
end
|
832
|
+
|
833
|
+
# Update properties of this object
|
834
|
+
def update!(**args)
|
835
|
+
@bandwidth = args[:bandwidth] if args.key?(:bandwidth)
|
836
|
+
@cidr = args[:cidr] if args.key?(:cidr)
|
837
|
+
@gcp_service = args[:gcp_service] if args.key?(:gcp_service)
|
838
|
+
@id = args[:id] if args.key?(:id)
|
839
|
+
@name = args[:name] if args.key?(:name)
|
840
|
+
@service_cidr = args[:service_cidr] if args.key?(:service_cidr)
|
841
|
+
@type = args[:type] if args.key?(:type)
|
842
|
+
@user_note = args[:user_note] if args.key?(:user_note)
|
843
|
+
@vlan_attachments = args[:vlan_attachments] if args.key?(:vlan_attachments)
|
844
|
+
@vlan_same_project = args[:vlan_same_project] if args.key?(:vlan_same_project)
|
845
|
+
end
|
846
|
+
end
|
847
|
+
|
848
|
+
# Network with all used IP addresses.
|
849
|
+
class NetworkUsage
|
850
|
+
include Google::Apis::Core::Hashable
|
851
|
+
|
852
|
+
# A Network.
|
853
|
+
# Corresponds to the JSON property `network`
|
854
|
+
# @return [Google::Apis::BaremetalsolutionV2::Network]
|
855
|
+
attr_accessor :network
|
856
|
+
|
857
|
+
# All used IP addresses in this network.
|
858
|
+
# Corresponds to the JSON property `usedIps`
|
859
|
+
# @return [Array<String>]
|
860
|
+
attr_accessor :used_ips
|
861
|
+
|
862
|
+
def initialize(**args)
|
863
|
+
update!(**args)
|
864
|
+
end
|
865
|
+
|
866
|
+
# Update properties of this object
|
867
|
+
def update!(**args)
|
868
|
+
@network = args[:network] if args.key?(:network)
|
869
|
+
@used_ips = args[:used_ips] if args.key?(:used_ips)
|
870
|
+
end
|
871
|
+
end
|
872
|
+
|
873
|
+
# A NFS export entry.
|
874
|
+
class NfsExport
|
875
|
+
include Google::Apis::Core::Hashable
|
876
|
+
|
877
|
+
# Allow dev flag in NfsShare AllowedClientsRequest.
|
878
|
+
# Corresponds to the JSON property `allowDev`
|
879
|
+
# @return [Boolean]
|
880
|
+
attr_accessor :allow_dev
|
881
|
+
alias_method :allow_dev?, :allow_dev
|
882
|
+
|
883
|
+
# Allow the setuid flag.
|
884
|
+
# Corresponds to the JSON property `allowSuid`
|
885
|
+
# @return [Boolean]
|
886
|
+
attr_accessor :allow_suid
|
887
|
+
alias_method :allow_suid?, :allow_suid
|
888
|
+
|
889
|
+
# A CIDR range.
|
890
|
+
# Corresponds to the JSON property `cidr`
|
891
|
+
# @return [String]
|
892
|
+
attr_accessor :cidr
|
893
|
+
|
894
|
+
# Either a single machine, identified by an ID, or a comma-separated list of
|
895
|
+
# machine IDs.
|
896
|
+
# Corresponds to the JSON property `machineId`
|
897
|
+
# @return [String]
|
898
|
+
attr_accessor :machine_id
|
899
|
+
|
900
|
+
# Network to use to publish the export.
|
901
|
+
# Corresponds to the JSON property `networkId`
|
902
|
+
# @return [String]
|
903
|
+
attr_accessor :network_id
|
904
|
+
|
905
|
+
# Disable root squashing, which is a feature of NFS. Root squash is a special
|
906
|
+
# mapping of the remote superuser (root) identity when using identity
|
907
|
+
# authentication.
|
908
|
+
# Corresponds to the JSON property `noRootSquash`
|
909
|
+
# @return [Boolean]
|
910
|
+
attr_accessor :no_root_squash
|
911
|
+
alias_method :no_root_squash?, :no_root_squash
|
912
|
+
|
913
|
+
# Export permissions.
|
914
|
+
# Corresponds to the JSON property `permissions`
|
915
|
+
# @return [String]
|
916
|
+
attr_accessor :permissions
|
917
|
+
|
918
|
+
def initialize(**args)
|
919
|
+
update!(**args)
|
920
|
+
end
|
921
|
+
|
922
|
+
# Update properties of this object
|
923
|
+
def update!(**args)
|
924
|
+
@allow_dev = args[:allow_dev] if args.key?(:allow_dev)
|
925
|
+
@allow_suid = args[:allow_suid] if args.key?(:allow_suid)
|
926
|
+
@cidr = args[:cidr] if args.key?(:cidr)
|
927
|
+
@machine_id = args[:machine_id] if args.key?(:machine_id)
|
928
|
+
@network_id = args[:network_id] if args.key?(:network_id)
|
929
|
+
@no_root_squash = args[:no_root_squash] if args.key?(:no_root_squash)
|
930
|
+
@permissions = args[:permissions] if args.key?(:permissions)
|
931
|
+
end
|
932
|
+
end
|
933
|
+
|
556
934
|
# This resource represents a long-running operation that is the result of a
|
557
935
|
# network API call.
|
558
936
|
class Operation
|
@@ -615,6 +993,155 @@ module Google
|
|
615
993
|
end
|
616
994
|
end
|
617
995
|
|
996
|
+
# A provisioning configuration.
|
997
|
+
class ProvisioningConfig
|
998
|
+
include Google::Apis::Core::Hashable
|
999
|
+
|
1000
|
+
# Output only. URI to Cloud Console UI view of this provisioning config.
|
1001
|
+
# Corresponds to the JSON property `cloudConsoleUri`
|
1002
|
+
# @return [String]
|
1003
|
+
attr_accessor :cloud_console_uri
|
1004
|
+
|
1005
|
+
# Optional. Email provided to send a confirmation with provisioning config to.
|
1006
|
+
# Corresponds to the JSON property `email`
|
1007
|
+
# @return [String]
|
1008
|
+
attr_accessor :email
|
1009
|
+
|
1010
|
+
# A service account to enable customers to access instance credentials upon
|
1011
|
+
# handover.
|
1012
|
+
# Corresponds to the JSON property `handoverServiceAccount`
|
1013
|
+
# @return [String]
|
1014
|
+
attr_accessor :handover_service_account
|
1015
|
+
|
1016
|
+
# Instances to be created.
|
1017
|
+
# Corresponds to the JSON property `instances`
|
1018
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::InstanceConfig>]
|
1019
|
+
attr_accessor :instances
|
1020
|
+
|
1021
|
+
# Optional. Location name of this ProvisioningConfig. It is optional only for
|
1022
|
+
# Intake UI transition period.
|
1023
|
+
# Corresponds to the JSON property `location`
|
1024
|
+
# @return [String]
|
1025
|
+
attr_accessor :location
|
1026
|
+
|
1027
|
+
# Output only. The name of the provisioning config.
|
1028
|
+
# Corresponds to the JSON property `name`
|
1029
|
+
# @return [String]
|
1030
|
+
attr_accessor :name
|
1031
|
+
|
1032
|
+
# Networks to be created.
|
1033
|
+
# Corresponds to the JSON property `networks`
|
1034
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NetworkConfig>]
|
1035
|
+
attr_accessor :networks
|
1036
|
+
|
1037
|
+
# Output only. State of ProvisioningConfig.
|
1038
|
+
# Corresponds to the JSON property `state`
|
1039
|
+
# @return [String]
|
1040
|
+
attr_accessor :state
|
1041
|
+
|
1042
|
+
# A generated buganizer id to track provisioning request.
|
1043
|
+
# Corresponds to the JSON property `ticketId`
|
1044
|
+
# @return [String]
|
1045
|
+
attr_accessor :ticket_id
|
1046
|
+
|
1047
|
+
# Output only. Last update timestamp.
|
1048
|
+
# Corresponds to the JSON property `updateTime`
|
1049
|
+
# @return [String]
|
1050
|
+
attr_accessor :update_time
|
1051
|
+
|
1052
|
+
# Volumes to be created.
|
1053
|
+
# Corresponds to the JSON property `volumes`
|
1054
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::VolumeConfig>]
|
1055
|
+
attr_accessor :volumes
|
1056
|
+
|
1057
|
+
def initialize(**args)
|
1058
|
+
update!(**args)
|
1059
|
+
end
|
1060
|
+
|
1061
|
+
# Update properties of this object
|
1062
|
+
def update!(**args)
|
1063
|
+
@cloud_console_uri = args[:cloud_console_uri] if args.key?(:cloud_console_uri)
|
1064
|
+
@email = args[:email] if args.key?(:email)
|
1065
|
+
@handover_service_account = args[:handover_service_account] if args.key?(:handover_service_account)
|
1066
|
+
@instances = args[:instances] if args.key?(:instances)
|
1067
|
+
@location = args[:location] if args.key?(:location)
|
1068
|
+
@name = args[:name] if args.key?(:name)
|
1069
|
+
@networks = args[:networks] if args.key?(:networks)
|
1070
|
+
@state = args[:state] if args.key?(:state)
|
1071
|
+
@ticket_id = args[:ticket_id] if args.key?(:ticket_id)
|
1072
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1073
|
+
@volumes = args[:volumes] if args.key?(:volumes)
|
1074
|
+
end
|
1075
|
+
end
|
1076
|
+
|
1077
|
+
# A provisioning quota for a given project.
|
1078
|
+
class ProvisioningQuota
|
1079
|
+
include Google::Apis::Core::Hashable
|
1080
|
+
|
1081
|
+
# The asset type of this provisioning quota.
|
1082
|
+
# Corresponds to the JSON property `assetType`
|
1083
|
+
# @return [String]
|
1084
|
+
attr_accessor :asset_type
|
1085
|
+
|
1086
|
+
# The available count of the provisioning quota.
|
1087
|
+
# Corresponds to the JSON property `availableCount`
|
1088
|
+
# @return [Fixnum]
|
1089
|
+
attr_accessor :available_count
|
1090
|
+
|
1091
|
+
# The gcp service of the provisioning quota.
|
1092
|
+
# Corresponds to the JSON property `gcpService`
|
1093
|
+
# @return [String]
|
1094
|
+
attr_accessor :gcp_service
|
1095
|
+
|
1096
|
+
# A resource budget.
|
1097
|
+
# Corresponds to the JSON property `instanceQuota`
|
1098
|
+
# @return [Google::Apis::BaremetalsolutionV2::InstanceQuota]
|
1099
|
+
attr_accessor :instance_quota
|
1100
|
+
|
1101
|
+
# The specific location of the provisioining quota.
|
1102
|
+
# Corresponds to the JSON property `location`
|
1103
|
+
# @return [String]
|
1104
|
+
attr_accessor :location
|
1105
|
+
|
1106
|
+
# Output only. The name of the provisioning quota.
|
1107
|
+
# Corresponds to the JSON property `name`
|
1108
|
+
# @return [String]
|
1109
|
+
attr_accessor :name
|
1110
|
+
|
1111
|
+
def initialize(**args)
|
1112
|
+
update!(**args)
|
1113
|
+
end
|
1114
|
+
|
1115
|
+
# Update properties of this object
|
1116
|
+
def update!(**args)
|
1117
|
+
@asset_type = args[:asset_type] if args.key?(:asset_type)
|
1118
|
+
@available_count = args[:available_count] if args.key?(:available_count)
|
1119
|
+
@gcp_service = args[:gcp_service] if args.key?(:gcp_service)
|
1120
|
+
@instance_quota = args[:instance_quota] if args.key?(:instance_quota)
|
1121
|
+
@location = args[:location] if args.key?(:location)
|
1122
|
+
@name = args[:name] if args.key?(:name)
|
1123
|
+
end
|
1124
|
+
end
|
1125
|
+
|
1126
|
+
# QOS policy parameters.
|
1127
|
+
class QosPolicy
|
1128
|
+
include Google::Apis::Core::Hashable
|
1129
|
+
|
1130
|
+
# The bandwidth permitted by the QOS policy, in gbps.
|
1131
|
+
# Corresponds to the JSON property `bandwidthGbps`
|
1132
|
+
# @return [Float]
|
1133
|
+
attr_accessor :bandwidth_gbps
|
1134
|
+
|
1135
|
+
def initialize(**args)
|
1136
|
+
update!(**args)
|
1137
|
+
end
|
1138
|
+
|
1139
|
+
# Update properties of this object
|
1140
|
+
def update!(**args)
|
1141
|
+
@bandwidth_gbps = args[:bandwidth_gbps] if args.key?(:bandwidth_gbps)
|
1142
|
+
end
|
1143
|
+
end
|
1144
|
+
|
618
1145
|
# Message requesting to reset a server.
|
619
1146
|
class ResetInstanceRequest
|
620
1147
|
include Google::Apis::Core::Hashable
|
@@ -681,6 +1208,14 @@ module Google
|
|
681
1208
|
# @return [Fixnum]
|
682
1209
|
attr_accessor :reserved_space_gib
|
683
1210
|
|
1211
|
+
# Percent of the total Volume size reserved for snapshot copies. Enabling
|
1212
|
+
# snapshots requires reserving 20% or more of the storage volume space for
|
1213
|
+
# snapshots. Maximum reserved space for snapshots is 40%. Setting this field
|
1214
|
+
# will effectively set snapshot_enabled to true.
|
1215
|
+
# Corresponds to the JSON property `reservedSpacePercent`
|
1216
|
+
# @return [Fixnum]
|
1217
|
+
attr_accessor :reserved_space_percent
|
1218
|
+
|
684
1219
|
# The amount, in GiB, of available space in this storage volume's reserved
|
685
1220
|
# snapshot space.
|
686
1221
|
# Corresponds to the JSON property `reservedSpaceRemainingGib`
|
@@ -701,6 +1236,7 @@ module Google
|
|
701
1236
|
# Update properties of this object
|
702
1237
|
def update!(**args)
|
703
1238
|
@reserved_space_gib = args[:reserved_space_gib] if args.key?(:reserved_space_gib)
|
1239
|
+
@reserved_space_percent = args[:reserved_space_percent] if args.key?(:reserved_space_percent)
|
704
1240
|
@reserved_space_remaining_gib = args[:reserved_space_remaining_gib] if args.key?(:reserved_space_remaining_gib)
|
705
1241
|
@reserved_space_used_percent = args[:reserved_space_used_percent] if args.key?(:reserved_space_used_percent)
|
706
1242
|
end
|
@@ -715,21 +1251,31 @@ module Google
|
|
715
1251
|
# @return [String]
|
716
1252
|
attr_accessor :description
|
717
1253
|
|
1254
|
+
# An identifier for the snapshot schedule policy, generated by the backend.
|
1255
|
+
# Corresponds to the JSON property `id`
|
1256
|
+
# @return [String]
|
1257
|
+
attr_accessor :id
|
1258
|
+
|
1259
|
+
# Labels as key value pairs.
|
1260
|
+
# Corresponds to the JSON property `labels`
|
1261
|
+
# @return [Hash<String,String>]
|
1262
|
+
attr_accessor :labels
|
1263
|
+
|
718
1264
|
# Output only. The name of the snapshot schedule policy.
|
719
1265
|
# Corresponds to the JSON property `name`
|
720
1266
|
# @return [String]
|
721
1267
|
attr_accessor :name
|
722
1268
|
|
723
|
-
# The snapshot schedules contained in this policy. You can specify a
|
1269
|
+
# The snapshot schedules contained in this policy. You can specify a maximum of
|
724
1270
|
# 5 schedules.
|
725
1271
|
# Corresponds to the JSON property `schedules`
|
726
1272
|
# @return [Array<Google::Apis::BaremetalsolutionV2::Schedule>]
|
727
1273
|
attr_accessor :schedules
|
728
1274
|
|
729
|
-
# The
|
730
|
-
# Corresponds to the JSON property `
|
731
|
-
# @return [
|
732
|
-
attr_accessor :
|
1275
|
+
# The state of the snapshot schedule policy.
|
1276
|
+
# Corresponds to the JSON property `state`
|
1277
|
+
# @return [String]
|
1278
|
+
attr_accessor :state
|
733
1279
|
|
734
1280
|
def initialize(**args)
|
735
1281
|
update!(**args)
|
@@ -738,9 +1284,24 @@ module Google
|
|
738
1284
|
# Update properties of this object
|
739
1285
|
def update!(**args)
|
740
1286
|
@description = args[:description] if args.key?(:description)
|
1287
|
+
@id = args[:id] if args.key?(:id)
|
1288
|
+
@labels = args[:labels] if args.key?(:labels)
|
741
1289
|
@name = args[:name] if args.key?(:name)
|
742
1290
|
@schedules = args[:schedules] if args.key?(:schedules)
|
743
|
-
@
|
1291
|
+
@state = args[:state] if args.key?(:state)
|
1292
|
+
end
|
1293
|
+
end
|
1294
|
+
|
1295
|
+
# Message requesting to start a server.
|
1296
|
+
class StartInstanceRequest
|
1297
|
+
include Google::Apis::Core::Hashable
|
1298
|
+
|
1299
|
+
def initialize(**args)
|
1300
|
+
update!(**args)
|
1301
|
+
end
|
1302
|
+
|
1303
|
+
# Update properties of this object
|
1304
|
+
def update!(**args)
|
744
1305
|
end
|
745
1306
|
end
|
746
1307
|
|
@@ -783,46 +1344,115 @@ module Google
|
|
783
1344
|
end
|
784
1345
|
end
|
785
1346
|
|
786
|
-
#
|
787
|
-
class
|
1347
|
+
# Request for SubmitProvisioningConfig.
|
1348
|
+
class SubmitProvisioningConfigRequest
|
788
1349
|
include Google::Apis::Core::Hashable
|
789
1350
|
|
790
|
-
#
|
791
|
-
# Corresponds to the JSON property `
|
1351
|
+
# Optional. Email provided to send a confirmation with provisioning config to.
|
1352
|
+
# Corresponds to the JSON property `email`
|
792
1353
|
# @return [String]
|
793
|
-
attr_accessor :
|
1354
|
+
attr_accessor :email
|
794
1355
|
|
795
|
-
#
|
796
|
-
# Corresponds to the JSON property `
|
797
|
-
# @return [
|
798
|
-
attr_accessor :
|
1356
|
+
# A provisioning configuration.
|
1357
|
+
# Corresponds to the JSON property `provisioningConfig`
|
1358
|
+
# @return [Google::Apis::BaremetalsolutionV2::ProvisioningConfig]
|
1359
|
+
attr_accessor :provisioning_config
|
1360
|
+
|
1361
|
+
def initialize(**args)
|
1362
|
+
update!(**args)
|
1363
|
+
end
|
1364
|
+
|
1365
|
+
# Update properties of this object
|
1366
|
+
def update!(**args)
|
1367
|
+
@email = args[:email] if args.key?(:email)
|
1368
|
+
@provisioning_config = args[:provisioning_config] if args.key?(:provisioning_config)
|
1369
|
+
end
|
1370
|
+
end
|
1371
|
+
|
1372
|
+
# Response for SubmitProvisioningConfig.
|
1373
|
+
class SubmitProvisioningConfigResponse
|
1374
|
+
include Google::Apis::Core::Hashable
|
1375
|
+
|
1376
|
+
# A provisioning configuration.
|
1377
|
+
# Corresponds to the JSON property `provisioningConfig`
|
1378
|
+
# @return [Google::Apis::BaremetalsolutionV2::ProvisioningConfig]
|
1379
|
+
attr_accessor :provisioning_config
|
1380
|
+
|
1381
|
+
def initialize(**args)
|
1382
|
+
update!(**args)
|
1383
|
+
end
|
1384
|
+
|
1385
|
+
# Update properties of this object
|
1386
|
+
def update!(**args)
|
1387
|
+
@provisioning_config = args[:provisioning_config] if args.key?(:provisioning_config)
|
1388
|
+
end
|
1389
|
+
end
|
1390
|
+
|
1391
|
+
# A network VRF.
|
1392
|
+
class Vrf
|
1393
|
+
include Google::Apis::Core::Hashable
|
799
1394
|
|
800
1395
|
# The name of the VRF.
|
801
1396
|
# Corresponds to the JSON property `name`
|
802
1397
|
# @return [String]
|
803
1398
|
attr_accessor :name
|
804
1399
|
|
805
|
-
#
|
806
|
-
# Corresponds to the JSON property `
|
807
|
-
# @return [
|
808
|
-
attr_accessor :
|
1400
|
+
# QOS policy parameters.
|
1401
|
+
# Corresponds to the JSON property `qosPolicy`
|
1402
|
+
# @return [Google::Apis::BaremetalsolutionV2::QosPolicy]
|
1403
|
+
attr_accessor :qos_policy
|
809
1404
|
|
810
1405
|
# The possible state of VRF.
|
811
1406
|
# Corresponds to the JSON property `state`
|
812
1407
|
# @return [String]
|
813
1408
|
attr_accessor :state
|
814
1409
|
|
1410
|
+
# The list of VLAN attachments for the VRF.
|
1411
|
+
# Corresponds to the JSON property `vlanAttachments`
|
1412
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::VlanAttachment>]
|
1413
|
+
attr_accessor :vlan_attachments
|
1414
|
+
|
815
1415
|
def initialize(**args)
|
816
1416
|
update!(**args)
|
817
1417
|
end
|
818
1418
|
|
819
1419
|
# Update properties of this object
|
820
1420
|
def update!(**args)
|
821
|
-
@autonomous_system_number = args[:autonomous_system_number] if args.key?(:autonomous_system_number)
|
822
|
-
@juniper_alias = args[:juniper_alias] if args.key?(:juniper_alias)
|
823
1421
|
@name = args[:name] if args.key?(:name)
|
824
|
-
@
|
1422
|
+
@qos_policy = args[:qos_policy] if args.key?(:qos_policy)
|
825
1423
|
@state = args[:state] if args.key?(:state)
|
1424
|
+
@vlan_attachments = args[:vlan_attachments] if args.key?(:vlan_attachments)
|
1425
|
+
end
|
1426
|
+
end
|
1427
|
+
|
1428
|
+
# VLAN attachment details.
|
1429
|
+
class VlanAttachment
|
1430
|
+
include Google::Apis::Core::Hashable
|
1431
|
+
|
1432
|
+
# The peer IP of the attachment.
|
1433
|
+
# Corresponds to the JSON property `peerIp`
|
1434
|
+
# @return [String]
|
1435
|
+
attr_accessor :peer_ip
|
1436
|
+
|
1437
|
+
# The peer vlan ID of the attachment.
|
1438
|
+
# Corresponds to the JSON property `peerVlanId`
|
1439
|
+
# @return [Fixnum]
|
1440
|
+
attr_accessor :peer_vlan_id
|
1441
|
+
|
1442
|
+
# The router IP of the attachment.
|
1443
|
+
# Corresponds to the JSON property `routerIp`
|
1444
|
+
# @return [String]
|
1445
|
+
attr_accessor :router_ip
|
1446
|
+
|
1447
|
+
def initialize(**args)
|
1448
|
+
update!(**args)
|
1449
|
+
end
|
1450
|
+
|
1451
|
+
# Update properties of this object
|
1452
|
+
def update!(**args)
|
1453
|
+
@peer_ip = args[:peer_ip] if args.key?(:peer_ip)
|
1454
|
+
@peer_vlan_id = args[:peer_vlan_id] if args.key?(:peer_vlan_id)
|
1455
|
+
@router_ip = args[:router_ip] if args.key?(:router_ip)
|
826
1456
|
end
|
827
1457
|
end
|
828
1458
|
|
@@ -843,6 +1473,16 @@ module Google
|
|
843
1473
|
# @return [Fixnum]
|
844
1474
|
attr_accessor :current_size_gib
|
845
1475
|
|
1476
|
+
# An identifier for the `Volume`, generated by the backend.
|
1477
|
+
# Corresponds to the JSON property `id`
|
1478
|
+
# @return [String]
|
1479
|
+
attr_accessor :id
|
1480
|
+
|
1481
|
+
# Labels as key value pairs.
|
1482
|
+
# Corresponds to the JSON property `labels`
|
1483
|
+
# @return [Hash<String,String>]
|
1484
|
+
attr_accessor :labels
|
1485
|
+
|
846
1486
|
# Output only. The resource name of this `Volume`. Resource names are schemeless
|
847
1487
|
# URIs that follow the conventions in https://cloud.google.com/apis/design/
|
848
1488
|
# resource_names. Format: `projects/`project`/locations/`location`/volumes/`
|
@@ -867,6 +1507,12 @@ module Google
|
|
867
1507
|
# @return [String]
|
868
1508
|
attr_accessor :snapshot_auto_delete_behavior
|
869
1509
|
|
1510
|
+
# Whether snapshots are enabled.
|
1511
|
+
# Corresponds to the JSON property `snapshotEnabled`
|
1512
|
+
# @return [Boolean]
|
1513
|
+
attr_accessor :snapshot_enabled
|
1514
|
+
alias_method :snapshot_enabled?, :snapshot_enabled
|
1515
|
+
|
870
1516
|
# Details about snapshot space reservation and usage on the storage volume.
|
871
1517
|
# Corresponds to the JSON property `snapshotReservationDetail`
|
872
1518
|
# @return [Google::Apis::BaremetalsolutionV2::SnapshotReservationDetail]
|
@@ -895,10 +1541,13 @@ module Google
|
|
895
1541
|
def update!(**args)
|
896
1542
|
@auto_grown_size_gib = args[:auto_grown_size_gib] if args.key?(:auto_grown_size_gib)
|
897
1543
|
@current_size_gib = args[:current_size_gib] if args.key?(:current_size_gib)
|
1544
|
+
@id = args[:id] if args.key?(:id)
|
1545
|
+
@labels = args[:labels] if args.key?(:labels)
|
898
1546
|
@name = args[:name] if args.key?(:name)
|
899
1547
|
@remaining_space_gib = args[:remaining_space_gib] if args.key?(:remaining_space_gib)
|
900
1548
|
@requested_size_gib = args[:requested_size_gib] if args.key?(:requested_size_gib)
|
901
1549
|
@snapshot_auto_delete_behavior = args[:snapshot_auto_delete_behavior] if args.key?(:snapshot_auto_delete_behavior)
|
1550
|
+
@snapshot_enabled = args[:snapshot_enabled] if args.key?(:snapshot_enabled)
|
902
1551
|
@snapshot_reservation_detail = args[:snapshot_reservation_detail] if args.key?(:snapshot_reservation_detail)
|
903
1552
|
@snapshot_schedule_policy = args[:snapshot_schedule_policy] if args.key?(:snapshot_schedule_policy)
|
904
1553
|
@state = args[:state] if args.key?(:state)
|
@@ -906,11 +1555,94 @@ module Google
|
|
906
1555
|
end
|
907
1556
|
end
|
908
1557
|
|
1558
|
+
# Configuration parameters for a new volume.
|
1559
|
+
class VolumeConfig
|
1560
|
+
include Google::Apis::Core::Hashable
|
1561
|
+
|
1562
|
+
# The GCP service of the storage volume. Available gcp_service are in https://
|
1563
|
+
# cloud.google.com/bare-metal/docs/bms-planning.
|
1564
|
+
# Corresponds to the JSON property `gcpService`
|
1565
|
+
# @return [String]
|
1566
|
+
attr_accessor :gcp_service
|
1567
|
+
|
1568
|
+
# A transient unique identifier to identify a volume within an
|
1569
|
+
# ProvisioningConfig request.
|
1570
|
+
# Corresponds to the JSON property `id`
|
1571
|
+
# @return [String]
|
1572
|
+
attr_accessor :id
|
1573
|
+
|
1574
|
+
# LUN ranges to be configured. Set only when protocol is PROTOCOL_FC.
|
1575
|
+
# Corresponds to the JSON property `lunRanges`
|
1576
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::LunRange>]
|
1577
|
+
attr_accessor :lun_ranges
|
1578
|
+
|
1579
|
+
# Machine ids connected to this volume. Set only when protocol is PROTOCOL_FC.
|
1580
|
+
# Corresponds to the JSON property `machineIds`
|
1581
|
+
# @return [Array<String>]
|
1582
|
+
attr_accessor :machine_ids
|
1583
|
+
|
1584
|
+
# Output only. The name of the volume config.
|
1585
|
+
# Corresponds to the JSON property `name`
|
1586
|
+
# @return [String]
|
1587
|
+
attr_accessor :name
|
1588
|
+
|
1589
|
+
# NFS exports. Set only when protocol is PROTOCOL_NFS.
|
1590
|
+
# Corresponds to the JSON property `nfsExports`
|
1591
|
+
# @return [Array<Google::Apis::BaremetalsolutionV2::NfsExport>]
|
1592
|
+
attr_accessor :nfs_exports
|
1593
|
+
|
1594
|
+
# Volume protocol.
|
1595
|
+
# Corresponds to the JSON property `protocol`
|
1596
|
+
# @return [String]
|
1597
|
+
attr_accessor :protocol
|
1598
|
+
|
1599
|
+
# The requested size of this volume, in GB.
|
1600
|
+
# Corresponds to the JSON property `sizeGb`
|
1601
|
+
# @return [Fixnum]
|
1602
|
+
attr_accessor :size_gb
|
1603
|
+
|
1604
|
+
# Whether snapshots should be enabled.
|
1605
|
+
# Corresponds to the JSON property `snapshotsEnabled`
|
1606
|
+
# @return [Boolean]
|
1607
|
+
attr_accessor :snapshots_enabled
|
1608
|
+
alias_method :snapshots_enabled?, :snapshots_enabled
|
1609
|
+
|
1610
|
+
# The type of this Volume.
|
1611
|
+
# Corresponds to the JSON property `type`
|
1612
|
+
# @return [String]
|
1613
|
+
attr_accessor :type
|
1614
|
+
|
1615
|
+
# User note field, it can be used by customers to add additional information for
|
1616
|
+
# the BMS Ops team (b/194021617).
|
1617
|
+
# Corresponds to the JSON property `userNote`
|
1618
|
+
# @return [String]
|
1619
|
+
attr_accessor :user_note
|
1620
|
+
|
1621
|
+
def initialize(**args)
|
1622
|
+
update!(**args)
|
1623
|
+
end
|
1624
|
+
|
1625
|
+
# Update properties of this object
|
1626
|
+
def update!(**args)
|
1627
|
+
@gcp_service = args[:gcp_service] if args.key?(:gcp_service)
|
1628
|
+
@id = args[:id] if args.key?(:id)
|
1629
|
+
@lun_ranges = args[:lun_ranges] if args.key?(:lun_ranges)
|
1630
|
+
@machine_ids = args[:machine_ids] if args.key?(:machine_ids)
|
1631
|
+
@name = args[:name] if args.key?(:name)
|
1632
|
+
@nfs_exports = args[:nfs_exports] if args.key?(:nfs_exports)
|
1633
|
+
@protocol = args[:protocol] if args.key?(:protocol)
|
1634
|
+
@size_gb = args[:size_gb] if args.key?(:size_gb)
|
1635
|
+
@snapshots_enabled = args[:snapshots_enabled] if args.key?(:snapshots_enabled)
|
1636
|
+
@type = args[:type] if args.key?(:type)
|
1637
|
+
@user_note = args[:user_note] if args.key?(:user_note)
|
1638
|
+
end
|
1639
|
+
end
|
1640
|
+
|
909
1641
|
# Snapshot registered for a given storage volume.
|
910
1642
|
class VolumeSnapshot
|
911
1643
|
include Google::Apis::Core::Hashable
|
912
1644
|
|
913
|
-
#
|
1645
|
+
# Output only. The creation time of the storage volume snapshot.
|
914
1646
|
# Corresponds to the JSON property `createTime`
|
915
1647
|
# @return [String]
|
916
1648
|
attr_accessor :create_time
|
@@ -920,6 +1652,11 @@ module Google
|
|
920
1652
|
# @return [String]
|
921
1653
|
attr_accessor :description
|
922
1654
|
|
1655
|
+
# An identifier for the snapshot, generated by the backend.
|
1656
|
+
# Corresponds to the JSON property `id`
|
1657
|
+
# @return [String]
|
1658
|
+
attr_accessor :id
|
1659
|
+
|
923
1660
|
# Output only. The name of the storage volume snapshot.
|
924
1661
|
# Corresponds to the JSON property `name`
|
925
1662
|
# @return [String]
|
@@ -943,6 +1680,7 @@ module Google
|
|
943
1680
|
def update!(**args)
|
944
1681
|
@create_time = args[:create_time] if args.key?(:create_time)
|
945
1682
|
@description = args[:description] if args.key?(:description)
|
1683
|
+
@id = args[:id] if args.key?(:id)
|
946
1684
|
@name = args[:name] if args.key?(:name)
|
947
1685
|
@size_bytes = args[:size_bytes] if args.key?(:size_bytes)
|
948
1686
|
@storage_volume = args[:storage_volume] if args.key?(:storage_volume)
|