google-apis-baremetalsolution_v2 0.2.0 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -22,189 +22,41 @@ 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
- # A generic empty message that you can re-use to avoid defining duplicated empty
110
- # messages in your APIs. A typical example is to use it as the request or the
111
- # response type of an API method. For instance: service Foo ` rpc Bar(google.
112
- # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
113
- # `Empty` is empty JSON object ````.
114
- class Empty
115
- include Google::Apis::Core::Hashable
116
-
117
- def initialize(**args)
118
- update!(**args)
119
- end
120
-
121
- # Update properties of this object
122
- def update!(**args)
123
- end
124
- end
125
-
126
- # Represents a textual expression in the Common Expression Language (CEL) syntax.
127
- # CEL is a C-like expression language. The syntax and semantics of CEL are
128
- # documented at https://github.com/google/cel-spec. Example (Comparison): title:
129
- # "Summary size limit" description: "Determines if a summary is less than 100
130
- # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
131
- # Requestor is owner" description: "Determines if requestor is the document
132
- # owner" expression: "document.owner == request.auth.claims.email" Example (
133
- # Logic): title: "Public documents" description: "Determine whether the document
134
- # should be publicly visible" expression: "document.type != 'private' &&
135
- # document.type != 'internal'" Example (Data Manipulation): title: "Notification
136
- # string" description: "Create a notification string with a timestamp."
137
- # expression: "'New message received at ' + string(document.create_time)" The
138
- # exact variables and functions that may be referenced within an expression are
139
- # determined by the service that evaluates it. See the service documentation for
140
- # additional information.
141
- class Expr
142
- include Google::Apis::Core::Hashable
143
-
144
- # Optional. Description of the expression. This is a longer text which describes
145
- # the expression, e.g. when hovered over it in a UI.
146
- # Corresponds to the JSON property `description`
147
- # @return [String]
148
- attr_accessor :description
149
-
150
- # Textual representation of an expression in Common Expression Language syntax.
151
- # Corresponds to the JSON property `expression`
152
- # @return [String]
153
- attr_accessor :expression
154
-
155
- # Optional. String indicating the location of the expression for error reporting,
156
- # e.g. a file name and a position in the file.
157
- # Corresponds to the JSON property `location`
158
- # @return [String]
159
- attr_accessor :location
160
-
161
- # Optional. Title for the expression, i.e. a short string describing its purpose.
162
- # This can be used e.g. in UIs which allow to enter the expression.
163
- # Corresponds to the JSON property `title`
164
- # @return [String]
165
- attr_accessor :title
166
-
167
- def initialize(**args)
168
- update!(**args)
169
- end
170
-
171
- # Update properties of this object
172
- def update!(**args)
173
- @description = args[:description] if args.key?(:description)
174
- @expression = args[:expression] if args.key?(:expression)
175
- @location = args[:location] if args.key?(:location)
176
- @title = args[:title] if args.key?(:title)
177
- end
178
- end
179
-
180
- # An instance resource.
25
+ # A server.
181
26
  class Instance
182
27
  include Google::Apis::Core::Hashable
183
28
 
184
- # Output only. Create time stamp.
29
+ # Output only. Create a time stamp.
185
30
  # Corresponds to the JSON property `createTime`
186
31
  # @return [String]
187
32
  attr_accessor :create_time
188
33
 
189
- # True if hyperthreading enabled for the instance, false otherwise. The default
34
+ # True if you enable hyperthreading for the server, otherwise false. The default
190
35
  # value is false.
191
36
  # Corresponds to the JSON property `hyperthreadingEnabled`
192
37
  # @return [Boolean]
193
38
  attr_accessor :hyperthreading_enabled
194
39
  alias_method :hyperthreading_enabled?, :hyperthreading_enabled
195
40
 
41
+ # True if the interactive serial console feature is enabled for the instance,
42
+ # false otherwise. The default value is false.
43
+ # Corresponds to the JSON property `interactiveSerialConsoleEnabled`
44
+ # @return [Boolean]
45
+ attr_accessor :interactive_serial_console_enabled
46
+ alias_method :interactive_serial_console_enabled?, :interactive_serial_console_enabled
47
+
196
48
  # Labels as key value pairs.
