google-cloud-network_connectivity-v1 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21,11 +21,11 @@ module Google
21
21
  module Cloud
22
22
  module NetworkConnectivity
23
23
  module V1
24
- # A hub is a collection of spokes. A single hub can contain spokes from
25
- # multiple regions. However, if any of a hub's spokes use the data transfer
26
- # feature, the resources associated with those spokes must all reside in the
27
- # same VPC network. Spokes that do not use data transfer can be associated
28
- # with any VPC network in your project.
24
+ # A Network Connectivity Center hub is a collection of spokes. A single hub
25
+ # can contain spokes from multiple regions. However, if any of a hub's spokes
26
+ # use the data transfer feature, the resources associated with those spokes
27
+ # must all reside in the same VPC network. Spokes that do not use data
28
+ # transfer can be associated with any VPC network in your project.
29
29
  # @!attribute [rw] name
30
30
  # @return [::String]
31
31
  # Immutable. The name of the hub. Hub names must be unique. They use the
@@ -47,9 +47,9 @@ module Google
47
47
  # An optional description of the hub.
48
48
  # @!attribute [r] unique_id
49
49
  # @return [::String]
50
- # Output only. The Google-generated UUID for the hub. This value is unique across all hub
51
- # resources. If a hub is deleted and another with the same name is created,
52
- # the new hub is assigned a different unique_id.
50
+ # Output only. The Google-generated UUID for the hub. This value is unique
51
+ # across all hub resources. If a hub is deleted and another with the same
52
+ # name is created, the new hub is assigned a different unique_id.
53
53
  # @!attribute [r] state
54
54
  # @return [::Google::Cloud::NetworkConnectivity::V1::State]
55
55
  # Output only. The current lifecycle state of this hub.
@@ -73,15 +73,15 @@ module Google
73
73
  end
74
74
  end
75
75
 
76
- # RoutingVPC contains information about the VPC networks that are associated
77
- # with a hub's spokes.
76
+ # RoutingVPC contains information about the VPC networks associated
77
+ # with the spokes of a Network Connectivity Center hub.
78
78
  # @!attribute [rw] uri
79
79
  # @return [::String]
80
80
  # The URI of the VPC network.
81
81
  # @!attribute [r] required_for_new_site_to_site_data_transfer_spokes
82
82
  # @return [::Boolean]
83
- # Output only. If true, indicates that this VPC network is currently associated with
84
- # spokes that use the data transfer feature (spokes where the
83
+ # Output only. If true, indicates that this VPC network is currently
84
+ # associated with spokes that use the data transfer feature (spokes where the
85
85
  # site_to_site_data_transfer field is set to true). If you create new spokes
86
86
  # that use data transfer, they must be associated with this VPC network. At
87
87
  # most, one VPC network will have this field set to true.
@@ -90,8 +90,8 @@ module Google
90
90
  extend ::Google::Protobuf::MessageExts::ClassMethods
91
91
  end
92
92
 
93
- # A spoke represents a connection between your Google Cloud network resources
94
- # and a non-Google-Cloud network.
93
+ # A Network Connectivity Center spoke represents a connection between your
94
+ # Google Cloud network resources and a non-Google-Cloud network.
95
95
  #
96
96
  # When you create a spoke, you associate it with a hub. You must also identify
97
97
  # a value for exactly one of the following fields:
@@ -132,9 +132,9 @@ module Google
132
132
  # Router appliance instances that are associated with the spoke.
133
133
  # @!attribute [r] unique_id
134
134
  # @return [::String]
135
- # Output only. The Google-generated UUID for the spoke. This value is unique across all
136
- # spoke resources. If a spoke is deleted and another with the same name is
137
- # created, the new spoke is assigned a different unique_id.
135
+ # Output only. The Google-generated UUID for the spoke. This value is unique
136
+ # across all spoke resources. If a spoke is deleted and another with the same
137
+ # name is created, the new spoke is assigned a different unique_id.
138
138
  # @!attribute [r] state
