google-cloud-edge_network-v1 0.a → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/edge_network/v1/bindings_override.rb +102 -0
  6. data/lib/google/cloud/edge_network/v1/edge_network/client.rb +3178 -0
  7. data/lib/google/cloud/edge_network/v1/edge_network/credentials.rb +47 -0
  8. data/lib/google/cloud/edge_network/v1/edge_network/operations.rb +801 -0
  9. data/lib/google/cloud/edge_network/v1/edge_network/paths.rb +174 -0
  10. data/lib/google/cloud/edge_network/v1/edge_network/rest/client.rb +2972 -0
  11. data/lib/google/cloud/edge_network/v1/edge_network/rest/operations.rb +895 -0
  12. data/lib/google/cloud/edge_network/v1/edge_network/rest/service_stub.rb +1601 -0
  13. data/lib/google/cloud/edge_network/v1/edge_network/rest.rb +57 -0
  14. data/lib/google/cloud/edge_network/v1/edge_network.rb +59 -0
  15. data/lib/google/cloud/edge_network/v1/rest.rb +38 -0
  16. data/lib/google/cloud/edge_network/v1/version.rb +7 -2
  17. data/lib/google/cloud/edge_network/v1.rb +45 -0
  18. data/lib/google/cloud/edgenetwork/v1/resources_pb.rb +69 -0
  19. data/lib/google/cloud/edgenetwork/v1/service_pb.rb +92 -0
  20. data/lib/google/cloud/edgenetwork/v1/service_services_pb.rb +98 -0
  21. data/lib/google-cloud-edge_network-v1.rb +21 -0
  22. data/proto_docs/README.md +4 -0
  23. data/proto_docs/google/api/client.rb +395 -0
  24. data/proto_docs/google/api/field_behavior.rb +85 -0
  25. data/proto_docs/google/api/launch_stage.rb +71 -0
  26. data/proto_docs/google/api/resource.rb +222 -0
  27. data/proto_docs/google/cloud/edgenetwork/v1/resources.rb +637 -0
  28. data/proto_docs/google/cloud/edgenetwork/v1/service.rb +709 -0
  29. data/proto_docs/google/longrunning/operations.rb +164 -0
  30. data/proto_docs/google/protobuf/any.rb +144 -0
  31. data/proto_docs/google/protobuf/duration.rb +98 -0
  32. data/proto_docs/google/protobuf/empty.rb +34 -0
  33. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  34. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  35. data/proto_docs/google/rpc/status.rb +48 -0
  36. metadata +209 -13