197
49
  # Corresponds to the JSON property `labels`
198
50
  # @return [Hash<String,String>]
199
51
  attr_accessor :labels
200
52
 
201
- # List of luns associated with this instance.
53
+ # List of LUNs associated with this server.
202
54
  # Corresponds to the JSON property `luns`
203
55
  # @return [Array<Google::Apis::BaremetalsolutionV2::Lun>]
204
56
  attr_accessor :luns
205
57
 
206
- # The type of this Instance. [Available Instance types](https://cloud.google.com/
207
- # bare-metal/docs/bms-planning#server_configurations)
58
+ # The server type. [Available server types](https://cloud.google.com/bare-metal/
59
+ # docs/bms-planning#server_configurations)
208
60
  # Corresponds to the JSON property `machineType`
209
61
  # @return [String]
210
62
  attr_accessor :machine_type
@@ -217,17 +69,17 @@ module Google
217
69
  # @return [String]
218
70
  attr_accessor :name
219
71
 
220
- # List of networks associated with this instance.
72
+ # List of networks associated with this server.
221
73
  # Corresponds to the JSON property `networks`
222
74
  # @return [Array<Google::Apis::BaremetalsolutionV2::Network>]
223
75
  attr_accessor :networks
224
76
 
225
- # The state of this Instance.
77
+ # The state of the server.
226
78
  # Corresponds to the JSON property `state`
227
79
  # @return [String]
228
80
  attr_accessor :state
229
81
 
230
- # Output only. Update time stamp.
82
+ # Output only. Update a time stamp.
231
83
  # Corresponds to the JSON property `updateTime`
232
84
  # @return [String]
233
85
  attr_accessor :update_time
@@ -240,6 +92,7 @@ module Google
240
92
  def update!(**args)
241
93
  @create_time = args[:create_time] if args.key?(:create_time)
242
94
  @hyperthreading_enabled = args[:hyperthreading_enabled] if args.key?(:hyperthreading_enabled)
95
+ @interactive_serial_console_enabled = args[:interactive_serial_console_enabled] if args.key?(:interactive_serial_console_enabled)
243
96
  @labels = args[:labels] if args.key?(:labels)
244
97
  @luns = args[:luns] if args.key?(:luns)
245
98
  @machine_type = args[:machine_type] if args.key?(:machine_type)
@@ -250,16 +103,16 @@ module Google
250
103
  end
251
104
  end
252
105
 
253
- # Message for response to listing Instances.
106
+ # Response message for the list of servers.
254
107
  class ListInstancesResponse
255
108
  include Google::Apis::Core::Hashable
256
109
 
257
- # The list of Instance.
110
+ # The list of servers.
258
111
  # Corresponds to the JSON property `instances`
259
112
  # @return [Array<Google::Apis::BaremetalsolutionV2::Instance>]
260
113
  attr_accessor :instances
261
114
 
262
- # A token identifying a page of results the server should return.
115
+ # A token identifying a page of results from the server.
263
116
  # Corresponds to the JSON property `nextPageToken`
264
117
  # @return [String]
265
118
  attr_accessor :next_page_token
@@ -306,36 +159,16 @@ module Google
306
159
  end
307
160
  end
308
161
 
309
- # The response message for Operations.ListOperations.
310
- class ListOperationsResponse
162
+ # Response message containing the list of storage volume luns.
163
+ class ListLunsResponse
311
164
  include Google::Apis::Core::Hashable
312
165
 
