google-cloud-network_services-v1beta1 0.a → 0.1.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.
- checksums.yaml +4 -4
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +122 -0
- data/README.md +154 -8
- data/lib/google/cloud/network_services/v1beta1/bindings_override.rb +108 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/client.rb +2076 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/credentials.rb +47 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/operations.rb +843 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/paths.rb +107 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/rest/client.rb +1937 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/rest/operations.rb +927 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/rest/service_stub.rb +1002 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service/rest.rb +54 -0
- data/lib/google/cloud/network_services/v1beta1/dep_service.rb +56 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/client.rb +947 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/credentials.rb +47 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/operations.rb +843 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/paths.rb +126 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/rest/client.rb +878 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/rest/operations.rb +927 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/rest/service_stub.rb +388 -0
- data/lib/google/cloud/network_services/v1beta1/network_services/rest.rb +54 -0
- data/lib/google/cloud/network_services/v1beta1/network_services.rb +56 -0
- data/lib/google/cloud/network_services/v1beta1/rest.rb +39 -0
- data/lib/google/cloud/network_services/v1beta1/version.rb +7 -2
- data/lib/google/cloud/network_services/v1beta1.rb +46 -0
- data/lib/google/cloud/networkservices/v1beta1/common_pb.rb +29 -0
- data/lib/google/cloud/networkservices/v1beta1/dep_pb.rb +67 -0
- data/lib/google/cloud/networkservices/v1beta1/dep_services_pb.rb +74 -0
- data/lib/google/cloud/networkservices/v1beta1/endpoint_policy_pb.rb +34 -0
- data/lib/google/cloud/networkservices/v1beta1/network_services_pb.rb +25 -0
- data/lib/google/cloud/networkservices/v1beta1/network_services_services_pb.rb +53 -0
- data/lib/google-cloud-network_services-v1beta1.rb +21 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/client.rb +593 -0
- data/proto_docs/google/api/field_behavior.rb +85 -0
- data/proto_docs/google/api/field_info.rb +88 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/api/resource.rb +227 -0
- data/proto_docs/google/cloud/networkservices/v1beta1/common.rb +147 -0
- data/proto_docs/google/cloud/networkservices/v1beta1/dep.rb +928 -0
- data/proto_docs/google/cloud/networkservices/v1beta1/endpoint_policy.rb +196 -0
- data/proto_docs/google/longrunning/operations.rb +191 -0
- data/proto_docs/google/protobuf/any.rb +145 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +34 -0
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/google/protobuf/timestamp.rb +128 -0
- data/proto_docs/google/rpc/status.rb +48 -0
- metadata +111 -9
|
@@ -0,0 +1,928 @@
|
|
|
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 NetworkServices
|
|
23
|
+
module V1beta1
|
|
24
|
+
# A single extension chain wrapper that contains the match conditions and
|
|
25
|
+
# extensions to execute.
|
|
26
|
+
# @!attribute [rw] name
|
|
27
|
+
# @return [::String]
|
|
28
|
+
# Required. The name for this extension chain.
|
|
29
|
+
# The name is logged as part of the HTTP request logs.
|
|
30
|
+
# The name must conform with RFC-1034, is restricted to lower-cased letters,
|
|
31
|
+
# numbers and hyphens, and can have a maximum length of 63 characters.
|
|
32
|
+
# Additionally, the first character must be a letter and the last a letter or
|
|
33
|
+
# a number.
|
|
34
|
+
# @!attribute [rw] match_condition
|
|
35
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionChain::MatchCondition]
|
|
36
|
+
# Required. Conditions under which this chain is invoked for a request.
|
|
37
|
+
# @!attribute [rw] extensions
|
|
38
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionChain::Extension>]
|
|
39
|
+
# Required. A set of extensions to execute for the matching request.
|
|
40
|
+
# At least one extension is required.
|
|
41
|
+
# Up to 3 extensions can be defined for each extension chain
|
|
42
|
+
# for `LbTrafficExtension` resource.
|
|
43
|
+
# `LbRouteExtension` chains are limited to 1 extension per extension chain.
|
|
44
|
+
class ExtensionChain
|
|
45
|
+
include ::Google::Protobuf::MessageExts
|
|
46
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
47
|
+
|
|
48
|
+
# Conditions under which this chain is invoked for a request.
|
|
49
|
+
# @!attribute [rw] cel_expression
|
|
50
|
+
# @return [::String]
|
|
51
|
+
# Required. A Common Expression Language (CEL) expression that is used to
|
|
52
|
+
# match requests for which the extension chain is executed.
|
|
53
|
+
#
|
|
54
|
+
# For more information, see [CEL matcher language
|
|
55
|
+
# reference](https://cloud.google.com/service-extensions/docs/cel-matcher-language-reference).
|
|
56
|
+
class MatchCondition
|
|
57
|
+
include ::Google::Protobuf::MessageExts
|
|
58
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
59
|
+
end
|
|
60
|
+
|
|
61
|
+
# A single extension in the chain to execute for the matching request.
|
|
62
|
+
# @!attribute [rw] name
|
|
63
|
+
# @return [::String]
|
|
64
|
+
# Required. The name for this extension.
|
|
65
|
+
# The name is logged as part of the HTTP request logs.
|
|
66
|
+
# The name must conform with RFC-1034, is restricted to lower-cased
|
|
67
|
+
# letters, numbers and hyphens, and can have a maximum length of 63
|
|
68
|
+
# characters. Additionally, the first character must be a letter and the
|
|
69
|
+
# last a letter or a number.
|
|
70
|
+
# @!attribute [rw] authority
|
|
71
|
+
# @return [::String]
|
|
72
|
+
# Optional. The `:authority` header in the gRPC request sent from Envoy
|
|
73
|
+
# to the extension service.
|
|
74
|
+
# Required for Callout extensions.
|
|
75
|
+
# @!attribute [rw] service
|
|
76
|
+
# @return [::String]
|
|
77
|
+
# Required. The reference to the service that runs the extension.
|
|
78
|
+
#
|
|
79
|
+
# Currently only callout extensions are supported here.
|
|
80
|
+
#
|
|
81
|
+
# To configure a callout extension, `service` must be a fully-qualified
|
|
82
|
+
# reference
|
|
83
|
+
# to a [backend
|
|
84
|
+
# service](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices)
|
|
85
|
+
# in the format:
|
|
86
|
+
# `https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService}`
|
|
87
|
+
# or
|
|
88
|
+
# `https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}`.
|
|
89
|
+
# @!attribute [rw] supported_events
|
|
90
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::EventType>]
|
|
91
|
+
# Optional. A set of events during request or response processing for which
|
|
92
|
+
# this extension is called. This field is required for the
|
|
93
|
+
# `LbTrafficExtension` resource. It's not relevant for the
|
|
94
|
+
# `LbRouteExtension` resource.
|
|
95
|
+
# @!attribute [rw] timeout
|
|
96
|
+
# @return [::Google::Protobuf::Duration]
|
|
97
|
+
# Optional. Specifies the timeout for each individual message on the
|
|
98
|
+
# stream. The timeout must be between 10-1000 milliseconds. Required for
|
|
99
|
+
# Callout extensions.
|
|
100
|
+
# @!attribute [rw] fail_open
|
|
101
|
+
# @return [::Boolean]
|
|
102
|
+
# Optional. Determines how the proxy behaves if the call to the extension
|
|
103
|
+
# fails or times out.
|
|
104
|
+
#
|
|
105
|
+
# When set to `TRUE`, request or response processing continues without
|
|
106
|
+
# error. Any subsequent extensions in the extension chain are also
|
|
107
|
+
# executed. When set to `FALSE` or the default setting of `FALSE` is used,
|
|
108
|
+
# one of the following happens:
|
|
109
|
+
# * If response headers have not been delivered to the downstream client,
|
|
110
|
+
# a generic 500 error is returned to the client. The error response can be
|
|
111
|
+
# tailored by configuring a custom error response in the load balancer.
|
|
112
|
+
#
|
|
113
|
+
# * If response headers have been delivered, then the HTTP stream to the
|
|
114
|
+
# downstream client is reset.
|
|
115
|
+
# @!attribute [rw] forward_headers
|
|
116
|
+
# @return [::Array<::String>]
|
|
117
|
+
# Optional. List of the HTTP headers to forward to the extension
|
|
118
|
+
# (from the client or backend). If omitted, all headers are sent.
|
|
119
|
+
# Each element is a string indicating the header name.
|
|
120
|
+
class Extension
|
|
121
|
+
include ::Google::Protobuf::MessageExts
|
|
122
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
# `LbTrafficExtension` is a resource that lets the extension service modify the
|
|
127
|
+
# headers and payloads of both requests and responses without impacting the
|
|
128
|
+
# choice of backend services or any other security policies associated with the
|
|
129
|
+
# backend service.
|
|
130
|
+
# @!attribute [rw] name
|
|
131
|
+
# @return [::String]
|
|
132
|
+
# Required. Identifier. Name of the `LbTrafficExtension` resource in the
|
|
133
|
+
# following format:
|
|
134
|
+
# `projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}`.
|
|
135
|
+
# @!attribute [r] create_time
|
|
136
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
137
|
+
# Output only. The timestamp when the resource was created.
|
|
138
|
+
# @!attribute [r] update_time
|
|
139
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
140
|
+
# Output only. The timestamp when the resource was updated.
|
|
141
|
+
# @!attribute [rw] description
|
|
142
|
+
# @return [::String]
|
|
143
|
+
# Optional. A human-readable description of the resource.
|
|
144
|
+
# @!attribute [rw] labels
|
|
145
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
|
146
|
+
# Optional. Set of labels associated with the `LbTrafficExtension` resource.
|
|
147
|
+
#
|
|
148
|
+
# The format must comply with [the requirements for
|
|
149
|
+
# labels](https://cloud.google.com/compute/docs/labeling-resources#requirements)
|
|
150
|
+
# for Google Cloud resources.
|
|
151
|
+
# @!attribute [rw] forwarding_rules
|
|
152
|
+
# @return [::Array<::String>]
|
|
153
|
+
# Required. A list of references to the forwarding rules to which this
|
|
154
|
+
# service extension is attached to. At least one forwarding rule is required.
|
|
155
|
+
# There can be only one `LBTrafficExtension` resource per forwarding rule.
|
|
156
|
+
# @!attribute [rw] extension_chains
|
|
157
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionChain>]
|
|
158
|
+
# Required. A set of ordered extension chains that contain the match
|
|
159
|
+
# conditions and extensions to execute. Match conditions for each extension
|
|
160
|
+
# chain are evaluated in sequence for a given request. The first extension
|
|
161
|
+
# chain that has a condition that matches the request is executed.
|
|
162
|
+
# Any subsequent extension chains do not execute.
|
|
163
|
+
# Limited to 5 extension chains per resource.
|
|
164
|
+
# @!attribute [rw] load_balancing_scheme
|
|
165
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::LoadBalancingScheme]
|
|
166
|
+
# Required. All backend services and forwarding rules referenced by this
|
|
167
|
+
# extension must share the same load balancing scheme. Supported values:
|
|
168
|
+
# `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to
|
|
169
|
+
# [Choosing a load
|
|
170
|
+
# balancer](https://cloud.google.com/load-balancing/docs/backend-service).
|
|
171
|
+
class LbTrafficExtension
|
|
172
|
+
include ::Google::Protobuf::MessageExts
|
|
173
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
174
|
+
|
|
175
|
+
# @!attribute [rw] key
|
|
176
|
+
# @return [::String]
|
|
177
|
+
# @!attribute [rw] value
|
|
178
|
+
# @return [::String]
|
|
179
|
+
class LabelsEntry
|
|
180
|
+
include ::Google::Protobuf::MessageExts
|
|
181
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
# Message for requesting list of `LbTrafficExtension` resources.
|
|
186
|
+
# @!attribute [rw] parent
|
|
187
|
+
# @return [::String]
|
|
188
|
+
# Required. The project and location from which the `LbTrafficExtension`
|
|
189
|
+
# resources are listed, specified in the following format:
|
|
190
|
+
# `projects/{project}/locations/{location}`.
|
|
191
|
+
# @!attribute [rw] page_size
|
|
192
|
+
# @return [::Integer]
|
|
193
|
+
# Optional. Requested page size. The server might return fewer items than
|
|
194
|
+
# requested. If unspecified, the server picks an appropriate default.
|
|
195
|
+
# @!attribute [rw] page_token
|
|
196
|
+
# @return [::String]
|
|
197
|
+
# Optional. A token identifying a page of results that the server returns.
|
|
198
|
+
# @!attribute [rw] filter
|
|
199
|
+
# @return [::String]
|
|
200
|
+
# Optional. Filtering results.
|
|
201
|
+
# @!attribute [rw] order_by
|
|
202
|
+
# @return [::String]
|
|
203
|
+
# Optional. Hint for how to order the results.
|
|
204
|
+
class ListLbTrafficExtensionsRequest
|
|
205
|
+
include ::Google::Protobuf::MessageExts
|
|
206
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
# Message for response to listing `LbTrafficExtension` resources.
|
|
210
|
+
# @!attribute [rw] lb_traffic_extensions
|
|
211
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::LbTrafficExtension>]
|
|
212
|
+
# The list of `LbTrafficExtension` resources.
|
|
213
|
+
# @!attribute [rw] next_page_token
|
|
214
|
+
# @return [::String]
|
|
215
|
+
# A token identifying a page of results that the server returns.
|
|
216
|
+
# @!attribute [rw] unreachable
|
|
217
|
+
# @return [::Array<::String>]
|
|
218
|
+
# Locations that could not be reached.
|
|
219
|
+
class ListLbTrafficExtensionsResponse
|
|
220
|
+
include ::Google::Protobuf::MessageExts
|
|
221
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
222
|
+
end
|
|
223
|
+
|
|
224
|
+
# Message for getting a `LbTrafficExtension` resource.
|
|
225
|
+
# @!attribute [rw] name
|
|
226
|
+
# @return [::String]
|
|
227
|
+
# Required. A name of the `LbTrafficExtension` resource to get. Must be in
|
|
228
|
+
# the format
|
|
229
|
+
# `projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}`.
|
|
230
|
+
class GetLbTrafficExtensionRequest
|
|
231
|
+
include ::Google::Protobuf::MessageExts
|
|
232
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
233
|
+
end
|
|
234
|
+
|
|
235
|
+
# Message for creating a `LbTrafficExtension` resource.
|
|
236
|
+
# @!attribute [rw] parent
|
|
237
|
+
# @return [::String]
|
|
238
|
+
# Required. The parent resource of the `LbTrafficExtension` resource. Must be
|
|
239
|
+
# in the format `projects/{project}/locations/{location}`.
|
|
240
|
+
# @!attribute [rw] lb_traffic_extension_id
|
|
241
|
+
# @return [::String]
|
|
242
|
+
# Required. User-provided ID of the `LbTrafficExtension` resource to be
|
|
243
|
+
# created.
|
|
244
|
+
# @!attribute [rw] lb_traffic_extension
|
|
245
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::LbTrafficExtension]
|
|
246
|
+
# Required. `LbTrafficExtension` resource to be created.
|
|
247
|
+
# @!attribute [rw] request_id
|
|
248
|
+
# @return [::String]
|
|
249
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
|
250
|
+
# request ID so that if you must retry your request, the server can ignore
|
|
251
|
+
# the request if it has already been completed. The server guarantees
|
|
252
|
+
# that for at least 60 minutes since the first request.
|
|
253
|
+
#
|
|
254
|
+
# For example, consider a situation where you make an initial request and the
|
|
255
|
+
# request times out. If you make the request again with the same request
|
|
256
|
+
# ID, the server can check if original operation with the same request ID
|
|
257
|
+
# was received, and if so, ignores the second request. This prevents
|
|
258
|
+
# clients from accidentally creating duplicate commitments.
|
|
259
|
+
#
|
|
260
|
+
# The request ID must be a valid UUID with the exception that zero UUID is
|
|
261
|
+
# not supported (00000000-0000-0000-0000-000000000000).
|
|
262
|
+
class CreateLbTrafficExtensionRequest
|
|
263
|
+
include ::Google::Protobuf::MessageExts
|
|
264
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
265
|
+
end
|
|
266
|
+
|
|
267
|
+
# Message for updating a `LbTrafficExtension` resource.
|
|
268
|
+
# @!attribute [rw] update_mask
|
|
269
|
+
# @return [::Google::Protobuf::FieldMask]
|
|
270
|
+
# Required. Used to specify the fields to be overwritten in the
|
|
271
|
+
# `LbTrafficExtension` resource by the update.
|
|
272
|
+
# The fields specified in the update_mask are relative to the resource, not
|
|
273
|
+
# the full request. A field is overwritten if it is in the mask. If the
|
|
274
|
+
# user does not specify a mask, then all fields are overwritten.
|
|
275
|
+
# @!attribute [rw] lb_traffic_extension
|
|
276
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::LbTrafficExtension]
|
|
277
|
+
# Required. `LbTrafficExtension` resource being updated.
|
|
278
|
+
# @!attribute [rw] request_id
|
|
279
|
+
# @return [::String]
|
|
280
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
|
281
|
+
# request ID so that if you must retry your request, the server can ignore
|
|
282
|
+
# the request if it has already been completed. The server guarantees
|
|
283
|
+
# that for at least 60 minutes since the first request.
|
|
284
|
+
#
|
|
285
|
+
# For example, consider a situation where you make an initial request and the
|
|
286
|
+
# request times out. If you make the request again with the same request
|
|
287
|
+
# ID, the server can check if original operation with the same request ID
|
|
288
|
+
# was received, and if so, ignores the second request. This prevents
|
|
289
|
+
# clients from accidentally creating duplicate commitments.
|
|
290
|
+
#
|
|
291
|
+
# The request ID must be a valid UUID with the exception that zero UUID is
|
|
292
|
+
# not supported (00000000-0000-0000-0000-000000000000).
|
|
293
|
+
class UpdateLbTrafficExtensionRequest
|
|
294
|
+
include ::Google::Protobuf::MessageExts
|
|
295
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
# Message for deleting a `LbTrafficExtension` resource.
|
|
299
|
+
# @!attribute [rw] name
|
|
300
|
+
# @return [::String]
|
|
301
|
+
# Required. The name of the `LbTrafficExtension` resource to delete. Must be
|
|
302
|
+
# in the format
|
|
303
|
+
# `projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}`.
|
|
304
|
+
# @!attribute [rw] request_id
|
|
305
|
+
# @return [::String]
|
|
306
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
|
307
|
+
# request ID so that if you must retry your request, the server can ignore
|
|
308
|
+
# the request if it has already been completed. The server guarantees
|
|
309
|
+
# that for at least 60 minutes after the first request.
|
|
310
|
+
#
|
|
311
|
+
# For example, consider a situation where you make an initial request and the
|
|
312
|
+
# request times out. If you make the request again with the same request
|
|
313
|
+
# ID, the server can check if original operation with the same request ID
|
|
314
|
+
# was received, and if so, ignores the second request. This prevents
|
|
315
|
+
# clients from accidentally creating duplicate commitments.
|
|
316
|
+
#
|
|
317
|
+
# The request ID must be a valid UUID with the exception that zero UUID is
|
|
318
|
+
# not supported (00000000-0000-0000-0000-000000000000).
|
|
319
|
+
class DeleteLbTrafficExtensionRequest
|
|
320
|
+
include ::Google::Protobuf::MessageExts
|
|
321
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
322
|
+
end
|
|
323
|
+
|
|
324
|
+
# `LbRouteExtension` is a resource that lets you control where traffic is
|
|
325
|
+
# routed to for a given request.
|
|
326
|
+
# @!attribute [rw] name
|
|
327
|
+
# @return [::String]
|
|
328
|
+
# Required. Identifier. Name of the `LbRouteExtension` resource in the
|
|
329
|
+
# following format:
|
|
330
|
+
# `projects/{project}/locations/{location}/lbRouteExtensions/{lb_route_extension}`.
|
|
331
|
+
# @!attribute [r] create_time
|
|
332
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
333
|
+
# Output only. The timestamp when the resource was created.
|
|
334
|
+
# @!attribute [r] update_time
|
|
335
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
336
|
+
# Output only. The timestamp when the resource was updated.
|
|
337
|
+
# @!attribute [rw] description
|
|
338
|
+
# @return [::String]
|
|
339
|
+
# Optional. A human-readable description of the resource.
|
|
340
|
+
# @!attribute [rw] labels
|
|
341
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
|
342
|
+
# Optional. Set of labels associated with the `LbRouteExtension` resource.
|
|
343
|
+
#
|
|
344
|
+
# The format must comply with [the requirements for
|
|
345
|
+
# labels](https://cloud.google.com/compute/docs/labeling-resources#requirements)
|
|
346
|
+
# for Google Cloud resources.
|
|
347
|
+
# @!attribute [rw] forwarding_rules
|
|
348
|
+
# @return [::Array<::String>]
|
|
349
|
+
# Required. A list of references to the forwarding rules to which this
|
|
350
|
+
# service extension is attached to. At least one forwarding rule is required.
|
|
351
|
+
# There can be only one `LbRouteExtension` resource per forwarding rule.
|
|
352
|
+
# @!attribute [rw] extension_chains
|
|
353
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionChain>]
|
|
354
|
+
# Required. A set of ordered extension chains that contain the match
|
|
355
|
+
# conditions and extensions to execute. Match conditions for each extension
|
|
356
|
+
# chain are evaluated in sequence for a given request. The first extension
|
|
357
|
+
# chain that has a condition that matches the request is executed.
|
|
358
|
+
# Any subsequent extension chains do not execute.
|
|
359
|
+
# Limited to 5 extension chains per resource.
|
|
360
|
+
# @!attribute [rw] load_balancing_scheme
|
|
361
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::LoadBalancingScheme]
|
|
362
|
+
# Required. All backend services and forwarding rules referenced by this
|
|
363
|
+
# extension must share the same load balancing scheme. Supported values:
|
|
364
|
+
# `INTERNAL_MANAGED`, `EXTERNAL_MANAGED`. For more information, refer to
|
|
365
|
+
# [Choosing a load
|
|
366
|
+
# balancer](https://cloud.google.com/load-balancing/docs/backend-service).
|
|
367
|
+
class LbRouteExtension
|
|
368
|
+
include ::Google::Protobuf::MessageExts
|
|
369
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
370
|
+
|
|
371
|
+
# @!attribute [rw] key
|
|
372
|
+
# @return [::String]
|
|
373
|
+
# @!attribute [rw] value
|
|
374
|
+
# @return [::String]
|
|
375
|
+
class LabelsEntry
|
|
376
|
+
include ::Google::Protobuf::MessageExts
|
|
377
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
378
|
+
end
|
|
379
|
+
end
|
|
380
|
+
|
|
381
|
+
# Message for requesting list of `LbRouteExtension` resources.
|
|
382
|
+
# @!attribute [rw] parent
|
|
383
|
+
# @return [::String]
|
|
384
|
+
# Required. The project and location from which the `LbRouteExtension`
|
|
385
|
+
# resources are listed, specified in the following format:
|
|
386
|
+
# `projects/{project}/locations/{location}`.
|
|
387
|
+
# @!attribute [rw] page_size
|
|
388
|
+
# @return [::Integer]
|
|
389
|
+
# Optional. Requested page size. The server might return fewer items than
|
|
390
|
+
# requested. If unspecified, the server picks an appropriate default.
|
|
391
|
+
# @!attribute [rw] page_token
|
|
392
|
+
# @return [::String]
|
|
393
|
+
# Optional. A token identifying a page of results that the server returns.
|
|
394
|
+
# @!attribute [rw] filter
|
|
395
|
+
# @return [::String]
|
|
396
|
+
# Optional. Filtering results.
|
|
397
|
+
# @!attribute [rw] order_by
|
|
398
|
+
# @return [::String]
|
|
399
|
+
# Optional. Hint for how to order the results.
|
|
400
|
+
class ListLbRouteExtensionsRequest
|
|
401
|
+
include ::Google::Protobuf::MessageExts
|
|
402
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
403
|
+
end
|
|
404
|
+
|
|
405
|
+
# Message for response to listing `LbRouteExtension` resources.
|
|
406
|
+
# @!attribute [rw] lb_route_extensions
|
|
407
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::LbRouteExtension>]
|
|
408
|
+
# The list of `LbRouteExtension` resources.
|
|
409
|
+
# @!attribute [rw] next_page_token
|
|
410
|
+
# @return [::String]
|
|
411
|
+
# A token identifying a page of results that the server returns.
|
|
412
|
+
# @!attribute [rw] unreachable
|
|
413
|
+
# @return [::Array<::String>]
|
|
414
|
+
# Locations that could not be reached.
|
|
415
|
+
class ListLbRouteExtensionsResponse
|
|
416
|
+
include ::Google::Protobuf::MessageExts
|
|
417
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
418
|
+
end
|
|
419
|
+
|
|
420
|
+
# Message for getting a `LbRouteExtension` resource.
|
|
421
|
+
# @!attribute [rw] name
|
|
422
|
+
# @return [::String]
|
|
423
|
+
# Required. A name of the `LbRouteExtension` resource to get. Must be in the
|
|
424
|
+
# format
|
|
425
|
+
# `projects/{project}/locations/{location}/lbRouteExtensions/{lb_route_extension}`.
|
|
426
|
+
class GetLbRouteExtensionRequest
|
|
427
|
+
include ::Google::Protobuf::MessageExts
|
|
428
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
429
|
+
end
|
|
430
|
+
|
|
431
|
+
# Message for creating a `LbRouteExtension` resource.
|
|
432
|
+
# @!attribute [rw] parent
|
|
433
|
+
# @return [::String]
|
|
434
|
+
# Required. The parent resource of the `LbRouteExtension` resource. Must be
|
|
435
|
+
# in the format `projects/{project}/locations/{location}`.
|
|
436
|
+
# @!attribute [rw] lb_route_extension_id
|
|
437
|
+
# @return [::String]
|
|
438
|
+
# Required. User-provided ID of the `LbRouteExtension` resource to be
|
|
439
|
+
# created.
|
|
440
|
+
# @!attribute [rw] lb_route_extension
|
|
441
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::LbRouteExtension]
|
|
442
|
+
# Required. `LbRouteExtension` resource to be created.
|
|
443
|
+
# @!attribute [rw] request_id
|
|
444
|
+
# @return [::String]
|
|
445
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
|
446
|
+
# request ID so that if you must retry your request, the server can ignore
|
|
447
|
+
# the request if it has already been completed. The server guarantees
|
|
448
|
+
# that for at least 60 minutes since the first request.
|
|
449
|
+
#
|
|
450
|
+
# For example, consider a situation where you make an initial request and the
|
|
451
|
+
# request times out. If you make the request again with the same request
|
|
452
|
+
# ID, the server can check if original operation with the same request ID
|
|
453
|
+
# was received, and if so, ignores the second request. This prevents
|
|
454
|
+
# clients from accidentally creating duplicate commitments.
|
|
455
|
+
#
|
|
456
|
+
# The request ID must be a valid UUID with the exception that zero UUID is
|
|
457
|
+
# not supported (00000000-0000-0000-0000-000000000000).
|
|
458
|
+
class CreateLbRouteExtensionRequest
|
|
459
|
+
include ::Google::Protobuf::MessageExts
|
|
460
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
461
|
+
end
|
|
462
|
+
|
|
463
|
+
# Message for updating a `LbRouteExtension` resource.
|
|
464
|
+
# @!attribute [rw] update_mask
|
|
465
|
+
# @return [::Google::Protobuf::FieldMask]
|
|
466
|
+
# Required. Used to specify the fields to be overwritten in the
|
|
467
|
+
# `LbRouteExtension` resource by the update.
|
|
468
|
+
# The fields specified in the update_mask are relative to the resource, not
|
|
469
|
+
# the full request. A field is overwritten if it is in the mask. If the
|
|
470
|
+
# user does not specify a mask, then all fields are overwritten.
|
|
471
|
+
# @!attribute [rw] lb_route_extension
|
|
472
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::LbRouteExtension]
|
|
473
|
+
# Required. `LbRouteExtension` resource being updated.
|
|
474
|
+
# @!attribute [rw] request_id
|
|
475
|
+
# @return [::String]
|
|
476
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
|
477
|
+
# request ID so that if you must retry your request, the server can ignore
|
|
478
|
+
# the request if it has already been completed. The server guarantees
|
|
479
|
+
# that for at least 60 minutes since the first request.
|
|
480
|
+
#
|
|
481
|
+
# For example, consider a situation where you make an initial request and the
|
|
482
|
+
# request times out. If you make the request again with the same request
|
|
483
|
+
# ID, the server can check if original operation with the same request ID
|
|
484
|
+
# was received, and if so, ignores the second request. This prevents
|
|
485
|
+
# clients from accidentally creating duplicate commitments.
|
|
486
|
+
#
|
|
487
|
+
# The request ID must be a valid UUID with the exception that zero UUID is
|
|
488
|
+
# not supported (00000000-0000-0000-0000-000000000000).
|
|
489
|
+
class UpdateLbRouteExtensionRequest
|
|
490
|
+
include ::Google::Protobuf::MessageExts
|
|
491
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
492
|
+
end
|
|
493
|
+
|
|
494
|
+
# Message for deleting a `LbRouteExtension` resource.
|
|
495
|
+
# @!attribute [rw] name
|
|
496
|
+
# @return [::String]
|
|
497
|
+
# Required. The name of the `LbRouteExtension` resource to delete. Must be in
|
|
498
|
+
# the format
|
|
499
|
+
# `projects/{project}/locations/{location}/lbRouteExtensions/{lb_route_extension}`.
|
|
500
|
+
# @!attribute [rw] request_id
|
|
501
|
+
# @return [::String]
|
|
502
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
|
503
|
+
# request ID so that if you must retry your request, the server can ignore
|
|
504
|
+
# the request if it has already been completed. The server guarantees
|
|
505
|
+
# that for at least 60 minutes after the first request.
|
|
506
|
+
#
|
|
507
|
+
# For example, consider a situation where you make an initial request and the
|
|
508
|
+
# request times out. If you make the request again with the same request
|
|
509
|
+
# ID, the server can check if original operation with the same request ID
|
|
510
|
+
# was received, and if so, ignores the second request. This prevents
|
|
511
|
+
# clients from accidentally creating duplicate commitments.
|
|
512
|
+
#
|
|
513
|
+
# The request ID must be a valid UUID with the exception that zero UUID is
|
|
514
|
+
# not supported (00000000-0000-0000-0000-000000000000).
|
|
515
|
+
class DeleteLbRouteExtensionRequest
|
|
516
|
+
include ::Google::Protobuf::MessageExts
|
|
517
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
518
|
+
end
|
|
519
|
+
|
|
520
|
+
# `ExtensionBinding` is a resource representing the attachment of an extension
|
|
521
|
+
# to a service.
|
|
522
|
+
# @!attribute [rw] name
|
|
523
|
+
# @return [::String]
|
|
524
|
+
# Identifier. Name of the `ExtensionBinding` resource in the following
|
|
525
|
+
# format:
|
|
526
|
+
# `projects/{project}/locations/{location}/extensionBindings/{extension_binding}`.
|
|
527
|
+
# @!attribute [r] create_time
|
|
528
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
529
|
+
# Output only. The timestamp when the resource was created.
|
|
530
|
+
# @!attribute [r] update_time
|
|
531
|
+
# @return [::Google::Protobuf::Timestamp]
|
|
532
|
+
# Output only. The timestamp when the resource was updated.
|
|
533
|
+
# @!attribute [rw] description
|
|
534
|
+
# @return [::String]
|
|
535
|
+
# Optional. A human-readable description of the resource.
|
|
536
|
+
# @!attribute [rw] labels
|
|
537
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
|
538
|
+
# Optional. Set of labels associated with the `ExtensionBinding` resource.
|
|
539
|
+
#
|
|
540
|
+
# The format must comply with [the following
|
|
541
|
+
# requirements](https://cloud.google.com/compute/docs/labeling-resources#requirements).
|
|
542
|
+
# @!attribute [rw] etag
|
|
543
|
+
# @return [::String]
|
|
544
|
+
# Optional. Etag of the resource.
|
|
545
|
+
# If provided, it must match the server's etag. If the provided etag
|
|
546
|
+
# does not match the server's etag, the request will fail with a 409 ABORTED
|
|
547
|
+
# error.
|
|
548
|
+
# @!attribute [rw] producer_extension
|
|
549
|
+
# @return [::String]
|
|
550
|
+
# Required. The name of the extension that this binding should attach to
|
|
551
|
+
# target resources.
|
|
552
|
+
#
|
|
553
|
+
# Format:
|
|
554
|
+
# For Google-provided extensions, specify the service endpoint (see
|
|
555
|
+
# [Model Armor
|
|
556
|
+
# integration](https://docs.cloud.google.com/model-armor/integrations))
|
|
557
|
+
# @!attribute [rw] target
|
|
558
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::Target]
|
|
559
|
+
# Required. Specifies a target to which this `ExtensionBinding` should be
|
|
560
|
+
# attached. The target can be either a single resource or a scope of
|
|
561
|
+
# resources.
|
|
562
|
+
# @!attribute [rw] match_conditions
|
|
563
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition>]
|
|
564
|
+
# Optional. A list of match conditions to match against the incoming
|
|
565
|
+
# request. The extension will be invoked if at least one condition matches
|
|
566
|
+
# the request, or if no match conditions are specified. Limited to 5
|
|
567
|
+
# conditions.
|
|
568
|
+
# @!attribute [rw] fail_open
|
|
569
|
+
# @return [::Boolean]
|
|
570
|
+
# Optional. Determines the behavior of the extension binding when the call to
|
|
571
|
+
# the extension fails or times out. Default value is `FALSE`.
|
|
572
|
+
#
|
|
573
|
+
# When set to `TRUE`, failures of the extension are silently ignored.
|
|
574
|
+
# @!attribute [rw] producer_metadata
|
|
575
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
|
576
|
+
# Optional. Additional metadata that should be passed to the attached
|
|
577
|
+
# extension with each request.
|
|
578
|
+
# @!attribute [rw] priority
|
|
579
|
+
# @return [::Integer]
|
|
580
|
+
# Optional. Priority of the extension binding. Lower numbers indicate higher
|
|
581
|
+
# priority. Priority of extension bindings are used to determine the order in
|
|
582
|
+
# which extension bindings are applied to a request.
|
|
583
|
+
class ExtensionBinding
|
|
584
|
+
include ::Google::Protobuf::MessageExts
|
|
585
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
586
|
+
|
|
587
|
+
# Specifies a list of targets to which this `ExtensionBinding` should attach.
|
|
588
|
+
# @!attribute [rw] resources
|
|
589
|
+
# @return [::Array<::String>]
|
|
590
|
+
# Optional. The reference to the target resource, to which this binding
|
|
591
|
+
# should attach. Exactly one of `resources` or `scope` must be set.
|
|
592
|
+
# @!attribute [rw] scope
|
|
593
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::Target::Scope]
|
|
594
|
+
# Optional. Specifies the scope of resources to which this binding should
|
|
595
|
+
# attach. Exactly one of `resources` or `scope` must be set.
|
|
596
|
+
class Target
|
|
597
|
+
include ::Google::Protobuf::MessageExts
|
|
598
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
599
|
+
|
|
600
|
+
# Specifies the scope of resources to which this binding should attach.
|
|
601
|
+
# @!attribute [rw] parent
|
|
602
|
+
# @return [::String]
|
|
603
|
+
# Required. Parent resource name specification, in the format:
|
|
604
|
+
# `projects/{project_number}`.
|
|
605
|
+
# @!attribute [rw] resource_types
|
|
606
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::Target::Scope::ResourceType>]
|
|
607
|
+
# Required. Type of the resource to which the binding should attach.
|
|
608
|
+
# Limited to 1 resource type.
|
|
609
|
+
class Scope
|
|
610
|
+
include ::Google::Protobuf::MessageExts
|
|
611
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
612
|
+
|
|
613
|
+
# Resource types that should be targeted by the binding.
|
|
614
|
+
module ResourceType
|
|
615
|
+
# Default value. Should not be used.
|
|
616
|
+
RESOURCE_TYPE_UNSPECIFIED = 0
|
|
617
|
+
|
|
618
|
+
# AI Application resources.
|
|
619
|
+
AI_APPLICATION = 1
|
|
620
|
+
|
|
621
|
+
# Agent Gateway resources.
|
|
622
|
+
AGENT_GATEWAY = 2
|
|
623
|
+
end
|
|
624
|
+
end
|
|
625
|
+
end
|
|
626
|
+
|
|
627
|
+
# Conditions to match against the incoming request.
|
|
628
|
+
# @!attribute [rw] to
|
|
629
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::To]
|
|
630
|
+
# Optional. Describes properties of a destination of a request. If
|
|
631
|
+
# specified, the extension will only be invoked on requests to destinations
|
|
632
|
+
# that match the specified criteria.
|
|
633
|
+
class MatchCondition
|
|
634
|
+
include ::Google::Protobuf::MessageExts
|
|
635
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
636
|
+
|
|
637
|
+
# Specifies matching logic for string values.
|
|
638
|
+
# @!attribute [rw] exact
|
|
639
|
+
# @return [::String]
|
|
640
|
+
# Optional. The input string must match exactly the string specified
|
|
641
|
+
# here.
|
|
642
|
+
#
|
|
643
|
+
# Examples:
|
|
644
|
+
#
|
|
645
|
+
# * ``abc`` only matches the value ``abc``.
|
|
646
|
+
#
|
|
647
|
+
# Note: The following fields are mutually exclusive: `exact`, `prefix`, `suffix`, `contains`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
648
|
+
# @!attribute [rw] prefix
|
|
649
|
+
# @return [::String]
|
|
650
|
+
# Optional. The input string must have the prefix specified here.
|
|
651
|
+
# Note: empty prefix is not allowed.
|
|
652
|
+
#
|
|
653
|
+
# Examples:
|
|
654
|
+
#
|
|
655
|
+
# * ``abc`` matches the value ``abc.xyz``
|
|
656
|
+
#
|
|
657
|
+
# Note: The following fields are mutually exclusive: `prefix`, `exact`, `suffix`, `contains`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
658
|
+
# @!attribute [rw] suffix
|
|
659
|
+
# @return [::String]
|
|
660
|
+
# Optional. The input string must have the suffix specified here.
|
|
661
|
+
# Note: empty prefix is not allowed, please use regex instead.
|
|
662
|
+
#
|
|
663
|
+
# Examples:
|
|
664
|
+
#
|
|
665
|
+
# * ``abc`` matches the value ``xyz.abc``
|
|
666
|
+
#
|
|
667
|
+
# Note: The following fields are mutually exclusive: `suffix`, `exact`, `prefix`, `contains`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
668
|
+
# @!attribute [rw] contains
|
|
669
|
+
# @return [::String]
|
|
670
|
+
# Optional. The input string must have the substring specified here.
|
|
671
|
+
# Note: empty contains match is not allowed, please use regex instead.
|
|
672
|
+
#
|
|
673
|
+
# Examples:
|
|
674
|
+
#
|
|
675
|
+
# * ``abc`` matches the value ``xyz.abc.def``
|
|
676
|
+
#
|
|
677
|
+
# Note: The following fields are mutually exclusive: `contains`, `exact`, `prefix`, `suffix`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
|
678
|
+
# @!attribute [rw] ignore_case
|
|
679
|
+
# @return [::Boolean]
|
|
680
|
+
# Optional. If true, indicates the exact/prefix/suffix/contains matching
|
|
681
|
+
# should be case insensitive. For example, the matcher ``data`` will
|
|
682
|
+
# match both input string ``Data`` and ``data`` if set to true.
|
|
683
|
+
class StringMatch
|
|
684
|
+
include ::Google::Protobuf::MessageExts
|
|
685
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
686
|
+
end
|
|
687
|
+
|
|
688
|
+
# Determines how an HTTP header should be matched.
|
|
689
|
+
# @!attribute [rw] name
|
|
690
|
+
# @return [::String]
|
|
691
|
+
# Required. Specifies the name of the header in the request.
|
|
692
|
+
# @!attribute [rw] value
|
|
693
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::StringMatch]
|
|
694
|
+
# Optional. Specifies how the header match will be performed.
|
|
695
|
+
class HeaderMatch
|
|
696
|
+
include ::Google::Protobuf::MessageExts
|
|
697
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
698
|
+
end
|
|
699
|
+
|
|
700
|
+
# Describes properties of one or more destinations of a request.
|
|
701
|
+
# @!attribute [rw] destination
|
|
702
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::To::Destination]
|
|
703
|
+
# Optional. Describes properties of destination of a request. Within a
|
|
704
|
+
# destination, the match follows AND semantics across fields and OR
|
|
705
|
+
# semantics within a field, i.e. a match occurs when ANY path matches AND
|
|
706
|
+
# ANY header matches and ANY method matches. At least one of destination
|
|
707
|
+
# or not_destination must be specified.
|
|
708
|
+
# @!attribute [rw] not_destination
|
|
709
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::To::Destination]
|
|
710
|
+
# Optional. Describes the negated properties of the request destination.
|
|
711
|
+
# Extension will not be invoked on requests that match the criteria
|
|
712
|
+
# specified in this field. At least one of destination or not_destination
|
|
713
|
+
# must be specified.
|
|
714
|
+
class To
|
|
715
|
+
include ::Google::Protobuf::MessageExts
|
|
716
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
717
|
+
|
|
718
|
+
# Describes properties of a single destination.
|
|
719
|
+
# @!attribute [rw] header_set
|
|
720
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::To::Destination::HeaderSet]
|
|
721
|
+
# Optional. A set of HTTP headers to match against. If not specified,
|
|
722
|
+
# requests with any headers are matched.
|
|
723
|
+
# @!attribute [rw] resources
|
|
724
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::StringMatch>]
|
|
725
|
+
# Optional. A list of non-empty strings whose value is matched against
|
|
726
|
+
# the resource to which a request is sent (e.g., an Agent in
|
|
727
|
+
# AiApplication). If not specified, any resource is allowed.
|
|
728
|
+
# If specified, a match occurs if any of the resources
|
|
729
|
+
# matches the resource value in the request. Limited to 5 resources.
|
|
730
|
+
# When matching against resources in the AgentRegistry, use the URNs
|
|
731
|
+
# of the registry resources.
|
|
732
|
+
# @!attribute [rw] hosts
|
|
733
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::StringMatch>]
|
|
734
|
+
# Optional. A list of HTTP Hosts to match against. Limited to 10 hosts.
|
|
735
|
+
# If not specified, any host is allowed. If specified, a match occurs
|
|
736
|
+
# if any of the hosts matches the host value in the request.
|
|
737
|
+
# @!attribute [rw] paths
|
|
738
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::StringMatch>]
|
|
739
|
+
# Optional. A list of paths to match against. Limited to 10
|
|
740
|
+
# paths. If not specified, any path is allowed.
|
|
741
|
+
#
|
|
742
|
+
# Note that this path match includes the query parameters. For gRPC
|
|
743
|
+
# services, this should be a fully-qualified name of the form
|
|
744
|
+
# /package.service/method.
|
|
745
|
+
class Destination
|
|
746
|
+
include ::Google::Protobuf::MessageExts
|
|
747
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
748
|
+
|
|
749
|
+
# Describes a set of HTTP headers to match against.
|
|
750
|
+
# @!attribute [rw] headers
|
|
751
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding::MatchCondition::HeaderMatch>]
|
|
752
|
+
# Required. A list of headers to match against in http header.
|
|
753
|
+
# If multiple header matches are provided, they will be evaluated as
|
|
754
|
+
# an AND, i.e. all header matches must match for the request to
|
|
755
|
+
# match.
|
|
756
|
+
class HeaderSet
|
|
757
|
+
include ::Google::Protobuf::MessageExts
|
|
758
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
759
|
+
end
|
|
760
|
+
end
|
|
761
|
+
end
|
|
762
|
+
end
|
|
763
|
+
|
|
764
|
+
# @!attribute [rw] key
|
|
765
|
+
# @return [::String]
|
|
766
|
+
# @!attribute [rw] value
|
|
767
|
+
# @return [::String]
|
|
768
|
+
class LabelsEntry
|
|
769
|
+
include ::Google::Protobuf::MessageExts
|
|
770
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
771
|
+
end
|
|
772
|
+
|
|
773
|
+
# @!attribute [rw] key
|
|
774
|
+
# @return [::String]
|
|
775
|
+
# @!attribute [rw] value
|
|
776
|
+
# @return [::String]
|
|
777
|
+
class ProducerMetadataEntry
|
|
778
|
+
include ::Google::Protobuf::MessageExts
|
|
779
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
780
|
+
end
|
|
781
|
+
end
|
|
782
|
+
|
|
783
|
+
# Request used with the `ListExtensionBindings` method.
|
|
784
|
+
# @!attribute [rw] parent
|
|
785
|
+
# @return [::String]
|
|
786
|
+
# Required. The project and location from which the `ExtensionBinding`
|
|
787
|
+
# resources should be listed, specified in the format
|
|
788
|
+
# `projects/{project}/locations/{location}`.
|
|
789
|
+
# @!attribute [rw] page_size
|
|
790
|
+
# @return [::Integer]
|
|
791
|
+
# Optional. Maximum number of `ExtensionBinding` resources to return per
|
|
792
|
+
# call.
|
|
793
|
+
# @!attribute [rw] page_token
|
|
794
|
+
# @return [::String]
|
|
795
|
+
# Optional. The value returned by the last `ListExtensionBindingsResponse`
|
|
796
|
+
# Indicates that this is a continuation of a prior `ListExtensionBindings`
|
|
797
|
+
# call, and that the system should return the next page of data.
|
|
798
|
+
class ListExtensionBindingsRequest
|
|
799
|
+
include ::Google::Protobuf::MessageExts
|
|
800
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
801
|
+
end
|
|
802
|
+
|
|
803
|
+
# Response returned by the `ListExtensionBindings` method.
|
|
804
|
+
# @!attribute [rw] extension_bindings
|
|
805
|
+
# @return [::Array<::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding>]
|
|
806
|
+
# List of `ExtensionBinding` resources.
|
|
807
|
+
# @!attribute [rw] next_page_token
|
|
808
|
+
# @return [::String]
|
|
809
|
+
# If there might be more results than those appearing in this response, then
|
|
810
|
+
# `next_page_token` is included. To get the next set of results, call this
|
|
811
|
+
# method again using the value of `next_page_token` as `page_token`.
|
|
812
|
+
# @!attribute [rw] unreachable
|
|
813
|
+
# @return [::Array<::String>]
|
|
814
|
+
# Unordered list. Unreachable resources. Populated when the request attempts
|
|
815
|
+
# to list all resources across all supported locations, while some locations
|
|
816
|
+
# are temporarily unavailable. The resource names are in the format
|
|
817
|
+
# `projects/{project}/locations/{location}/extensionBindings/{extension_binding}`.
|
|
818
|
+
class ListExtensionBindingsResponse
|
|
819
|
+
include ::Google::Protobuf::MessageExts
|
|
820
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
821
|
+
end
|
|
822
|
+
|
|
823
|
+
# Request used by the `GetExtensionBinding` method.
|
|
824
|
+
# @!attribute [rw] name
|
|
825
|
+
# @return [::String]
|
|
826
|
+
# Required. A name of the `ExtensionBinding` resource to get. Must be in the
|
|
827
|
+
# format
|
|
828
|
+
# `projects/{project}/locations/{location}/extensionBindings/{extension_binding}`.
|
|
829
|
+
class GetExtensionBindingRequest
|
|
830
|
+
include ::Google::Protobuf::MessageExts
|
|
831
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
832
|
+
end
|
|
833
|
+
|
|
834
|
+
# Request used by the `CreateExtensionBinding` method.
|
|
835
|
+
# @!attribute [rw] parent
|
|
836
|
+
# @return [::String]
|
|
837
|
+
# Required. The parent resource of the `ExtensionBinding` resource. Must be
|
|
838
|
+
# in the format `projects/{project}/locations/{location}`.
|
|
839
|
+
# @!attribute [rw] extension_binding_id
|
|
840
|
+
# @return [::String]
|
|
841
|
+
# Required. Short name of the `ExtensionBinding` resource to be created.
|
|
842
|
+
# @!attribute [rw] extension_binding
|
|
843
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding]
|
|
844
|
+
# Required. `ExtensionBinding` resource to be created.
|
|
845
|
+
class CreateExtensionBindingRequest
|
|
846
|
+
include ::Google::Protobuf::MessageExts
|
|
847
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
848
|
+
end
|
|
849
|
+
|
|
850
|
+
# Request used by the `UpdateExtensionBinding` method.
|
|
851
|
+
# @!attribute [rw] update_mask
|
|
852
|
+
# @return [::Google::Protobuf::FieldMask]
|
|
853
|
+
# Optional. Field mask is used to specify the fields to be overwritten in the
|
|
854
|
+
# `ExtensionBinding` resource by the update.
|
|
855
|
+
# The fields specified in the update_mask are relative to the resource, not
|
|
856
|
+
# the full request. A field will be overwritten if it is in the mask. If the
|
|
857
|
+
# user does not provide a mask then all fields will be overwritten.
|
|
858
|
+
# @!attribute [rw] extension_binding
|
|
859
|
+
# @return [::Google::Cloud::NetworkServices::V1beta1::ExtensionBinding]
|
|
860
|
+
# Required. Updated `ExtensionBinding` resource.
|
|
861
|
+
class UpdateExtensionBindingRequest
|
|
862
|
+
include ::Google::Protobuf::MessageExts
|
|
863
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
864
|
+
end
|
|
865
|
+
|
|
866
|
+
# Request used by the `DeleteExtensionBinding` method.
|
|
867
|
+
# @!attribute [rw] name
|
|
868
|
+
# @return [::String]
|
|
869
|
+
# Required. A name of the `ExtensionBinding` resource to delete. Must be in
|
|
870
|
+
# the format
|
|
871
|
+
# `projects/{project}/locations/{location}/extensionBindings/{extension_binding}`.
|
|
872
|
+
# @!attribute [rw] etag
|
|
873
|
+
# @return [::String]
|
|
874
|
+
# Optional. The etag of the ExtensionBinding to delete.
|
|
875
|
+
class DeleteExtensionBindingRequest
|
|
876
|
+
include ::Google::Protobuf::MessageExts
|
|
877
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
|
878
|
+
end
|
|
879
|
+
|
|
880
|
+
# The part of the request or response for which the extension is called.
|
|
881
|
+
module EventType
|
|
882
|
+
# Unspecified value. Do not use.
|
|
883
|
+
EVENT_TYPE_UNSPECIFIED = 0
|
|
884
|
+
|
|
885
|
+
# If included in `supported_events`,
|
|
886
|
+
# the extension is called when the HTTP request headers arrive.
|
|
887
|
+
REQUEST_HEADERS = 1
|
|
888
|
+
|
|
889
|
+
# If included in `supported_events`,
|
|
890
|
+
# the extension is called when the HTTP request body arrives.
|
|
891
|
+
REQUEST_BODY = 2
|
|
892
|
+
|
|
893
|
+
# If included in `supported_events`,
|
|
894
|
+
# the extension is called when the HTTP response headers arrive.
|
|
895
|
+
RESPONSE_HEADERS = 3
|
|
896
|
+
|
|
897
|
+
# If included in `supported_events`,
|
|
898
|
+
# the extension is called when the HTTP response body arrives.
|
|
899
|
+
RESPONSE_BODY = 4
|
|
900
|
+
|
|
901
|
+
# If included in `supported_events`,
|
|
902
|
+
# the extension is called when the HTTP request trailers arrives.
|
|
903
|
+
REQUEST_TRAILERS = 5
|
|
904
|
+
|
|
905
|
+
# If included in `supported_events`,
|
|
906
|
+
# the extension is called when the HTTP response trailers arrives.
|
|
907
|
+
RESPONSE_TRAILERS = 6
|
|
908
|
+
end
|
|
909
|
+
|
|
910
|
+
# Load balancing schemes supported by the `LbTrafficExtension` resource and
|
|
911
|
+
# `LbRouteExtension` resource.
|
|
912
|
+
# For more information, refer to [Choosing a load
|
|
913
|
+
# balancer](https://cloud.google.com/load-balancing/docs/backend-service).
|
|
914
|
+
module LoadBalancingScheme
|
|
915
|
+
# Default value. Do not use.
|
|
916
|
+
LOAD_BALANCING_SCHEME_UNSPECIFIED = 0
|
|
917
|
+
|
|
918
|
+
# Signifies that this is used for Internal HTTP(S) Load Balancing.
|
|
919
|
+
INTERNAL_MANAGED = 1
|
|
920
|
+
|
|
921
|
+
# Signifies that this is used for External Managed HTTP(S) Load
|
|
922
|
+
# Balancing.
|
|
923
|
+
EXTERNAL_MANAGED = 2
|
|
924
|
+
end
|
|
925
|
+
end
|
|
926
|
+
end
|
|
927
|
+
end
|
|
928
|
+
end
|