139
139
  # @return [::Google::Cloud::NetworkConnectivity::V1::State]
140
140
  # Output only. The current lifecycle state of this spoke.
@@ -152,7 +152,9 @@ module Google
152
152
  end
153
153
  end
154
154
 
155
- # Request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_hubs HubService.ListHubs} method.
155
+ # Request for
156
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_hubs HubService.ListHubs}
157
+ # method.
156
158
  # @!attribute [rw] parent
157
159
  # @return [::String]
158
160
  # Required. The parent resource's name.
@@ -173,7 +175,9 @@ module Google
173
175
  extend ::Google::Protobuf::MessageExts::ClassMethods
174
176
  end
175
177
 
176
- # Response for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_hubs HubService.ListHubs} method.
178
+ # Response for
179
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_hubs HubService.ListHubs}
180
+ # method.
177
181
  # @!attribute [rw] hubs
178
182
  # @return [::Array<::Google::Cloud::NetworkConnectivity::V1::Hub>]
179
183
  # The requested hubs.
@@ -189,7 +193,9 @@ module Google
189
193
  extend ::Google::Protobuf::MessageExts::ClassMethods
190
194
  end
191
195
 
192
- # Request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#get_hub HubService.GetHub} method.
196
+ # Request for
197
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#get_hub HubService.GetHub}
198
+ # method.
193
199
  # @!attribute [rw] name
194
200
  # @return [::String]
195
201
  # Required. The name of the hub resource to get.
@@ -198,7 +204,9 @@ module Google
198
204
  extend ::Google::Protobuf::MessageExts::ClassMethods
199
205
  end
200
206
 
201
- # Request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#create_hub HubService.CreateHub} method.
207
+ # Request for
208
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#create_hub HubService.CreateHub}
209
+ # method.
202
210
  # @!attribute [rw] parent
203
211
  # @return [::String]
204
212
  # Required. The parent resource.
@@ -210,11 +218,11 @@ module Google
210
218
  # Required. The initial values for a new hub.
211
219
  # @!attribute [rw] request_id
212
220
  # @return [::String]
213
- # Optional. A unique request ID (optional). If you specify this ID, you can use it
214
- # in cases when you need to retry your request. When you need to retry, this
215
- # ID lets the server know that it can ignore the request if it has already
216
- # been completed. The server guarantees that for at least 60 minutes after
217
- # the first request.
221
+ # Optional. A unique request ID (optional). If you specify this ID, you can
222
+ # use it in cases when you need to retry your request. When you need to
223
+ # retry, this ID lets the server know that it can ignore the request if it
224
+ # has already been completed. The server guarantees that for at least 60
225
+ # minutes after the first request.
218
226
  #
219
227
  # For example, consider a situation where you make an initial request and
220
228
  # the request times out. If you make the request again with the same request
@@ -229,24 +237,26 @@ module Google
229
237
  extend ::Google::Protobuf::MessageExts::ClassMethods
230
238
  end
231
239
 
232
- # Request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#update_hub HubService.UpdateHub} method.
240
+ # Request for
241
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#update_hub HubService.UpdateHub}
242
+ # method.
233
243
  # @!attribute [rw] update_mask
234
244
  # @return [::Google::Protobuf::FieldMask]
235
- # Optional. In the case of an update to an existing hub, field mask is used to specify
236
- # the fields to be overwritten. The fields specified in the update_mask are
237
- # relative to the resource, not the full request. A field is overwritten if
238
- # it is in the mask. If the user does not provide a mask, then all fields are
239
- # overwritten.
245
+ # Optional. In the case of an update to an existing hub, field mask is used
246
+ # to specify the fields to be overwritten. The fields specified in the
247
+ # update_mask are relative to the resource, not the full request. A field is
248
+ # overwritten if it is in the mask. If the user does not provide a mask, then
249
+ # all fields are overwritten.
240
250
  # @!attribute [rw] hub
241
251
  # @return [::Google::Cloud::NetworkConnectivity::V1::Hub]