313
- # The standard List next-page token.
314
- # Corresponds to the JSON property `nextPageToken`
315
- # @return [String]
316
- attr_accessor :next_page_token
317
-
318
- # A list of operations that matches the specified filter in the request.
319
- # Corresponds to the JSON property `operations`
320
- # @return [Array<Google::Apis::BaremetalsolutionV2::Operation>]
321
- attr_accessor :operations
322
-
323
- def initialize(**args)
324
- update!(**args)
325
- end
326
-
327
- # Update properties of this object
328
- def update!(**args)
329
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
330
- @operations = args[:operations] if args.key?(:operations)
331
- end
332
- end
333
-
334
- # Message for response to listing Volumes.
335
- class ListVolumesResponse
336
- include Google::Apis::Core::Hashable
166
+ # The list of luns.
167
+ # Corresponds to the JSON property `luns`
168
+ # @return [Array<Google::Apis::BaremetalsolutionV2::Lun>]
169
+ attr_accessor :luns
337
170
 
338
- # A token identifying a page of results the server should return.
171
+ # A token identifying a page of results from the server.
339
172
  # Corresponds to the JSON property `nextPageToken`
340
173
  # @return [String]
341
174
  attr_accessor :next_page_token
@@ -345,20 +178,15 @@ module Google
345
178
  # @return [Array<String>]
346
179
  attr_accessor :unreachable
347
180
 
348
- # The list of Volume.
349
- # Corresponds to the JSON property `volumes`
350
- # @return [Array<Google::Apis::BaremetalsolutionV2::Volume>]
351
- attr_accessor :volumes
352
-
353
181
  def initialize(**args)
354
182
  update!(**args)
355
183
  end
356
184
 
357
185
  # Update properties of this object
358
186
  def update!(**args)
187
+ @luns = args[:luns] if args.key?(:luns)
359
188
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
360
189
  @unreachable = args[:unreachable] if args.key?(:unreachable)
361
- @volumes = args[:volumes] if args.key?(:volumes)
362
190
  end
363
191
  end
364
192
 
@@ -409,53 +237,58 @@ module Google
409
237
  end
410
238
  end
411
239
 
412
- # A storage Lun.
240
+ # A storage volume logical unit number (LUN).
413
241
  class Lun
414
242
  include Google::Apis::Core::Hashable
415
243
 
416
- # Whether this Lun is a boot Lun.
244
+ # Display if this LUN is a boot LUN.
417
245
  # Corresponds to the JSON property `bootLun`
418
246
  # @return [Boolean]
419
247
  attr_accessor :boot_lun
420
248
  alias_method :boot_lun?, :boot_lun
421
249
 
422
- # The Lun Multiprotocol type to ensure the characteristics of the LUN are
423
- # optimized for the Operating System.
250
+ # The LUN multiprotocol type ensures the characteristics of the LUN are
251
+ # optimized for each operating system.
424
252
  # Corresponds to the JSON property `multiprotocolType`
425
253
  # @return [String]
426
254
  attr_accessor :multiprotocol_type
427
255
 
428
- # Output only. The name of this Lun.
256
+ # Output only. The name of the LUN.
429
257
  # Corresponds to the JSON property `name`
430
258
  # @return [String]
431
259
  attr_accessor :name
432
260
 
433
- # Whether this Lun is allowed to be shared between multiple physical servers.
434
- # Corresponds to the JSON property `shared`
261
+ # Display if this LUN can be shared between multiple physical servers.
262
+ # Corresponds to the JSON property `shareable`
435
263
  # @return [Boolean]
436
- attr_accessor :shared
437
- alias_method :shared?, :shared
264
+ attr_accessor :shareable
265
+ alias_method :shareable?, :shareable
438
266
 
439
- # The size of this Lun, in gigabytes.
267
+ # The size of this LUN, in gigabytes.
440
268
  # Corresponds to the JSON property `sizeGb`
441
269
  # @return [Fixnum]
442
270
  attr_accessor :size_gb
443
271
 
444
- # The state of this Volume.
272
+ # The state of this storage volume.
445
273
  # Corresponds to the JSON property `state`
446
274
  # @return [String]
447
275
  attr_accessor :state
448
276
 
449
- # The storage type of this Lun.
277
+ # The storage type for this LUN.
450
278
  # Corresponds to the JSON property `storageType`
451
279
  # @return [String]
452
280
  attr_accessor :storage_type