@@ -0,0 +1,637 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module EdgeNetwork
23
+ module V1
24
+ # A Google Edge Cloud zone.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # Required. The resource name of the zone.
28
+ # @!attribute [r] create_time
29
+ # @return [::Google::Protobuf::Timestamp]
30
+ # Output only. The time when the zone was created.
31
+ # @!attribute [r] update_time
32
+ # @return [::Google::Protobuf::Timestamp]
33
+ # Output only. The time when the zone was last updated.
34
+ # @!attribute [rw] labels
35
+ # @return [::Google::Protobuf::Map{::String => ::String}]
36
+ # Labels as key value pairs
37
+ # @!attribute [rw] layout_name
38
+ # @return [::String]
39
+ # The deployment layout type.
40
+ class Zone
41
+ include ::Google::Protobuf::MessageExts
42
+ extend ::Google::Protobuf::MessageExts::ClassMethods
43
+
44
+ # @!attribute [rw] key
45
+ # @return [::String]
46
+ # @!attribute [rw] value
47
+ # @return [::String]
48
+ class LabelsEntry
49
+ include ::Google::Protobuf::MessageExts
50
+ extend ::Google::Protobuf::MessageExts::ClassMethods
51
+ end
52
+ end
53
+
54
+ # Message describing Network object
55
+ # @!attribute [rw] name
56
+ # @return [::String]
57
+ # Required. The canonical resource name of the network.
58
+ # @!attribute [r] create_time
59
+ # @return [::Google::Protobuf::Timestamp]
60
+ # Output only. The time when the network was created.
61
+ # @!attribute [r] update_time
62
+ # @return [::Google::Protobuf::Timestamp]
63
+ # Output only. The time when the network was last updated.
64
+ # @!attribute [rw] labels
65
+ # @return [::Google::Protobuf::Map{::String => ::String}]
66
+ # Labels associated with this resource.
67
+ # @!attribute [rw] description
68
+ # @return [::String]
69
+ # Optional. A free-text description of the resource. Max length 1024
70
+ # characters.
71
+ # @!attribute [rw] mtu
72
+ # @return [::Integer]
73
+ # IP (L3) MTU value of the network.
74
+ # Valid values are: 1500 and 9000.
75
+ # Default to 1500 if not set.
76
+ class Network
77
+ include ::Google::Protobuf::MessageExts
78
+ extend ::Google::Protobuf::MessageExts::ClassMethods
79
+
80
+ # @!attribute [rw] key
81
+ # @return [::String]
82
+ # @!attribute [rw] value
83
+ # @return [::String]
84
+ class LabelsEntry
85
+ include ::Google::Protobuf::MessageExts
86
+ extend ::Google::Protobuf::MessageExts::ClassMethods
87
+ end
88
+ end
89
+
90
+ # Message describing Subnet object
91
+ # @!attribute [rw] name
92
+ # @return [::String]
93
+ # Required. The canonical resource name of the subnet.
94
+ # @!attribute [r] create_time
95
+ # @return [::Google::Protobuf::Timestamp]
96
+ # Output only. The time when the subnet was created.
97
+ # @!attribute [r] update_time
98
+ # @return [::Google::Protobuf::Timestamp]
99
+ # Output only. The time when the subnet was last updated.
100
+ # @!attribute [rw] labels
101
+ # @return [::Google::Protobuf::Map{::String => ::String}]
102
+ # Labels associated with this resource.
103
+ # @!attribute [rw] description
104
+ # @return [::String]
105
+ # Optional. A free-text description of the resource. Max length 1024
106
+ # characters.
107
+ # @!attribute [rw] network
108
+ # @return [::String]
109
+ # Required. The network that this subnetwork belongs to.
110
+ # @!attribute [rw] ipv4_cidr
111
+ # @return [::Array<::String>]
112
+ # The ranges of ipv4 addresses that are owned by this subnetwork.
113
+ # @!attribute [rw] ipv6_cidr
114
+ # @return [::Array<::String>]
115
+ # The ranges of ipv6 addresses that are owned by this subnetwork.
116
+ # @!attribute [rw] vlan_id
117
+ # @return [::Integer]
118
+ # Optional. VLAN id provided by user. If not specified we assign one
119
+ # automatically.
120
+ # @!attribute [r] state
121
+ # @return [::Google::Cloud::EdgeNetwork::V1::ResourceState]
122
+ # Output only. Current stage of the resource to the device by config push.
123
+ class Subnet
124
+ include ::Google::Protobuf::MessageExts
125
+ extend ::Google::Protobuf::MessageExts::ClassMethods
126
+
127
+ # @!attribute [rw] key
128
+ # @return [::String]
129
+ # @!attribute [rw] value
130
+ # @return [::String]
131
+ class LabelsEntry
132
+ include ::Google::Protobuf::MessageExts
133
+ extend ::Google::Protobuf::MessageExts::ClassMethods
134
+ end
135
+ end
136
+
137
+ # Message describing Interconnect object
138
+ # @!attribute [rw] name
139
+ # @return [::String]
140
+ # Required. The canonical resource name of the interconnect.
141
+ # @!attribute [r] create_time
142
+ # @return [::Google::Protobuf::Timestamp]
143
+ # Output only. The time when the subnet was created.
144
+ # @!attribute [r] update_time
145
+ # @return [::Google::Protobuf::Timestamp]
146
+ # Output only. The time when the subnet was last updated.
147
+ # @!attribute [rw] labels
148
+ # @return [::Google::Protobuf::Map{::String => ::String}]
149
+ # Labels associated with this resource.
150
+ # @!attribute [rw] description
151
+ # @return [::String]
152
+ # Optional. A free-text description of the resource. Max length 1024
153
+ # characters.
154
+ # @!attribute [rw] interconnect_type
155
+ # @return [::Google::Cloud::EdgeNetwork::V1::Interconnect::InterconnectType]
156
+ # Optional. Type of interconnect, which takes only the value 'DEDICATED' for
157
+ # now.
158
+ # @!attribute [r] uuid
159
+ # @return [::String]
160
+ # Output only. Unique identifier for the link.
161
+ # @!attribute [r] device_cloud_resource_name
162
+ # @return [::String]
163
+ # Output only. Cloud resource name of the switch device.
164
+ # @!attribute [r] physical_ports
165
+ # @return [::Array<::String>]
166
+ # Output only. Physical ports (e.g., TenGigE0/0/0/1) that form the
167
+ # interconnect.
168
+ class Interconnect
169
+ include ::Google::Protobuf::MessageExts
170
+ extend ::Google::Protobuf::MessageExts::ClassMethods
171
+
172
+ # @!attribute [rw] key
173
+ # @return [::String]
174
+ # @!attribute [rw] value
175
+ # @return [::String]
176
+ class LabelsEntry
177
+ include ::Google::Protobuf::MessageExts
178
+ extend ::Google::Protobuf::MessageExts::ClassMethods
179
+ end
180
+
181
+ # Type of interconnect.
182
+ module InterconnectType
183
+ # Unspecified.
184
+ INTERCONNECT_TYPE_UNSPECIFIED = 0
185
+
186
+ # Dedicated Interconnect.
187
+ DEDICATED = 1
188
+ end
189
+ end
190
+
191
+ # Message describing InterconnectAttachment object
192
+ # @!attribute [rw] name
193
+ # @return [::String]
194
+ # Required. The canonical resource name of the interconnect attachment.
195
+ # @!attribute [r] create_time
196
+ # @return [::Google::Protobuf::Timestamp]
197
+ # Output only. The time when the interconnect attachment was created.
198
+ # @!attribute [r] update_time
199
+ # @return [::Google::Protobuf::Timestamp]
200
+ # Output only. The time when the interconnect attachment was last updated.
201
+ # @!attribute [rw] labels
202
+ # @return [::Google::Protobuf::Map{::String => ::String}]
203
+ # Labels associated with this resource.
204
+ # @!attribute [rw] description
205
+ # @return [::String]
206
+ # Optional. A free-text description of the resource. Max length 1024
207
+ # characters.
208
+ # @!attribute [rw] interconnect
209
+ # @return [::String]
210
+ # Required. The canonical name of underlying Interconnect object that this
211
+ # attachment's traffic will traverse through. The name is in the form of
212
+ # `projects/{project}/locations/{location}/zones/{zone}/interconnects/{interconnect}`.
213
+ # @!attribute [rw] network
214
+ # @return [::String]
215
+ # Optional. The canonical Network name in the form of
216
+ # `projects/{project}/locations/{location}/zones/{zone}/networks/{network}`.
217
+ # @!attribute [rw] vlan_id
218
+ # @return [::Integer]
219
+ # Required. VLAN id provided by user. Must be site-wise unique.
220
+ # @!attribute [rw] mtu
221
+ # @return [::Integer]
222
+ # IP (L3) MTU value of the virtual edge cloud.
223
+ # Valid values are: 1500 and 9000.
224
+ # Default to 1500 if not set.
225
+ # @!attribute [r] state
226
+ # @return [::Google::Cloud::EdgeNetwork::V1::ResourceState]
227
+ # Output only. Current stage of the resource to the device by config push.
228
+ class InterconnectAttachment
229
+ include ::Google::Protobuf::MessageExts
230
+ extend ::Google::Protobuf::MessageExts::ClassMethods
231
+
232
+ # @!attribute [rw] key
233
+ # @return [::String]
234
+ # @!attribute [rw] value
235
+ # @return [::String]
236
+ class LabelsEntry
237
+ include ::Google::Protobuf::MessageExts
238
+ extend ::Google::Protobuf::MessageExts::ClassMethods
239
+ end
240
+ end
241
+
242
+ # Message describing Router object
243
+ # @!attribute [rw] name
244
+ # @return [::String]
245
+ # Required. The canonical resource name of the router.
246
+ # @!attribute [r] create_time
247
+ # @return [::Google::Protobuf::Timestamp]
248
+ # Output only. The time when the router was created.
249
+ # @!attribute [r] update_time
250
+ # @return [::Google::Protobuf::Timestamp]
251
+ # Output only. The time when the router was last updated.
252
+ # @!attribute [rw] labels
253
+ # @return [::Google::Protobuf::Map{::String => ::String}]
254
+ # Labels associated with this resource.
255
+ # @!attribute [rw] description
256
+ # @return [::String]
257
+ # Optional. A free-text description of the resource. Max length 1024
258
+ # characters.
259
+ # @!attribute [rw] network
260
+ # @return [::String]
261
+ # Required. The canonical name of the network to which this router belongs.
262
+ # The name is in the form of
263
+ # `projects/{project}/locations/{location}/zones/{zone}/networks/{network}`.
264
+ # @!attribute [rw] interface
265
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::Router::Interface>]
266
+ # Router interfaces.
267
+ # @!attribute [rw] bgp_peer
268
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::Router::BgpPeer>]
269
+ # BGP peers.
270
+ # @!attribute [rw] bgp
271
+ # @return [::Google::Cloud::EdgeNetwork::V1::Router::Bgp]
272
+ # BGP information specific to this router.
273
+ # @!attribute [r] state
274
+ # @return [::Google::Cloud::EdgeNetwork::V1::ResourceState]
275
+ # Output only. Current stage of the resource to the device by config push.
276
+ # @!attribute [rw] route_advertisements
277
+ # @return [::Array<::String>]
278
+ # Optional. A list of CIDRs in IP/Length format to advertise northbound as
279
+ # static routes from this router.
280
+ class Router
281
+ include ::Google::Protobuf::MessageExts
282
+ extend ::Google::Protobuf::MessageExts::ClassMethods
283
+
284
+ # Router Interface defines the GDCE zone side layer-3 information for
285
+ # building the BGP session.
286
+ # @!attribute [rw] name
287
+ # @return [::String]
288
+ # Name of this interface entry. Unique within the Zones resource.
289
+ # @!attribute [rw] ipv4_cidr
290
+ # @return [::String]
291
+ # IP address and range of the interface.
292
+ # @!attribute [rw] ipv6_cidr
293
+ # @return [::String]
294
+ # IPv6 address and range of the interface.
295
+ # @!attribute [rw] linked_interconnect_attachment
296
+ # @return [::String]
297
+ # The canonical name of the linked Interconnect attachment.
298
+ # @!attribute [rw] subnetwork
299
+ # @return [::String]
300
+ # The canonical name of the subnetwork resource that this interface
301
+ # belongs to.
302
+ # @!attribute [rw] loopback_ip_addresses
303
+ # @return [::Array<::String>]
304
+ # Create loopback interface in the router when specified.
305
+ # The number of IP addresses must match the number of TOR devices.
306
+ class Interface
307
+ include ::Google::Protobuf::MessageExts
308
+ extend ::Google::Protobuf::MessageExts::ClassMethods
309
+ end
310
+
311
+ # BGPPeer defines the peer side layer-3 information for building the BGP
312
+ # session.
313
+ # @!attribute [rw] name
314
+ # @return [::String]
315
+ # Name of this BGP peer. Unique within the Zones resource.
316
+ # @!attribute [rw] interface
317
+ # @return [::String]
318
+ # Name of the RouterInterface the BGP peer is associated with.
319
+ # @!attribute [rw] interface_ipv4_cidr
320
+ # @return [::String]
321
+ # IP range of the interface within Google.
322
+ # @!attribute [rw] interface_ipv6_cidr
323
+ # @return [::String]
324
+ # IPv6 range of the interface within Google.
325
+ # @!attribute [rw] peer_ipv4_cidr
326
+ # @return [::String]
327
+ # IP range of the BGP interface outside Google.
328
+ # @!attribute [rw] peer_ipv6_cidr
329
+ # @return [::String]
330
+ # IPv6 range of the BGP interface outside Google.
331
+ # @!attribute [rw] peer_asn
332
+ # @return [::Integer]
333
+ # Peer BGP Autonomous System Number (ASN). Each BGP interface may use
334
+ # a different value.
335
+ # @!attribute [r] local_asn
336
+ # @return [::Integer]
337
+ # Output only. Local BGP Autonomous System Number (ASN).
338
+ # This field is ST_NOT_REQUIRED because it stores private ASNs, which are
339
+ # meaningless outside the zone in which they are being used.
340
+ class BgpPeer
341
+ include ::Google::Protobuf::MessageExts
342
+ extend ::Google::Protobuf::MessageExts::ClassMethods
343
+ end
344
+
345
+ # BGP information specific to this router.
346
+ # @!attribute [rw] asn
347
+ # @return [::Integer]
348
+ # Locally assigned BGP ASN.
349
+ # @!attribute [rw] keepalive_interval_in_seconds
350
+ # @return [::Integer]
351
+ # The interval in seconds between BGP keepalive messages that are
352
+ # sent to the peer. Default is 20 with value between 20 and 60.
353
+ class Bgp
354
+ include ::Google::Protobuf::MessageExts
355
+ extend ::Google::Protobuf::MessageExts::ClassMethods
356
+ end
357
+
358
+ # @!attribute [rw] key
359
+ # @return [::String]
360
+ # @!attribute [rw] value
361
+ # @return [::String]
362
+ class LabelsEntry
363
+ include ::Google::Protobuf::MessageExts
364
+ extend ::Google::Protobuf::MessageExts::ClassMethods
365
+ end
366
+ end
367
+
368
+ # LinkLayerAddress contains an IP address and corresponding link-layer address.
369
+ # @!attribute [rw] mac_address
370
+ # @return [::String]
371
+ # The MAC address of this neighbor.
372
+ # @!attribute [rw] ip_address
373
+ # @return [::String]
374
+ # The IP address of this neighbor.
375
+ class LinkLayerAddress
376
+ include ::Google::Protobuf::MessageExts
377
+ extend ::Google::Protobuf::MessageExts::ClassMethods
378
+ end
379
+
380
+ # SubnetStatus contains detailed and current technical information about this
381
+ # subnet resource.
382
+ # @!attribute [rw] name
383
+ # @return [::String]
384
+ # The name of CCFE subnet resource.
385
+ # @!attribute [rw] mac_address
386
+ # @return [::String]
387
+ # BVI MAC address.
388
+ # @!attribute [rw] link_layer_addresses
389
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::LinkLayerAddress>]
390
+ # A list of LinkLayerAddress, describing the ip address and corresponding
391
+ # link-layer address of the neighbors for this subnet.
392
+ class SubnetStatus
393
+ include ::Google::Protobuf::MessageExts
394
+ extend ::Google::Protobuf::MessageExts::ClassMethods
395
+ end
396
+
397
+ # Diagnostics information about interconnect, contains detailed and current
398
+ # technical information about Google's side of the connection.
399
+ # @!attribute [rw] mac_address
400
+ # @return [::String]
401
+ # The MAC address of the Interconnect's bundle interface.
402
+ # @!attribute [rw] link_layer_addresses
403
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::LinkLayerAddress>]
404
+ # A list of LinkLayerAddress, describing the ip address and corresponding
405
+ # link-layer address of the neighbors for this interconnect.
406
+ # @!attribute [rw] links
407
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::InterconnectDiagnostics::LinkStatus>]
408
+ # A list of LinkStatus objects, used to describe the status for each link on
409
+ # the Interconnect.
410
+ class InterconnectDiagnostics
411
+ include ::Google::Protobuf::MessageExts
412
+ extend ::Google::Protobuf::MessageExts::ClassMethods
413
+
414
+ # Describing the status for each link on the Interconnect.
415
+ # @!attribute [rw] circuit_id
416
+ # @return [::String]
417
+ # The unique ID for this link assigned during turn up by Google.
418
+ # @!attribute [rw] lacp_status
419
+ # @return [::Google::Cloud::EdgeNetwork::V1::InterconnectDiagnostics::LinkLACPStatus]
420
+ # Describing the state of a LACP link.
421
+ # @!attribute [rw] lldp_statuses
422
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::InterconnectDiagnostics::LinkLLDPStatus>]
423
+ # A list of LinkLLDPStatus objects, used to describe LLDP status of each
424
+ # peer for each link on the Interconnect.
425
+ # @!attribute [rw] packet_counts
426
+ # @return [::Google::Cloud::EdgeNetwork::V1::InterconnectDiagnostics::PacketCounts]
427
+ # Packet counts specific statistics for this link.
428
+ class LinkStatus
429
+ include ::Google::Protobuf::MessageExts
430
+ extend ::Google::Protobuf::MessageExts::ClassMethods
431
+ end
432
+
433
+ # Containing a collection of interface-related statistics objects.
434
+ # @!attribute [rw] inbound_unicast
435
+ # @return [::Integer]
436
+ # The number of packets that are delivered.
437
+ # @!attribute [rw] inbound_errors
438
+ # @return [::Integer]
439
+ # The number of inbound packets that contained errors.
440
+ # @!attribute [rw] inbound_discards
441
+ # @return [::Integer]
442
+ # The number of inbound packets that were chosen to be discarded even
443
+ # though no errors had been detected to prevent their being deliverable.
444
+ # @!attribute [rw] outbound_unicast
445
+ # @return [::Integer]
446
+ # The total number of packets that are requested be transmitted.
447
+ # @!attribute [rw] outbound_errors
448
+ # @return [::Integer]
449
+ # The number of outbound packets that could not be transmitted because of
450
+ # errors.
451
+ # @!attribute [rw] outbound_discards
452
+ # @return [::Integer]
453
+ # The number of outbound packets that were chosen to be discarded even
454
+ # though no errors had been detected to prevent their being transmitted.
455
+ class PacketCounts
456
+ include ::Google::Protobuf::MessageExts
457
+ extend ::Google::Protobuf::MessageExts::ClassMethods
458
+ end
459
+
460
+ # Describing the status of a LACP link.
461
+ # @!attribute [rw] state
462
+ # @return [::Google::Cloud::EdgeNetwork::V1::InterconnectDiagnostics::LinkLACPStatus::State]
463
+ # The state of a LACP link.
464
+ # @!attribute [rw] google_system_id
465
+ # @return [::String]
466
+ # System ID of the port on Google's side of the LACP exchange.
467
+ # @!attribute [rw] neighbor_system_id
468
+ # @return [::String]
469
+ # System ID of the port on the neighbor's side of the LACP exchange.
470
+ # @!attribute [rw] aggregatable
471
+ # @return [::Boolean]
472
+ # A true value indicates that the participant will allow the link to be
473
+ # used as part of the aggregate.
474
+ # A false value indicates the link should be used as an individual link.
475
+ # @!attribute [rw] collecting
476
+ # @return [::Boolean]
477
+ # If true, the participant is collecting incoming frames on the link,
478
+ # otherwise false
479
+ # @!attribute [rw] distributing
480
+ # @return [::Boolean]
481
+ # When true, the participant is distributing outgoing frames; when false,
482
+ # distribution is disabled
483
+ class LinkLACPStatus
484
+ include ::Google::Protobuf::MessageExts
485
+ extend ::Google::Protobuf::MessageExts::ClassMethods
486
+
487
+ # State enum for LACP link.
488
+ module State
489
+ # The default state indicating state is in unknown state.
490
+ UNKNOWN = 0
491
+
492
+ # The link is configured and active within the bundle.
493
+ ACTIVE = 1
494
+
495
+ # The link is not configured within the bundle, this means the rest of
496
+ # the object should be empty.
497
+ DETACHED = 2
498
+ end
499
+ end
500
+
501
+ # Describing a LLDP link.
502
+ # @!attribute [rw] peer_system_name
503
+ # @return [::String]
504
+ # The peer system's administratively assigned name.
505
+ # @!attribute [rw] peer_system_description
506
+ # @return [::String]
507
+ # The textual description of the network entity of LLDP peer.
508
+ # @!attribute [rw] peer_chassis_id
509
+ # @return [::String]
510
+ # The peer chassis component of the endpoint identifier associated with the
511
+ # transmitting LLDP agent.
512
+ # @!attribute [rw] peer_chassis_id_type
513
+ # @return [::String]
514
+ # The format and source of the peer chassis identifier string.
515
+ # @!attribute [rw] peer_port_id
516
+ # @return [::String]
517
+ # The port component of the endpoint identifier associated with the
518
+ # transmitting LLDP agent. If the specified port is an IEEE 802.3 Repeater
519
+ # port, then this TLV is optional.
520
+ # @!attribute [rw] peer_port_id_type
521
+ # @return [::String]
522
+ # The format and source of the peer port identifier string.
523
+ class LinkLLDPStatus
524
+ include ::Google::Protobuf::MessageExts
525
+ extend ::Google::Protobuf::MessageExts::ClassMethods
526
+ end
527
+ end
528
+
529
+ # Describing the current status of a router.
530
+ # @!attribute [rw] network
531
+ # @return [::String]
532
+ # The canonical name of the network to which this router belongs.
533
+ # @!attribute [rw] bgp_peer_status
534
+ # @return [::Array<::Google::Cloud::EdgeNetwork::V1::RouterStatus::BgpPeerStatus>]
535
+ # A list of BgpPeerStatus objects, describing all BGP peers related to this
536
+ # router.
537
+ class RouterStatus
538
+ include ::Google::Protobuf::MessageExts
539
+ extend ::Google::Protobuf::MessageExts::ClassMethods
540
+
541
+ # Status of a BGP peer.
542
+ # @!attribute [rw] name
543
+ # @return [::String]
544
+ # Name of this BGP peer. Unique within the Routers resource.
545
+ # @!attribute [rw] ip_address
546
+ # @return [::String]
547
+ # IP address of the local BGP interface.
548
+ # @!attribute [rw] peer_ip_address
549
+ # @return [::String]
550
+ # IP address of the remote BGP interface.
551
+ # @!attribute [rw] status
552
+ # @return [::Google::Cloud::EdgeNetwork::V1::RouterStatus::BgpPeerStatus::BgpStatus]
553
+ # The current status of BGP.
554
+ # @!attribute [rw] state
555
+ # @return [::String]
556
+ # BGP state as specified in RFC1771.
557
+ # @!attribute [rw] uptime
558
+ # @return [::String]
559
+ # Time this session has been up.
560
+ # Format:
561
+ # 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds
562
+ # @!attribute [rw] uptime_seconds
563
+ # @return [::Integer]
564
+ # Time this session has been up, in seconds.
565
+ # @!attribute [rw] prefix_counter
566
+ # @return [::Google::Cloud::EdgeNetwork::V1::RouterStatus::PrefixCounter]
567
+ # A collection of counts for prefixes.
568
+ class BgpPeerStatus
569
+ include ::Google::Protobuf::MessageExts
570
+ extend ::Google::Protobuf::MessageExts::ClassMethods
571
+
572
+ # Status of the BGP peer: \\{UP, DOWN}
573
+ module BgpStatus
574
+ # The default status indicating BGP session is in unknown state.
575
+ UNKNOWN = 0
576
+
577
+ # The UP status indicating BGP session is established.
578
+ UP = 1
579
+
580
+ # The DOWN state indicating BGP session is not established yet.
581
+ DOWN = 2
582
+ end
583
+ end
584
+
585
+ # PrefixCounter contains a collection of prefixes related counts.
586
+ # @!attribute [rw] advertised
587
+ # @return [::Integer]
588
+ # Number of prefixes advertised.
589
+ # @!attribute [rw] denied
590
+ # @return [::Integer]
591
+ # Number of prefixes denied.
592
+ # @!attribute [rw] received
593
+ # @return [::Integer]
594
+ # Number of prefixes received.
595
+ # @!attribute [rw] sent
596
+ # @return [::Integer]
597
+ # Number of prefixes sent.
598
+ # @!attribute [rw] suppressed
599
+ # @return [::Integer]
600
+ # Number of prefixes suppressed.
601
+ # @!attribute [rw] withdrawn
602
+ # @return [::Integer]
603
+ # Number of prefixes withdrawn.
604
+ class PrefixCounter
605
+ include ::Google::Protobuf::MessageExts
606
+ extend ::Google::Protobuf::MessageExts::ClassMethods
607
+ end
608
+ end
609
+
610
+ # ResourceState describes the state the resource.
611
+ # A normal lifecycle of a new resource being created would be: PENDING ->
612
+ # PROVISIONING -> RUNNING. A normal lifecycle of an existing resource being
613
+ # deleted would be: RUNNING -> DELETING. Any failures during processing will
614
+ # result the resource to be in a SUSPENDED state.
615
+ module ResourceState
616
+ # Unspecified state.
617
+ STATE_UNKNOWN = 0
618
+
619
+ # The resource is being prepared to be applied to the rack.
620
+ STATE_PENDING = 1
621
+
622
+ # The resource has started being applied to the rack.
623
+ STATE_PROVISIONING = 2
624
+
625
+ # The resource has been pushed to the rack.
626
+ STATE_RUNNING = 3
627
+
628
+ # The resource failed to push to the rack.
629
+ STATE_SUSPENDED = 4
630
+
631
+ # The resource is under deletion.
632
+ STATE_DELETING = 5
633
+ end
634
+ end
635
+ end
636
+ end
637
+ end