242
252
  # Required. The state that the hub should be in after the update.
243
253
  # @!attribute [rw] request_id
244
254
  # @return [::String]
245
- # Optional. A unique request ID (optional). If you specify this ID, you can use it
246
- # in cases when you need to retry your request. When you need to retry, this
247
- # ID lets the server know that it can ignore the request if it has already
248
- # been completed. The server guarantees that for at least 60 minutes after
249
- # the first request.
255
+ # Optional. A unique request ID (optional). If you specify this ID, you can
256
+ # use it in cases when you need to retry your request. When you need to
257
+ # retry, this ID lets the server know that it can ignore the request if it
258
+ # has already been completed. The server guarantees that for at least 60
259
+ # minutes after the first request.
250
260
  #
251
261
  # For example, consider a situation where you make an initial request and
252
262
  # the request times out. If you make the request again with the same request
@@ -261,17 +271,18 @@ module Google
261
271
  extend ::Google::Protobuf::MessageExts::ClassMethods
262
272
  end
263
273
 
264
- # The request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#delete_hub HubService.DeleteHub}.
274
+ # The request for
275
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#delete_hub HubService.DeleteHub}.
265
276
  # @!attribute [rw] name
266
277
  # @return [::String]
267
278
  # Required. The name of the hub to delete.
268
279
  # @!attribute [rw] request_id
269
280
  # @return [::String]
270
- # Optional. A unique request ID (optional). If you specify this ID, you can use it
271
- # in cases when you need to retry your request. When you need to retry, this
272
- # ID lets the server know that it can ignore the request if it has already
273
- # been completed. The server guarantees that for at least 60 minutes after
274
- # the first request.
281
+ # Optional. A unique request ID (optional). If you specify this ID, you can
282
+ # use it in cases when you need to retry your request. When you need to
283
+ # retry, this ID lets the server know that it can ignore the request if it
284
+ # has already been completed. The server guarantees that for at least 60
285
+ # minutes after the first request.
275
286
  #
276
287
  # For example, consider a situation where you make an initial request and
277
288
  # the request times out. If you make the request again with the same request
@@ -286,7 +297,8 @@ module Google
286
297
  extend ::Google::Protobuf::MessageExts::ClassMethods
287
298
  end
288
299
 
289
- # The request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_spokes HubService.ListSpokes}.
300
+ # The request for
301
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_spokes HubService.ListSpokes}.
290
302
  # @!attribute [rw] parent
291
303
  # @return [::String]
292
304
  # Required. The parent resource.
@@ -307,7 +319,8 @@ module Google
307
319
  extend ::Google::Protobuf::MessageExts::ClassMethods
308
320
  end
309
321
 
310
- # The response for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_spokes HubService.ListSpokes}.
322
+ # The response for
323
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#list_spokes HubService.ListSpokes}.
311
324
  # @!attribute [rw] spokes
312
325
  # @return [::Array<::Google::Cloud::NetworkConnectivity::V1::Spoke>]
313
326
  # The requested spokes.
@@ -323,7 +336,8 @@ module Google
323
336
  extend ::Google::Protobuf::MessageExts::ClassMethods
324
337
  end
325
338
 
326
- # The request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#get_spoke HubService.GetSpoke}.
339
+ # The request for
340
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#get_spoke HubService.GetSpoke}.
327
341
  # @!attribute [rw] name
328
342
  # @return [::String]
329
343
  # Required. The name of the spoke resource.
@@ -332,7 +346,8 @@ module Google
332
346
  extend ::Google::Protobuf::MessageExts::ClassMethods
333
347
  end
334
348
 
335
- # The request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#create_spoke HubService.CreateSpoke}.
349
+ # The request for
350
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#create_spoke HubService.CreateSpoke}.
336
351
  # @!attribute [rw] parent
337
352
  # @return [::String]
338
353
  # Required. The parent resource.
@@ -344,11 +359,11 @@ module Google
344
359
  # Required. The initial values for a new spoke.