453
281
 
454
- # The storage volume that this Lun is attached to.
282
+ # Display the storage volume for this LUN.
455
283
  # Corresponds to the JSON property `storageVolume`
456
284
  # @return [String]
457
285
  attr_accessor :storage_volume
458
286
 
287
+ # The WWID for this LUN.
288
+ # Corresponds to the JSON property `wwid`
289
+ # @return [String]
290
+ attr_accessor :wwid
291
+
459
292
  def initialize(**args)
460
293
  update!(**args)
461
294
  end
@@ -465,98 +298,68 @@ module Google
465
298
  @boot_lun = args[:boot_lun] if args.key?(:boot_lun)
466
299
  @multiprotocol_type = args[:multiprotocol_type] if args.key?(:multiprotocol_type)
467
300
  @name = args[:name] if args.key?(:name)
468
- @shared = args[:shared] if args.key?(:shared)
301
+ @shareable = args[:shareable] if args.key?(:shareable)
469
302
  @size_gb = args[:size_gb] if args.key?(:size_gb)
470
303
  @state = args[:state] if args.key?(:state)
471
304
  @storage_type = args[:storage_type] if args.key?(:storage_type)
472
305
  @storage_volume = args[:storage_volume] if args.key?(:storage_volume)
306
+ @wwid = args[:wwid] if args.key?(:wwid)
473
307
  end
474
308
  end
475
309
 
476
- # A network.
310
+ # A Network.
477
311
  class Network
478
312
  include Google::Apis::Core::Hashable
479
313
 
314
+ # The cidr of the Network.
315
+ # Corresponds to the JSON property `cidr`
316
+ # @return [String]
317
+ attr_accessor :cidr
318
+
480
319
  # IP address configured.
481
320
  # Corresponds to the JSON property `ipAddress`
482
321
  # @return [String]
483
322
  attr_accessor :ip_address
484
323
 
485
- # List of physical nics.
324
+ # List of physical interfaces.
486
325
  # Corresponds to the JSON property `macAddress`
487
326
  # @return [Array<String>]
488
327
  attr_accessor :mac_address
489
328
 
329
+ # Output only. The resource name of this `Network`. Resource names are
330
+ # schemeless URIs that follow the conventions in https://cloud.google.com/apis/
331
+ # design/resource_names. Format: `projects/`project`/locations/`location`/
332
+ # networks/`network`` This field will contain the same value as field "network",
333
+ # which will soon be deprecated. Please use this field to reference the name of
334
+ # the network resource.
335
+ # Corresponds to the JSON property `name`
336
+ # @return [String]
337
+ attr_accessor :name
338
+
490
339
  # Name of the network.
491
340
  # Corresponds to the JSON property `network`
492
341
  # @return [String]
493
342
  attr_accessor :network
494
343
 
344
+ # The Network state.
345
+ # Corresponds to the JSON property `state`
346
+ # @return [String]
347
+ attr_accessor :state
348
+
495
349
  # The type of this network.
496
350
  # Corresponds to the JSON property `type`
497
351
  # @return [String]
498
352
  attr_accessor :type
499
353
 
