google-cloud-network_connectivity-v1beta 0.a → 0.2.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.
Files changed (56) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +153 -8
  5. data/lib/google/cloud/network_connectivity/v1beta/data_transfer_service/client.rb +1784 -0
  6. data/lib/google/cloud/network_connectivity/v1beta/data_transfer_service/credentials.rb +47 -0
  7. data/lib/google/cloud/network_connectivity/v1beta/data_transfer_service/operations.rb +843 -0
  8. data/lib/google/cloud/network_connectivity/v1beta/data_transfer_service/paths.rb +109 -0
  9. data/lib/google/cloud/network_connectivity/v1beta/data_transfer_service.rb +50 -0
  10. data/lib/google/cloud/network_connectivity/v1beta/hub_service/client.rb +3583 -0
  11. data/lib/google/cloud/network_connectivity/v1beta/hub_service/credentials.rb +47 -0
  12. data/lib/google/cloud/network_connectivity/v1beta/hub_service/operations.rb +843 -0
  13. data/lib/google/cloud/network_connectivity/v1beta/hub_service/paths.rb +259 -0
  14. data/lib/google/cloud/network_connectivity/v1beta/hub_service.rb +52 -0
  15. data/lib/google/cloud/network_connectivity/v1beta/policy_based_routing_service/client.rb +879 -0
  16. data/lib/google/cloud/network_connectivity/v1beta/policy_based_routing_service/credentials.rb +47 -0
  17. data/lib/google/cloud/network_connectivity/v1beta/policy_based_routing_service/operations.rb +843 -0
  18. data/lib/google/cloud/network_connectivity/v1beta/policy_based_routing_service/paths.rb +84 -0
  19. data/lib/google/cloud/network_connectivity/v1beta/policy_based_routing_service.rb +51 -0
  20. data/lib/google/cloud/network_connectivity/v1beta/transport_manager/client.rb +1287 -0
  21. data/lib/google/cloud/network_connectivity/v1beta/transport_manager/credentials.rb +47 -0
  22. data/lib/google/cloud/network_connectivity/v1beta/transport_manager/operations.rb +843 -0
  23. data/lib/google/cloud/network_connectivity/v1beta/transport_manager/paths.rb +105 -0
  24. data/lib/google/cloud/network_connectivity/v1beta/transport_manager.rb +50 -0
  25. data/lib/google/cloud/network_connectivity/v1beta/version.rb +7 -2
  26. data/lib/google/cloud/network_connectivity/v1beta.rb +43 -0
  27. data/lib/google/cloud/networkconnectivity/v1beta/common_pb.rb +25 -0
  28. data/lib/google/cloud/networkconnectivity/v1beta/data_transfer_pb.rb +56 -0
  29. data/lib/google/cloud/networkconnectivity/v1beta/data_transfer_services_pb.rb +72 -0
  30. data/lib/google/cloud/networkconnectivity/v1beta/hub_pb.rb +111 -0
  31. data/lib/google/cloud/networkconnectivity/v1beta/hub_services_pb.rb +110 -0
  32. data/lib/google/cloud/networkconnectivity/v1beta/policy_based_routing_pb.rb +42 -0
  33. data/lib/google/cloud/networkconnectivity/v1beta/policy_based_routing_services_pb.rb +52 -0
  34. data/lib/google/cloud/networkconnectivity/v1beta/transport_manager_pb.rb +55 -0
  35. data/lib/google/cloud/networkconnectivity/v1beta/transport_manager_services_pb.rb +59 -0
  36. data/lib/google-cloud-network_connectivity-v1beta.rb +21 -0
  37. data/proto_docs/README.md +4 -0
  38. data/proto_docs/google/api/client.rb +593 -0
  39. data/proto_docs/google/api/field_behavior.rb +85 -0
  40. data/proto_docs/google/api/field_info.rb +88 -0
  41. data/proto_docs/google/api/launch_stage.rb +71 -0
  42. data/proto_docs/google/api/resource.rb +227 -0
  43. data/proto_docs/google/cloud/networkconnectivity/v1beta/common.rb +58 -0
  44. data/proto_docs/google/cloud/networkconnectivity/v1beta/data_transfer.rb +635 -0
  45. data/proto_docs/google/cloud/networkconnectivity/v1beta/hub.rb +2024 -0
  46. data/proto_docs/google/cloud/networkconnectivity/v1beta/policy_based_routing.rb +340 -0
  47. data/proto_docs/google/cloud/networkconnectivity/v1beta/transport_manager.rb +621 -0
  48. data/proto_docs/google/longrunning/operations.rb +191 -0
  49. data/proto_docs/google/protobuf/any.rb +145 -0
  50. data/proto_docs/google/protobuf/duration.rb +98 -0
  51. data/proto_docs/google/protobuf/empty.rb +34 -0
  52. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  53. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  54. data/proto_docs/google/rpc/status.rb +48 -0
  55. data/proto_docs/google/type/expr.rb +75 -0
  56. metadata +116 -9