345
360
  # @!attribute [rw] request_id
346
361
  # @return [::String]
347
- # Optional. A unique request ID (optional). If you specify this ID, you can use it
348
- # in cases when you need to retry your request. When you need to retry, this
349
- # ID lets the server know that it can ignore the request if it has already
350
- # been completed. The server guarantees that for at least 60 minutes after
351
- # the first request.
362
+ # Optional. A unique request ID (optional). If you specify this ID, you can
363
+ # use it in cases when you need to retry your request. When you need to
364
+ # retry, this ID lets the server know that it can ignore the request if it
365
+ # has already been completed. The server guarantees that for at least 60
366
+ # minutes after the first request.
352
367
  #
353
368
  # For example, consider a situation where you make an initial request and
354
369
  # the request times out. If you make the request again with the same request
@@ -363,11 +378,13 @@ module Google
363
378
  extend ::Google::Protobuf::MessageExts::ClassMethods
364
379
  end
365
380
 
366
- # Request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#update_spoke HubService.UpdateSpoke} method.
381
+ # Request for
382
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#update_spoke HubService.UpdateSpoke}
383
+ # method.
367
384
  # @!attribute [rw] update_mask
368
385
  # @return [::Google::Protobuf::FieldMask]
369
- # Optional. In the case of an update to an existing spoke, field mask is used to
370
- # specify the fields to be overwritten. The fields specified in the
386
+ # Optional. In the case of an update to an existing spoke, field mask is used
387
+ # to specify the fields to be overwritten. The fields specified in the
371
388
  # update_mask are relative to the resource, not the full request. A field is
372
389
  # overwritten if it is in the mask. If the user does not provide a mask, then
373
390
  # all fields are overwritten.
@@ -376,11 +393,11 @@ module Google
376
393
  # Required. The state that the spoke should be in after the update.
377
394
  # @!attribute [rw] request_id
378
395
  # @return [::String]
379
- # Optional. A unique request ID (optional). If you specify this ID, you can use it
380
- # in cases when you need to retry your request. When you need to retry, this
381
- # ID lets the server know that it can ignore the request if it has already
382
- # been completed. The server guarantees that for at least 60 minutes after
383
- # the first request.
396
+ # Optional. A unique request ID (optional). If you specify this ID, you can
397
+ # use it in cases when you need to retry your request. When you need to
398
+ # retry, this ID lets the server know that it can ignore the request if it
399
+ # has already been completed. The server guarantees that for at least 60
400
+ # minutes after the first request.
384
401
  #
385
402
  # For example, consider a situation where you make an initial request and
386
403
  # the request times out. If you make the request again with the same request
@@ -395,17 +412,18 @@ module Google
395
412
  extend ::Google::Protobuf::MessageExts::ClassMethods
396
413
  end
397
414
 
398
- # The request for {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#delete_spoke HubService.DeleteSpoke}.
415
+ # The request for
416
+ # {::Google::Cloud::NetworkConnectivity::V1::HubService::Client#delete_spoke HubService.DeleteSpoke}.
399
417
  # @!attribute [rw] name
400
418
  # @return [::String]
401
419
  # Required. The name of the spoke to delete.
402
420
  # @!attribute [rw] request_id
403
421
  # @return [::String]
404
- # Optional. A unique request ID (optional). If you specify this ID, you can use it
405
- # in cases when you need to retry your request. When you need to retry, this
406
- # ID lets the server know that it can ignore the request if it has already
407
- # been completed. The server guarantees that for at least 60 minutes after
408
- # the first request.
422
+ # Optional. A unique request ID (optional). If you specify this ID, you can
423
+ # use it in cases when you need to retry your request. When you need to
424
+ # retry, this ID lets the server know that it can ignore the request if it
425
+ # has already been completed. The server guarantees that for at least 60
426
+ # minutes after the first request.
409
427
  #
410
428
  # For example, consider a situation where you make an initial request and