500
- def initialize(**args)
501
- update!(**args)
502
- end
503
-
504
- # Update properties of this object
505
- def update!(**args)
506
- @ip_address = args[:ip_address] if args.key?(:ip_address)
507
- @mac_address = args[:mac_address] if args.key?(:mac_address)
508
- @network = args[:network] if args.key?(:network)
509
- @type = args[:type] if args.key?(:type)
510
- end
511
- end
512
-
513
- # This resource represents a long-running operation that is the result of a
514
- # network API call.
515
- class Operation
516
- include Google::Apis::Core::Hashable
517
-
518
- # If the value is `false`, it means the operation is still in progress. If `true`
519
- # , the operation is completed, and either `error` or `response` is available.
520
- # Corresponds to the JSON property `done`
521
- # @return [Boolean]
522
- attr_accessor :done
523
- alias_method :done?, :done
524
-
525
- # The `Status` type defines a logical error model that is suitable for different
526
- # programming environments, including REST APIs and RPC APIs. It is used by [
527
- # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
528
- # data: error code, error message, and error details. You can find out more
529
- # about this error model and how to work with it in the [API Design Guide](https:
530
- # //cloud.google.com/apis/design/errors).
531
- # Corresponds to the JSON property `error`
532
- # @return [Google::Apis::BaremetalsolutionV2::Status]
533
- attr_accessor :error
534
-
535
- # Service-specific metadata associated with the operation. It typically contains
536
- # progress information and common metadata such as create time. Some services
537
- # might not provide such metadata. Any method that returns a long-running
538
- # operation should document the metadata type, if any.
539
- # Corresponds to the JSON property `metadata`
540
- # @return [Hash<String,Object>]
541
- attr_accessor :metadata
542
-
543
- # The server-assigned name, which is only unique within the same service that
544
- # originally returns it. If you use the default HTTP mapping, the `name` should
545
- # be a resource name ending with `operations/`unique_id``.
546
- # Corresponds to the JSON property `name`
354
+ # The vlan id of the Network.
355
+ # Corresponds to the JSON property `vlanId`
547
356
  # @return [String]
548
- attr_accessor :name
357
+ attr_accessor :vlan_id
549
358
 
550
- # The normal response of the operation in case of success. If the original
551
- # method returns no data on success, such as `Delete`, the response is `google.
552
- # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
553
- # the response should be the resource. For other methods, the response should
554
- # have the type `XxxResponse`, where `Xxx` is the original method name. For
555
- # example, if the original method name is `TakeSnapshot()`, the inferred
556
- # response type is `TakeSnapshotResponse`.
557
- # Corresponds to the JSON property `response`
558
- # @return [Hash<String,Object>]
559
- attr_accessor :response
359
+ # A network VRF.
360
+ # Corresponds to the JSON property `vrf`
361
+ # @return [Google::Apis::BaremetalsolutionV2::Vrf]
362
+ attr_accessor :vrf
560
363
 
561
364
  def initialize(**args)
562
365
  update!(**args)
@@ -564,380 +367,58 @@ module Google
564
367
 
565
368
  # Update properties of this object
566
369
  def update!(**args)
567
- @done = args[:done] if args.key?(:done)
568
- @error = args[:error] if args.key?(:error)
569
- @metadata = args[:metadata] if args.key?(:metadata)
370
+ @cidr = args[:cidr] if args.key?(:cidr)
371
+ @ip_address = args[:ip_address] if args.key?(:ip_address)
372
+ @mac_address = args[:mac_address] if args.key?(:mac_address)
570
373
  @name = args[:name] if args.key?(:name)
571
- @response = args[:response] if args.key?(:response)
572
- end
573
- end
574
-
575
- # Represents the metadata of the long-running operation.
576
- class OperationMetadata
577
- include Google::Apis::Core::Hashable
578
-
579
- # Output only. API version used to start the operation.
580
- # Corresponds to the JSON property `apiVersion`
581
- # @return [String]
582
- attr_accessor :api_version
583
-
584
- # Output only. The time the operation was created.
585
- # Corresponds to the JSON property `createTime`
586
- # @return [String]
587
- attr_accessor :create_time
588
-
589
- # Output only. The time the operation finished running.
590
- # Corresponds to the JSON property `endTime`
591
- # @return [String]
592
- attr_accessor :end_time
593
-
594
- # Output only. Identifies whether the user has requested cancellation of the
595
- # operation. Operations that have successfully been cancelled have Operation.
596
- # error value with a google.rpc.Status.code of 1, corresponding to `Code.
597
- # CANCELLED`.
598
- # Corresponds to the JSON property `requestedCancellation`
599
- # @return [Boolean]
600
- attr_accessor :requested_cancellation
601
- alias_method :requested_cancellation?, :requested_cancellation
602
-
603
- # Output only. Human-readable status of the operation, if any.
604
- # Corresponds to the JSON property `statusMessage`
605
- # @return [String]
606
- attr_accessor :status_message
607
-
608
- # Output only. Server-defined resource path for the target of the operation.
609
- # Corresponds to the JSON property `target`
610
- # @return [String]
611
- attr_accessor :target
612
-
613
- # Output only. Name of the verb executed by the operation.
614
- # Corresponds to the JSON property `verb`
615
- # @return [String]
616
- attr_accessor :verb
617
-
618
- def initialize(**args)
619
- update!(**args)
620
- end
621
-
622
- # Update properties of this object
623
- 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)
374
+ @network = args[:network] if args.key?(:network)
375
+ @state = args[:state] if args.key?(:state)
376
+ @type = args[:type] if args.key?(:type)
377
+ @vlan_id = args[:vlan_id] if args.key?(:vlan_id)
378
+ @vrf = args[:vrf] if args.key?(:vrf)
631
379
  end