@@ -0,0 +1,340 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 V1beta
24
+ # Policy-based routes route L4 network traffic based on not just destination IP
25
+ # address, but also source IP address, protocol, and more. If a policy-based
26
+ # route conflicts with other types of routes, the policy-based route always
27
+ # takes precedence.
28
+ # @!attribute [rw] virtual_machine
29
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::VirtualMachine]
30
+ # Optional. VM instances that this policy-based route applies to.
31
+ #
32
+ # Note: The following fields are mutually exclusive: `virtual_machine`, `interconnect_attachment`. If a field in that set is populated, all other fields in the set will automatically be cleared.
33
+ # @!attribute [rw] interconnect_attachment
34
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::InterconnectAttachment]
35
+ # Optional. The interconnect attachments that this policy-based route
36
+ # applies to.
37
+ #
38
+ # Note: The following fields are mutually exclusive: `interconnect_attachment`, `virtual_machine`. If a field in that set is populated, all other fields in the set will automatically be cleared.
39
+ # @!attribute [rw] next_hop_ilb_ip
40
+ # @return [::String]
41
+ # Optional. The IP address of a global-access-enabled L4 ILB that is the
42
+ # next hop for matching packets. For this version, only nextHopIlbIp is
43
+ # supported.
44
+ #
45
+ # Note: The following fields are mutually exclusive: `next_hop_ilb_ip`, `next_hop_other_routes`. If a field in that set is populated, all other fields in the set will automatically be cleared.
46
+ # @!attribute [rw] next_hop_other_routes
47
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::OtherRoutes]
48
+ # Optional. Other routes that will be referenced to determine the next hop
49
+ # of the packet.
50
+ #
51
+ # Note: The following fields are mutually exclusive: `next_hop_other_routes`, `next_hop_ilb_ip`. If a field in that set is populated, all other fields in the set will automatically be cleared.
52
+ # @!attribute [rw] name
53
+ # @return [::String]
54
+ # Immutable. Identifier. A unique name of the resource in the form of
55
+ # `projects/{project_number}/locations/global/PolicyBasedRoutes/{policy_based_route_id}`
56
+ # @!attribute [r] create_time
57
+ # @return [::Google::Protobuf::Timestamp]
58
+ # Output only. Time when the policy-based route was created.
59
+ # @!attribute [r] update_time
60
+ # @return [::Google::Protobuf::Timestamp]
61
+ # Output only. Time when the policy-based route was updated.
62
+ # @!attribute [rw] labels
63
+ # @return [::Google::Protobuf::Map{::String => ::String}]
64
+ # User-defined labels.
65
+ # @!attribute [rw] description
66
+ # @return [::String]
67
+ # Optional. An optional description of this resource. Provide this field when
68
+ # you create the resource.
69
+ # @!attribute [rw] network
70
+ # @return [::String]
71
+ # Required. Fully-qualified URL of the network that this route applies to,
72
+ # for example: projects/my-project/global/networks/my-network.
73
+ # @!attribute [rw] filter
74
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::Filter]
75
+ # Required. The filter to match L4 traffic.
76
+ # @!attribute [rw] priority
77
+ # @return [::Integer]
78
+ # Optional. The priority of this policy-based route. Priority is used to
79
+ # break ties in cases where there are more than one matching policy-based
80
+ # routes found. In cases where multiple policy-based routes are matched, the
81
+ # one with the lowest-numbered priority value wins. The default value is
82
+ # 1000. The priority value must be from 1 to 65535, inclusive.
83
+ # @!attribute [r] warnings
84
+ # @return [::Array<::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::Warnings>]
85
+ # Output only. If potential misconfigurations are detected for this route,
86
+ # this field will be populated with warning messages.
87
+ # @!attribute [r] self_link
88
+ # @return [::String]
89
+ # Output only. Server-defined fully-qualified URL for this resource.
90
+ # @!attribute [r] kind
91
+ # @return [::String]
92
+ # Output only. Type of this resource. Always
93
+ # networkconnectivity#policyBasedRoute for policy-based Route resources.
94
+ class PolicyBasedRoute
95
+ include ::Google::Protobuf::MessageExts
96
+ extend ::Google::Protobuf::MessageExts::ClassMethods
97
+
98
+ # VM instances that this policy-based route applies to.
99
+ # @!attribute [rw] tags
100
+ # @return [::Array<::String>]
101
+ # Optional. A list of VM instance tags that this policy-based route applies
102
+ # to. VM instances that have ANY of tags specified here installs this PBR.
103
+ class VirtualMachine
104
+ include ::Google::Protobuf::MessageExts
105
+ extend ::Google::Protobuf::MessageExts::ClassMethods
106
+ end
107
+
108
+ # InterconnectAttachment that this route applies to.
109
+ # @!attribute [rw] region
110
+ # @return [::String]
111
+ # Optional. Cloud region to install this policy-based route on interconnect
112
+ # attachment. Use `all` to install it on all interconnect attachments.
113
+ class InterconnectAttachment
114
+ include ::Google::Protobuf::MessageExts
115
+ extend ::Google::Protobuf::MessageExts::ClassMethods
116
+ end
117
+
118
+ # Filter matches L4 traffic.
119
+ # @!attribute [rw] ip_protocol
120
+ # @return [::String]
121
+ # Optional. The IP protocol that this policy-based route applies to. Valid
122
+ # values are 'TCP', 'UDP', and 'ALL'. Default is 'ALL'.
123
+ # @!attribute [rw] src_range
124
+ # @return [::String]
125
+ # Optional. The source IP range of outgoing packets that this policy-based
126
+ # route applies to. Default is "0.0.0.0/0" if protocol version is IPv4 and
127
+ # "::/0" if protocol version is IPv6.
128
+ # @!attribute [rw] dest_range
129
+ # @return [::String]
130
+ # Optional. The destination IP range of outgoing packets that this
131
+ # policy-based route applies to. Default is "0.0.0.0/0" if protocol version
132
+ # is IPv4 and "::/0" if protocol version is IPv6.
133
+ # @!attribute [rw] protocol_version
134
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::Filter::ProtocolVersion]
135
+ # Required. Internet protocol versions this policy-based route applies to.
136
+ # IPV4 and IPV6 is supported.
137
+ class Filter
138
+ include ::Google::Protobuf::MessageExts
139
+ extend ::Google::Protobuf::MessageExts::ClassMethods
140
+
141
+ # The internet protocol version.
142
+ module ProtocolVersion
143
+ # Default value.
144
+ PROTOCOL_VERSION_UNSPECIFIED = 0
145
+
146
+ # The PBR is for IPv4 internet protocol traffic.
147
+ IPV4 = 1
148
+
149
+ # The PBR is for IPv6 internet protocol traffic.
150
+ IPV6 = 2
151
+ end
152
+ end
153
+
154
+ # Informational warning message.
155
+ # @!attribute [r] code
156
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute::Warnings::Code]
157
+ # Output only. A warning code, if applicable.
158
+ # @!attribute [r] data
159
+ # @return [::Google::Protobuf::Map{::String => ::String}]
160
+ # Output only. Metadata about this warning in key: value format. The key
161
+ # should provides more detail on the warning being returned. For example,
162
+ # for warnings where there are no results in a list request for a
163
+ # particular zone, this key might be scope and the key value might be the
164
+ # zone name. Other examples might be a key indicating a deprecated resource
165
+ # and a suggested replacement.
166
+ # @!attribute [r] warning_message
167
+ # @return [::String]
168
+ # Output only. A human-readable description of the warning code.
169
+ class Warnings
170
+ include ::Google::Protobuf::MessageExts
171
+ extend ::Google::Protobuf::MessageExts::ClassMethods
172
+
173
+ # @!attribute [rw] key
174
+ # @return [::String]
175
+ # @!attribute [rw] value
176
+ # @return [::String]
177
+ class DataEntry
178
+ include ::Google::Protobuf::MessageExts
179
+ extend ::Google::Protobuf::MessageExts::ClassMethods
180
+ end
181
+
182
+ # Warning code for policy-based routing. Expect to add values in the
183
+ # future.
184
+ module Code
185
+ # Default value.
186
+ WARNING_UNSPECIFIED = 0
187
+
188
+ # The policy-based route is not active and functioning. Common causes are
189
+ # that the dependent network was deleted or the resource project was
190
+ # turned off.
191
+ RESOURCE_NOT_ACTIVE = 1
192
+
193
+ # The policy-based route is being modified (e.g. created/deleted) at this
194
+ # time.
195
+ RESOURCE_BEING_MODIFIED = 2
196
+ end
197
+ end
198
+
199
+ # @!attribute [rw] key
200
+ # @return [::String]
201
+ # @!attribute [rw] value
202
+ # @return [::String]
203
+ class LabelsEntry
204
+ include ::Google::Protobuf::MessageExts
205
+ extend ::Google::Protobuf::MessageExts::ClassMethods
206
+ end
207
+
208
+ # The other routing cases.
209
+ module OtherRoutes
210
+ # Default value.
211
+ OTHER_ROUTES_UNSPECIFIED = 0
212
+
213
+ # Use the routes from the default routing tables (system-generated routes,
214
+ # custom routes, peering route) to determine the next hop. This effectively
215
+ # excludes matching packets being applied on other PBRs with a lower
216
+ # priority.
217
+ DEFAULT_ROUTING = 1
218
+ end
219
+ end
220
+
221
+ # Request for
222
+ # {::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoutingService::Client#list_policy_based_routes PolicyBasedRoutingService.ListPolicyBasedRoutes}
223
+ # method.
224
+ # @!attribute [rw] parent
225
+ # @return [::String]
226
+ # Required. The parent resource's name.
227
+ # @!attribute [rw] page_size
228
+ # @return [::Integer]
229
+ # The maximum number of results per page that should be returned.
230
+ # @!attribute [rw] page_token
231
+ # @return [::String]
232
+ # The page token.
233
+ # @!attribute [rw] filter
234
+ # @return [::String]
235
+ # A filter expression that filters the results listed in the response.
236
+ # @!attribute [rw] order_by
237
+ # @return [::String]
238
+ # Sort the results by a certain order.
239
+ class ListPolicyBasedRoutesRequest
240
+ include ::Google::Protobuf::MessageExts
241
+ extend ::Google::Protobuf::MessageExts::ClassMethods
242
+ end
243
+
244
+ # Response for
245
+ # {::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoutingService::Client#list_policy_based_routes PolicyBasedRoutingService.ListPolicyBasedRoutes}
246
+ # method.
247
+ # @!attribute [rw] policy_based_routes
248
+ # @return [::Array<::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute>]
249
+ # Policy-based routes to be returned.
250
+ # @!attribute [rw] next_page_token
251
+ # @return [::String]
252
+ # The next pagination token in the List response. It should be used as
253
+ # page_token for the following request. An empty value means no more result.
254
+ # @!attribute [rw] unreachable
255
+ # @return [::Array<::String>]
256
+ # Locations that could not be reached.
257
+ class ListPolicyBasedRoutesResponse
258
+ include ::Google::Protobuf::MessageExts
259
+ extend ::Google::Protobuf::MessageExts::ClassMethods
260
+ end
261
+
262
+ # Request for
263
+ # {::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoutingService::Client#get_policy_based_route PolicyBasedRoutingService.GetPolicyBasedRoute}
264
+ # method.
265
+ # @!attribute [rw] name
266
+ # @return [::String]
267
+ # Required. Name of the PolicyBasedRoute resource to get.
268
+ class GetPolicyBasedRouteRequest
269
+ include ::Google::Protobuf::MessageExts
270
+ extend ::Google::Protobuf::MessageExts::ClassMethods
271
+ end
272
+
273
+ # Request for
274
+ # {::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoutingService::Client#create_policy_based_route PolicyBasedRoutingService.CreatePolicyBasedRoute}
275
+ # method.
276
+ # @!attribute [rw] parent
277
+ # @return [::String]
278
+ # Required. The parent resource's name of the PolicyBasedRoute.
279
+ # @!attribute [rw] policy_based_route_id
280
+ # @return [::String]
281
+ # Required. Unique id for the policy-based route to create. Provided by the
282
+ # client when the resource is created. The name must comply with
283
+ # https://google.aip.dev/122#resource-id-segments. Specifically, the name
284
+ # must be 1-63 characters long and match the regular expression
285
+ # [a-z]([a-z0-9-]*[a-z0-9])?. The first character must be a lowercase letter,
286
+ # and all following characters (except for the last character) must be a
287
+ # dash, lowercase letter, or digit. The last character must be a lowercase
288
+ # letter or digit.
289
+ # @!attribute [rw] policy_based_route
290
+ # @return [::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoute]
291
+ # Required. Initial values for a new policy-based route.
292
+ # @!attribute [rw] request_id
293
+ # @return [::String]
294
+ # Optional. An optional request ID to identify requests. Specify a unique
295
+ # request ID so that if you must retry your request, the server knows to
296
+ # ignore the request if it has already been completed. The server guarantees
297
+ # that for at least 60 minutes since the first request.
298
+ #
299
+ # For example, consider a situation where you make an initial request and
300
+ # the request times out. If you make the request again with the same request
301
+ # ID, the server can check if original operation with the same request ID
302
+ # was received, and if so, ignores the second request. This prevents clients
303
+ # from accidentally creating duplicate commitments.
304
+ #
305
+ # The request ID must be a valid UUID with the exception that zero UUID is
306
+ # not supported (00000000-0000-0000-0000-000000000000).
307
+ class CreatePolicyBasedRouteRequest
308
+ include ::Google::Protobuf::MessageExts
309
+ extend ::Google::Protobuf::MessageExts::ClassMethods
310
+ end
311
+
312
+ # Request for
313
+ # {::Google::Cloud::NetworkConnectivity::V1beta::PolicyBasedRoutingService::Client#delete_policy_based_route PolicyBasedRoutingService.DeletePolicyBasedRoute}
314
+ # method.
315
+ # @!attribute [rw] name
316
+ # @return [::String]
317
+ # Required. Name of the policy-based route resource to delete.
318
+ # @!attribute [rw] request_id
319
+ # @return [::String]
320
+ # Optional. An optional request ID to identify requests. Specify a unique
321
+ # request ID so that if you must retry your request, the server knows to
322
+ # ignore the request if it has already been completed. The server guarantees
323
+ # that for at least 60 minutes after the first request.
324
+ #
325
+ # For example, consider a situation where you make an initial request and
326
+ # the request times out. If you make the request again with the same request
327
+ # ID, the server can check if original operation with the same request ID
328
+ # was received, and if so, ignores the second request. This prevents clients
329
+ # from accidentally creating duplicate commitments.
330
+ #
331
+ # The request ID must be a valid UUID with the exception that zero UUID is
332
+ # not supported (00000000-0000-0000-0000-000000000000).
333
+ class DeletePolicyBasedRouteRequest
334
+ include ::Google::Protobuf::MessageExts
335
+ extend ::Google::Protobuf::MessageExts::ClassMethods
336
+ end
337
+ end
338
+ end
339
+ end
340
+ end