411
429
  # the request times out. If you make the request again with the same request
@@ -432,6 +450,9 @@ module Google
432
450
  # A value that controls whether site-to-site data transfer is enabled for
433
451
  # these resources. Data transfer is available only in [supported
434
452
  # locations](https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/locations).
453
+ # @!attribute [r] vpc_network
454
+ # @return [::String]
455
+ # Output only. The VPC network where these VPN tunnels are located.
435
456
  class LinkedVpnTunnels
436
457
  include ::Google::Protobuf::MessageExts
437
458
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -449,6 +470,9 @@ module Google
449
470
  # A value that controls whether site-to-site data transfer is enabled for
450
471
  # these resources. Data transfer is available only in [supported
451
472
  # locations](https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/locations).
473
+ # @!attribute [r] vpc_network
474
+ # @return [::String]
475
+ # Output only. The VPC network where these VLAN attachments are located.
452
476
  class LinkedInterconnectAttachments
453
477
  include ::Google::Protobuf::MessageExts
454
478
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -466,6 +490,10 @@ module Google
466
490
  # A value that controls whether site-to-site data transfer is enabled for
467
491
  # these resources. Data transfer is available only in [supported
468
492
  # locations](https://cloud.google.com/network-connectivity/docs/network-connectivity-center/concepts/locations).
493
+ # @!attribute [r] vpc_network
494
+ # @return [::String]
495
+ # Output only. The VPC network where these router appliance instances are
496
+ # located.
469
497
  class LinkedRouterApplianceInstances
470
498
  include ::Google::Protobuf::MessageExts
471
499
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -495,6 +523,18 @@ module Google
495
523
  extend ::Google::Protobuf::MessageExts::ClassMethods
496
524
  end
497
525
 
526
+ # Supported features for a location
527
+ module LocationFeature
528
+ # No publicly supported feature in this location
529
+ LOCATION_FEATURE_UNSPECIFIED = 0
530
+
531
+ # Site-to-cloud spokes are supported in this location
532
+ SITE_TO_CLOUD_SPOKES = 1
533
+
534
+ # Site-to-site spokes are supported in this location
535
+ SITE_TO_SITE_SPOKES = 2
536
+ end
537
+
498
538
  # The State enum represents the lifecycle stage of a Network Connectivity
499
539
  # Center resource.
500
540
  module State
@@ -509,18 +549,9 @@ module Google
509
549
 
510
550
  # The resource's Delete operation is in progress
511
551
  DELETING = 3
512
- end
513
-
514
- # Supported features for a location
515
- module LocationFeature
516
- # No publicly supported feature in this location
517
- LOCATION_FEATURE_UNSPECIFIED = 0
518
552
 
519
- # Site-to-cloud spokes are supported in this location
520
- SITE_TO_CLOUD_SPOKES = 1
521
-
522
- # Site-to-site spokes are supported in this location
523
- SITE_TO_SITE_SPOKES = 2
553
+ # The resource's Update operation is in progress
554
+ UPDATING = 6
524
555
  end
525
556
  end
526
557
  end