632
380
  end
633
381
 
634
- # An Identity and Access Management (IAM) policy, which specifies access
635
- # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
636
- # A `binding` binds one or more `members` to a single `role`. Members can be
637
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
638
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
639
- # role or a user-created custom role. For some types of Google Cloud resources,
640
- # a `binding` can also specify a `condition`, which is a logical expression that
641
- # allows access to a resource only if the expression evaluates to `true`. A
642
- # condition can add constraints based on attributes of the request, the resource,
643
- # or both. To learn which resources support conditions in their IAM policies,
644
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
645
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
646
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
647
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
648
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
649
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
650
- # title": "expirable access", "description": "Does not grant access after Sep
651
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
652
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
653
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
654
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
655
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
656
- # roles/resourcemanager.organizationViewer condition: title: expirable access
657
- # description: Does not grant access after Sep 2020 expression: request.time <
658
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
659
- # description of IAM and its features, see the [IAM documentation](https://cloud.
660
- # google.com/iam/docs/).
661
- class Policy
382
+ # A network VRF.
383
+ class Vrf
662
384
  include Google::Apis::Core::Hashable
663
385
 
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.
386
+ # The autonomous system number of the VRF.
387
+ # Corresponds to the JSON property `autonomousSystemNumber`
684
388
  # @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
389
+ attr_accessor :autonomous_system_number
705
390
 
