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