@@ -0,0 +1,295 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 NetworkConnectivity
23
+ module V1
24
+ # Policy Based Routes (PBR) are more powerful routes that allows GCP customers
25
+ # to route their L4 network traffic based on not just destination IP, but also
26
+ # source IP, protocol and more. A PBR always take precedence when it conflicts
27
+ # with other types of routes.
28
+ # Next id: 19
29
+ # @!attribute [rw] virtual_machine
30
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute::VirtualMachine]
31
+ # Optional. VM instances to which this policy based route applies to.
32
+ # @!attribute [rw] interconnect_attachment
33
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute::InterconnectAttachment]
34
+ # Optional. The interconnect attachments to which this route applies to.
35
+ # @!attribute [rw] next_hop_ilb_ip
36
+ # @return [::String]
37
+ # Optional. The IP of a global access enabled L4 ILB that should be the next hop to
38
+ # handle matching packets. For this version, only next_hop_ilb_ip is
39
+ # supported.
40
+ # @!attribute [rw] name
41
+ # @return [::String]
42
+ # Immutable. A unique name of the resource in the form of
43
+ # `projects/{project_number}/locations/global/PolicyBasedRoutes/{policy_based_route_id}`
44
+ # @!attribute [r] create_time
45
+ # @return [::Google::Protobuf::Timestamp]
46
+ # Output only. Time when the PolicyBasedRoute was created.
47
+ # @!attribute [r] update_time
48
+ # @return [::Google::Protobuf::Timestamp]
49
+ # Output only. Time when the PolicyBasedRoute was updated.
50
+ # @!attribute [rw] labels
51
+ # @return [::Google::Protobuf::Map{::String => ::String}]
52
+ # User-defined labels.
53
+ # @!attribute [rw] description
54
+ # @return [::String]
55
+ # Optional. An optional description of this resource. Provide this field when you
56
+ # create the resource.
57
+ # @!attribute [rw] network
58
+ # @return [::String]
59
+ # Required. Fully-qualified URL of the network that this route applies to. e.g.
60
+ # projects/my-project/global/networks/my-network.
61
+ # @!attribute [rw] filter
62
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute::Filter]
63
+ # Required. The filter to match L4 traffic.
64
+ # @!attribute [rw] priority
65
+ # @return [::Integer]
66
+ # Optional. The priority of this policy based route. Priority is used to break ties in
67
+ # cases where there are more than one matching policy based routes found. In
68
+ # cases where multiple policy based routes are matched, the one with the
69
+ # lowest-numbered priority value wins. The default value is 1000. The
70
+ # priority value must be from 1 to 65535, inclusive.
71
+ # @!attribute [r] warnings
72
+ # @return [::Array<::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute::Warnings>]
73
+ # Output only. If potential misconfigurations are detected for this route,
74
+ # this field will be populated with warning messages.
75
+ # @!attribute [r] self_link
76
+ # @return [::String]
77
+ # Output only. Server-defined fully-qualified URL for this resource.
78
+ # @!attribute [r] kind
79
+ # @return [::String]
80
+ # Output only. Type of this resource. Always networkconnectivity#policyBasedRoute for
81
+ # Policy Based Route resources.
82
+ class PolicyBasedRoute
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+
86
+ # VM instances to which this policy based route applies to.
87
+ # @!attribute [rw] tags
88
+ # @return [::Array<::String>]
89
+ # Optional. A list of VM instance tags to which this policy based route applies to.
90
+ # VM instances that have ANY of tags specified here will install this
91
+ # PBR.
92
+ class VirtualMachine
93
+ include ::Google::Protobuf::MessageExts
94
+ extend ::Google::Protobuf::MessageExts::ClassMethods
95
+ end
96
+
97
+ # InterconnectAttachment to which this route applies to.
98
+ # @!attribute [rw] region
99
+ # @return [::String]
100
+ # Optional. Cloud region to install this policy based route on interconnect
101
+ # attachment. Use `all` to install it on all interconnect attachments.
102
+ class InterconnectAttachment
103
+ include ::Google::Protobuf::MessageExts
104
+ extend ::Google::Protobuf::MessageExts::ClassMethods
105
+ end
106
+
107
+ # Filter matches L4 traffic.
108
+ # @!attribute [rw] ip_protocol
109
+ # @return [::String]
110
+ # Optional. The IP protocol that this policy based route applies to. Valid values are
111
+ # 'TCP', 'UDP', and 'ALL'. Default is 'ALL'.
112
+ # @!attribute [rw] src_range
113
+ # @return [::String]
114
+ # Optional. The source IP range of outgoing packets that this policy based route
115
+ # applies to. Default is "0.0.0.0/0" if protocol version is IPv4.
116
+ # @!attribute [rw] dest_range
117
+ # @return [::String]
118
+ # Optional. The destination IP range of outgoing packets that this policy based route
119
+ # applies to. Default is "0.0.0.0/0" if protocol version is IPv4.
120
+ # @!attribute [rw] protocol_version
121
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute::Filter::ProtocolVersion]
122
+ # Required. Internet protocol versions this policy based route applies to. For this
123
+ # version, only IPV4 is supported.
124
+ class Filter
125
+ include ::Google::Protobuf::MessageExts
126
+ extend ::Google::Protobuf::MessageExts::ClassMethods
127
+
128
+ # The internet protocol version.
129
+ module ProtocolVersion
130
+ # Default value.
131
+ PROTOCOL_VERSION_UNSPECIFIED = 0
132
+
133
+ # The PBR is for IPv4 internet protocol traffic.
134
+ IPV4 = 1
135
+ end
136
+ end
137
+
138
+ # Informational warning message.
139
+ # @!attribute [r] code
140
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute::Warnings::Code]
141
+ # Output only. A warning code, if applicable.
142
+ # @!attribute [r] data
143
+ # @return [::Google::Protobuf::Map{::String => ::String}]
144
+ # Output only. Metadata about this warning in key: value format. The key should provides
145
+ # more detail on the warning being returned. For example, for warnings
146
+ # where there are no results in a list request for a particular zone, this
147
+ # key might be scope and the key value might be the zone name. Other
148
+ # examples might be a key indicating a deprecated resource and a suggested
149
+ # replacement.
150
+ # @!attribute [r] warning_message
151
+ # @return [::String]
152
+ # Output only. A human-readable description of the warning code.
153
+ class Warnings
154
+ include ::Google::Protobuf::MessageExts
155
+ extend ::Google::Protobuf::MessageExts::ClassMethods
156
+
157
+ # @!attribute [rw] key
158
+ # @return [::String]
159
+ # @!attribute [rw] value
160
+ # @return [::String]
161
+ class DataEntry
162
+ include ::Google::Protobuf::MessageExts
163
+ extend ::Google::Protobuf::MessageExts::ClassMethods
164
+ end
165
+
166
+ # Warning code for Policy Based Routing. Expect to add values in the
167
+ # future.
168
+ module Code
169
+ # Default value.
170
+ WARNING_UNSPECIFIED = 0
171
+
172
+ # The policy based route is not active and functioning. Common causes are
173
+ # the dependent network was deleted or the resource project was turned
174
+ # off.
175
+ RESOURCE_NOT_ACTIVE = 1
176
+
177
+ # The policy based route is being modified (e.g. created/deleted) at this
178
+ # time.
179
+ RESOURCE_BEING_MODIFIED = 2
180
+ end
181
+ end
182
+
183
+ # @!attribute [rw] key
184
+ # @return [::String]
185
+ # @!attribute [rw] value
186
+ # @return [::String]
187
+ class LabelsEntry
188
+ include ::Google::Protobuf::MessageExts
189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
190
+ end
191
+ end
192
+
193
+ # Request for [PolicyBasedRouting.ListPolicyBasedRoutes][] method.
194
+ # @!attribute [rw] parent
195
+ # @return [::String]
196
+ # Required. The parent resource's name.
197
+ # @!attribute [rw] page_size
198
+ # @return [::Integer]
199
+ # The maximum number of results per page that should be returned.
200
+ # @!attribute [rw] page_token
201
+ # @return [::String]
202
+ # The page token.
203
+ # @!attribute [rw] filter
204
+ # @return [::String]
205
+ # A filter expression that filters the results listed in the response.
206
+ # @!attribute [rw] order_by
207
+ # @return [::String]
208
+ # Sort the results by a certain order.
209
+ class ListPolicyBasedRoutesRequest
210
+ include ::Google::Protobuf::MessageExts
211
+ extend ::Google::Protobuf::MessageExts::ClassMethods
212
+ end
213
+
214
+ # Response for [PolicyBasedRouting.ListPolicyBasedRoutes][] method.
215
+ # @!attribute [rw] policy_based_routes
216
+ # @return [::Array<::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute>]
217
+ # Policy based routes to be returned.
218
+ # @!attribute [rw] next_page_token
219
+ # @return [::String]
220
+ # The next pagination token in the List response. It should be used as
221
+ # page_token for the following request. An empty value means no more result.
222
+ # @!attribute [rw] unreachable
223
+ # @return [::Array<::String>]
224
+ # Locations that could not be reached.
225
+ class ListPolicyBasedRoutesResponse
226
+ include ::Google::Protobuf::MessageExts
227
+ extend ::Google::Protobuf::MessageExts::ClassMethods
228
+ end
229
+
230
+ # Request for [PolicyBasedRouting.GetPolicyBasedRoute][] method.
231
+ # @!attribute [rw] name
232
+ # @return [::String]
233
+ # Required. Name of the PolicyBasedRoute resource to get.
234
+ class GetPolicyBasedRouteRequest
235
+ include ::Google::Protobuf::MessageExts
236
+ extend ::Google::Protobuf::MessageExts::ClassMethods
237
+ end
238
+
239
+ # Request for [PolicyBasedRouting.CreatePolicyBasedRoute][] method.
240
+ # @!attribute [rw] parent
241
+ # @return [::String]
242
+ # Required. The parent resource's name of the PolicyBasedRoute.
243
+ # @!attribute [rw] policy_based_route_id
244
+ # @return [::String]
245
+ # Optional. Unique id for the Policy Based Route to create.
246
+ # @!attribute [rw] policy_based_route
247
+ # @return [::Google::Cloud::NetworkConnectivity::V1::PolicyBasedRoute]
248
+ # Required. Initial values for a new Policy Based Route.
249
+ # @!attribute [rw] request_id
250
+ # @return [::String]
251
+ # Optional. An optional request ID to identify requests. Specify a unique request ID
252
+ # so that if you must retry your request, the server will know to ignore
253
+ # the request if it has already been completed. The server will guarantee
254
+ # that for at least 60 minutes since the first request.
255
+ #
256
+ # For example, consider a situation where you make an initial request and t
257
+ # he request times out. If you make the request again with the same request
258
+ # ID, the server can check if original operation with the same request ID
259
+ # was received, and if so, will ignore the second request. This prevents
260
+ # clients from accidentally creating duplicate commitments.
261
+ #
262
+ # The request ID must be a valid UUID with the exception that zero UUID is
263
+ # not supported (00000000-0000-0000-0000-000000000000).
264
+ class CreatePolicyBasedRouteRequest
265
+ include ::Google::Protobuf::MessageExts
266
+ extend ::Google::Protobuf::MessageExts::ClassMethods
267
+ end
268
+
269
+ # Request for [PolicyBasedRouting.DeletePolicyBasedRoute][] method.
270
+ # @!attribute [rw] name
271
+ # @return [::String]
272
+ # Required. Name of the PolicyBasedRoute resource to delete.
273
+ # @!attribute [rw] request_id
274
+ # @return [::String]
275
+ # Optional. An optional request ID to identify requests. Specify a unique request ID
276
+ # so that if you must retry your request, the server will know to ignore
277
+ # the request if it has already been completed. The server will guarantee
278
+ # that for at least 60 minutes after the first request.
279
+ #
280
+ # For example, consider a situation where you make an initial request and t
281
+ # he request times out. If you make the request again with the same request
282
+ # ID, the server can check if original operation with the same request ID
283
+ # was received, and if so, will ignore the second request. This prevents
284
+ # clients from accidentally creating duplicate commitments.
285
+ #
286
+ # The request ID must be a valid UUID with the exception that zero UUID is
287
+ # not supported (00000000-0000-0000-0000-000000000000).
288
+ class DeletePolicyBasedRouteRequest
289
+ include ::Google::Protobuf::MessageExts
290
+ extend ::Google::Protobuf::MessageExts::ClassMethods
291
+ end
292
+ end
293
+ end
294
+ end
295
+ end