706
- def initialize(**args)
707
- update!(**args)
708
- end
709
-
710
- # Update properties of this object
711
- 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
- end
716
- end
717
-
718
- # Request message for `SetIamPolicy` method.
719
- class SetIamPolicyRequest
720
- include Google::Apis::Core::Hashable
721
-
722
- # An Identity and Access Management (IAM) policy, which specifies access
723
- # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
724
- # A `binding` binds one or more `members` to a single `role`. Members can be
725
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
726
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
727
- # role or a user-created custom role. For some types of Google Cloud resources,
728
- # a `binding` can also specify a `condition`, which is a logical expression that
729
- # allows access to a resource only if the expression evaluates to `true`. A
730
- # condition can add constraints based on attributes of the request, the resource,
731
- # or both. To learn which resources support conditions in their IAM policies,
732
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
733
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
734
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
735
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
736
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
737
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
738
- # title": "expirable access", "description": "Does not grant access after Sep
739
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
740
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
741
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
742
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
743
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
744
- # roles/resourcemanager.organizationViewer condition: title: expirable access
745
- # description: Does not grant access after Sep 2020 expression: request.time <
746
- # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
747
- # description of IAM and its features, see the [IAM documentation](https://cloud.
748
- # google.com/iam/docs/).
749
- # Corresponds to the JSON property `policy`
750
- # @return [Google::Apis::BaremetalsolutionV2::Policy]
751
- attr_accessor :policy
752
-
753
- def initialize(**args)
754
- update!(**args)
755
- end
756
-
757
- # Update properties of this object
758
- def update!(**args)
759
- @policy = args[:policy] if args.key?(:policy)
760
- end
761
- end
762
-
763
- # Details about snapshot space reservation and usage on the Volume.
764
- class SnapshotReservationDetail
765
- include Google::Apis::Core::Hashable
766
-
767
- # The space on this Volume reserved for snapshotsk, provided in GiB.
768
- # Corresponds to the JSON property `reservedSpaceGib`
769
- # @return [Fixnum]
770
- attr_accessor :reserved_space_gib
771
-
772
- # The amount, in GiB, of space available in this Volume's reserved snapshot
773
- # space.
774
- # Corresponds to the JSON property `reservedSpaceRemainingGib`
775
- # @return [Fixnum]
776
- attr_accessor :reserved_space_remaining_gib
777
-
778
- # The percent of reserved snapshot space on this Volume that is actually used by
779
- # snapshot copies. This may be higher than 100% if snapshot copies are occupying
780
- # more space than has been reserved on the Volume.
781
- # Corresponds to the JSON property `reservedSpaceUsedPercent`
782
- # @return [Fixnum]
783
- attr_accessor :reserved_space_used_percent
784
-
785
- def initialize(**args)
786
- update!(**args)
787
- end
788
-
789
- # Update properties of this object
790
- def update!(**args)
791
- @reserved_space_gib = args[:reserved_space_gib] if args.key?(:reserved_space_gib)
792
- @reserved_space_remaining_gib = args[:reserved_space_remaining_gib] if args.key?(:reserved_space_remaining_gib)
793
- @reserved_space_used_percent = args[:reserved_space_used_percent] if args.key?(:reserved_space_used_percent)
794
- end
795
- end
796
-
797
- # The `Status` type defines a logical error model that is suitable for different
798
- # programming environments, including REST APIs and RPC APIs. It is used by [
799
- # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
800
- # data: error code, error message, and error details. You can find out more
801
- # about this error model and how to work with it in the [API Design Guide](https:
802
- # //cloud.google.com/apis/design/errors).
803
- class Status
804
- include Google::Apis::Core::Hashable
805
-
806
- # The status code, which should be an enum value of google.rpc.Code.
807
- # Corresponds to the JSON property `code`
808
- # @return [Fixnum]
809
- attr_accessor :code
810
-
811
- # A list of messages that carry the error details. There is a common set of
812
- # message types for APIs to use.
813
- # Corresponds to the JSON property `details`
814
- # @return [Array<Hash<String,Object>>]
815
- attr_accessor :details
816
-
817
- # A developer-facing error message, which should be in English. Any user-facing
818
- # error message should be localized and sent in the google.rpc.Status.details
819
- # field, or localized by the client.
820
- # Corresponds to the JSON property `message`
391
+ # The Juniper alias of the VRF.
392
+ # Corresponds to the JSON property `juniperAlias`
821
393
  # @return [String]
822
- attr_accessor :message
823
-
824
- def initialize(**args)
825
- update!(**args)
826
- end
827
-
828
- # Update properties of this object
829
- def update!(**args)
830
- @code = args[:code] if args.key?(:code)
831
- @details = args[:details] if args.key?(:details)
832
- @message = args[:message] if args.key?(:message)
833
- end
834
- end
835
-
836
- # Request message for `TestIamPermissions` method.
837
- class TestIamPermissionsRequest
838
- include Google::Apis::Core::Hashable
839
-
840
- # The set of permissions to check for the `resource`. Permissions with wildcards
841
- # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
842
- # Overview](https://cloud.google.com/iam/docs/overview#permissions).
843
- # Corresponds to the JSON property `permissions`
844
- # @return [Array<String>]
845
- attr_accessor :permissions
846
-
847
- def initialize(**args)
848
- update!(**args)
849
- end
850
-
851
- # Update properties of this object
852
- def update!(**args)
853
- @permissions = args[:permissions] if args.key?(:permissions)
854
- end
855
- end
856
-
857
- # Response message for `TestIamPermissions` method.
858
- class TestIamPermissionsResponse
859
- include Google::Apis::Core::Hashable
860
-
861
- # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
862
- # Corresponds to the JSON property `permissions`
863
- # @return [Array<String>]
864
- attr_accessor :permissions
865
-
866
- def initialize(**args)
867
- update!(**args)
868
- end
869
-
870
- # Update properties of this object
871
- def update!(**args)
872
- @permissions = args[:permissions] if args.key?(:permissions)
873
- end
874
- end
875
-
876
- # A storage Volume.
877
- class Volume
878
- include Google::Apis::Core::Hashable
879
-
880
- # The size, in GiB, that this Volume has expanded as a result of an auto grow
881
- # policy. In the absence of auto-grow, the value is 0.
882
- # Corresponds to the JSON property `autoGrownSizeGib`
883
- # @return [Fixnum]
884
- attr_accessor :auto_grown_size_gib
885
-
886
- # The current size of this Volume, in GiB, including space reserved for
887
- # snapshots. This size may be different than the requested size if the Volume
888
- # has been configured with auto grow or auto shrink.
889
- # Corresponds to the JSON property `currentSizeGib`
890
- # @return [Fixnum]
891
- attr_accessor :current_size_gib
394
+ attr_accessor :juniper_alias
892
395
 
893
- # Output only. The resource name of this `Volume`. Resource names are schemeless
894
- # URIs that follow the conventions in https://cloud.google.com/apis/design/
895
- # resource_names. Format: `projects/`project`/locations/`location`/volumes/`
896
- # volume``
396
+ # The name of the VRF.
897
397
  # Corresponds to the JSON property `name`
898
398
  # @return [String]
899
399
  attr_accessor :name
900
400
 
901
- # The space remaining in the Volume for new LUNs, in GiB, excluding space
902
- # reserved for snapshots.
903
- # Corresponds to the JSON property `remainingSpaceGib`
401
+ # The route target of the VRF.
402
+ # Corresponds to the JSON property `routeTarget`
904
403
  # @return [Fixnum]
905
- attr_accessor :remaining_space_gib
404
+ attr_accessor :route_target
906
405
 
907
- # The requested size of this Volume, in GiB.
908
- # Corresponds to the JSON property `requestedSizeGib`
909
- # @return [Fixnum]
910
- attr_accessor :requested_size_gib
911
-
912
- # Details about snapshot space reservation and usage on the Volume.
913
- # Corresponds to the JSON property `snapshotReservationDetail`
914
- # @return [Google::Apis::BaremetalsolutionV2::SnapshotReservationDetail]
915
- attr_accessor :snapshot_reservation_detail
916
-
917
- # The state of this Volume.
406
+ # The possible state of VRF.
918
407
  # Corresponds to the JSON property `state`
919
408
  # @return [String]
920
409
  attr_accessor :state
921
410
 
922
- # The storage type of this Volume.
923
- # Corresponds to the JSON property `storageType`
924
- # @return [String]
925
- attr_accessor :storage_type
926
-
927
411
  def initialize(**args)
928
412
  update!(**args)
929
413
  end
930
414
 
931
415
  # Update properties of this object
932
416
  def update!(**args)
933
- @auto_grown_size_gib = args[:auto_grown_size_gib] if args.key?(:auto_grown_size_gib)
934
- @current_size_gib = args[:current_size_gib] if args.key?(:current_size_gib)
417
+ @autonomous_system_number = args[:autonomous_system_number] if args.key?(:autonomous_system_number)
418
+ @juniper_alias = args[:juniper_alias] if args.key?(:juniper_alias)
935
419
  @name = args[:name] if args.key?(:name)
936
- @remaining_space_gib = args[:remaining_space_gib] if args.key?(:remaining_space_gib)
937
- @requested_size_gib = args[:requested_size_gib] if args.key?(:requested_size_gib)
938
- @snapshot_reservation_detail = args[:snapshot_reservation_detail] if args.key?(:snapshot_reservation_detail)
420
+ @route_target = args[:route_target] if args.key?(:route_target)
939
421
  @state = args[:state] if args.key?(:state)
940
- @storage_type = args[:storage_type] if args.key?(:storage_type)
941
422
  end
942
423
  end
943
424
  end