google-cloud-network_services-v1 2.1.0 → 2.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.
- checksums.yaml +4 -4
- data/lib/google/cloud/network_services/v1/network_services/client.rb +1188 -140
- data/lib/google/cloud/network_services/v1/network_services/paths.rb +175 -0
- data/lib/google/cloud/network_services/v1/network_services/rest/client.rb +1115 -137
- data/lib/google/cloud/network_services/v1/network_services/rest/service_stub.rb +613 -0
- data/lib/google/cloud/network_services/v1/version.rb +1 -1
- data/lib/google/cloud/networkservices/v1/common_pb.rb +2 -1
- data/lib/google/cloud/networkservices/v1/endpoint_policy_pb.rb +1 -1
- data/lib/google/cloud/networkservices/v1/gateway_pb.rb +4 -1
- data/lib/google/cloud/networkservices/v1/grpc_route_pb.rb +2 -1
- data/lib/google/cloud/networkservices/v1/http_route_pb.rb +3 -1
- data/lib/google/cloud/networkservices/v1/mesh_pb.rb +2 -1
- data/lib/google/cloud/networkservices/v1/network_services_pb.rb +4 -1
- data/lib/google/cloud/networkservices/v1/network_services_services_pb.rb +20 -0
- data/lib/google/cloud/networkservices/v1/route_view_pb.rb +52 -0
- data/lib/google/cloud/networkservices/v1/service_binding_pb.rb +4 -1
- data/lib/google/cloud/networkservices/v1/service_lb_policy_pb.rb +58 -0
- data/lib/google/cloud/networkservices/v1/tcp_route_pb.rb +3 -1
- data/lib/google/cloud/networkservices/v1/tls_route_pb.rb +3 -1
- data/proto_docs/google/cloud/networkservices/v1/common.rb +18 -1
- data/proto_docs/google/cloud/networkservices/v1/endpoint_policy.rb +12 -1
- data/proto_docs/google/cloud/networkservices/v1/gateway.rb +96 -8
- data/proto_docs/google/cloud/networkservices/v1/grpc_route.rb +51 -7
- data/proto_docs/google/cloud/networkservices/v1/http_route.rb +86 -1
- data/proto_docs/google/cloud/networkservices/v1/mesh.rb +16 -1
- data/proto_docs/google/cloud/networkservices/v1/route_view.rb +168 -0
- data/proto_docs/google/cloud/networkservices/v1/service_binding.rb +47 -10
- data/proto_docs/google/cloud/networkservices/v1/service_lb_policy.rb +217 -0
- data/proto_docs/google/cloud/networkservices/v1/tcp_route.rb +23 -7
- data/proto_docs/google/cloud/networkservices/v1/tls_route.rb +35 -6
- metadata +6 -2
@@ -6,11 +6,12 @@ require 'google/protobuf'
|
|
6
6
|
|
7
7
|
require 'google/api/field_behavior_pb'
|
8
8
|
require 'google/api/resource_pb'
|
9
|
+
require 'google/protobuf/duration_pb'
|
9
10
|
require 'google/protobuf/field_mask_pb'
|
10
11
|
require 'google/protobuf/timestamp_pb'
|
11
12
|
|
12
13
|
|
13
|
-
descriptor_data = "\n/google/cloud/networkservices/v1/tls_route.proto\x12\x1fgoogle.cloud.networkservices.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\
|
14
|
+
descriptor_data = "\n/google/cloud/networkservices/v1/tls_route.proto\x12\x1fgoogle.cloud.networkservices.v1\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1egoogle/protobuf/duration.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xd4\x08\n\x08TlsRoute\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x08\x12\x16\n\tself_link\x18\x08 \x01(\tB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x34\n\x0bupdate_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x18\n\x0b\x64\x65scription\x18\x04 \x01(\tB\x03\xe0\x41\x01\x12G\n\x05rules\x18\x05 \x03(\x0b\x32\x33.google.cloud.networkservices.v1.TlsRoute.RouteRuleB\x03\xe0\x41\x02\x12;\n\x06meshes\x18\x06 \x03(\tB+\xe0\x41\x01\xfa\x41%\n#networkservices.googleapis.com/Mesh\x12@\n\x08gateways\x18\x07 \x03(\tB.\xe0\x41\x01\xfa\x41(\n&networkservices.googleapis.com/Gateway\x12J\n\x06labels\x18\x0b \x03(\x0b\x32\x35.google.cloud.networkservices.v1.TlsRoute.LabelsEntryB\x03\xe0\x41\x01\x1a\xa3\x01\n\tRouteRule\x12J\n\x07matches\x18\x01 \x03(\x0b\x32\x34.google.cloud.networkservices.v1.TlsRoute.RouteMatchB\x03\xe0\x41\x02\x12J\n\x06\x61\x63tion\x18\x02 \x01(\x0b\x32\x35.google.cloud.networkservices.v1.TlsRoute.RouteActionB\x03\xe0\x41\x02\x1a\x36\n\nRouteMatch\x12\x15\n\x08sni_host\x18\x01 \x03(\tB\x03\xe0\x41\x01\x12\x11\n\x04\x61lpn\x18\x02 \x03(\tB\x03\xe0\x41\x01\x1a\x9a\x01\n\x0bRouteAction\x12U\n\x0c\x64\x65stinations\x18\x01 \x03(\x0b\x32:.google.cloud.networkservices.v1.TlsRoute.RouteDestinationB\x03\xe0\x41\x02\x12\x34\n\x0cidle_timeout\x18\x04 \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\x1al\n\x10RouteDestination\x12\x43\n\x0cservice_name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%compute.googleapis.com/BackendService\x12\x13\n\x06weight\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01:k\xea\x41h\n\'networkservices.googleapis.com/TlsRoute\x12=projects/{project}/locations/{location}/tlsRoutes/{tls_route}\"\xa3\x01\n\x14ListTlsRoutesRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'networkservices.googleapis.com/TlsRoute\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12#\n\x16return_partial_success\x18\x04 \x01(\x08\x42\x03\xe0\x41\x01\"\x84\x01\n\x15ListTlsRoutesResponse\x12=\n\ntls_routes\x18\x01 \x03(\x0b\x32).google.cloud.networkservices.v1.TlsRoute\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x13\n\x0bunreachable\x18\x03 \x03(\t\"S\n\x12GetTlsRouteRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'networkservices.googleapis.com/TlsRoute\"\xb6\x01\n\x15\x43reateTlsRouteRequest\x12?\n\x06parent\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\x12\'networkservices.googleapis.com/TlsRoute\x12\x19\n\x0ctls_route_id\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x41\n\ttls_route\x18\x03 \x01(\x0b\x32).google.cloud.networkservices.v1.TlsRouteB\x03\xe0\x41\x02\"\x90\x01\n\x15UpdateTlsRouteRequest\x12\x34\n\x0bupdate_mask\x18\x01 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x01\x12\x41\n\ttls_route\x18\x02 \x01(\x0b\x32).google.cloud.networkservices.v1.TlsRouteB\x03\xe0\x41\x02\"V\n\x15\x44\x65leteTlsRouteRequest\x12=\n\x04name\x18\x01 \x01(\tB/\xe0\x41\x02\xfa\x41)\n\'networkservices.googleapis.com/TlsRouteB\xee\x01\n#com.google.cloud.networkservices.v1B\rTlsRouteProtoP\x01ZMcloud.google.com/go/networkservices/apiv1/networkservicespb;networkservicespb\xaa\x02\x1fGoogle.Cloud.NetworkServices.V1\xca\x02\x1fGoogle\\Cloud\\NetworkServices\\V1\xea\x02\"Google::Cloud::NetworkServices::V1b\x06proto3"
|
14
15
|
|
15
16
|
pool = Google::Protobuf::DescriptorPool.generated_pool
|
16
17
|
|
@@ -26,6 +27,7 @@ rescue TypeError
|
|
26
27
|
warn "Warning: Protobuf detected an import path issue while loading generated file #{__FILE__}"
|
27
28
|
imports = [
|
28
29
|
["google.protobuf.Timestamp", "google/protobuf/timestamp.proto"],
|
30
|
+
["google.protobuf.Duration", "google/protobuf/duration.proto"],
|
29
31
|
["google.protobuf.FieldMask", "google/protobuf/field_mask.proto"],
|
30
32
|
]
|
31
33
|
imports.each do |type_name, expected_filename|
|
@@ -101,7 +101,7 @@ module Google
|
|
101
101
|
#
|
102
102
|
# If there is more than one best match, (for example, if a
|
103
103
|
# config P4 with selector <A:1,D:1> exists and if a client with
|
104
|
-
# label <A:1,B:1,D:1> connects),
|
104
|
+
# label <A:1,B:1,D:1> connects), pick up the one with older creation time.
|
105
105
|
# @!attribute [rw] metadata_labels
|
106
106
|
# @return [::Array<::Google::Cloud::NetworkServices::V1::EndpointMatcher::MetadataLabelMatcher::MetadataLabels>]
|
107
107
|
# The list of label value pairs that must match labels in the
|
@@ -141,6 +141,23 @@ module Google
|
|
141
141
|
end
|
142
142
|
end
|
143
143
|
end
|
144
|
+
|
145
|
+
# EnvoyHeader configuration for Mesh and Gateway
|
146
|
+
module EnvoyHeaders
|
147
|
+
# Defaults to NONE.
|
148
|
+
ENVOY_HEADERS_UNSPECIFIED = 0
|
149
|
+
|
150
|
+
# Suppress envoy debug headers.
|
151
|
+
NONE = 1
|
152
|
+
|
153
|
+
# Envoy will insert default internal debug headers into upstream requests:
|
154
|
+
# x-envoy-attempt-count
|
155
|
+
# x-envoy-is-timeout-retry
|
156
|
+
# x-envoy-expected-rq-timeout-ms
|
157
|
+
# x-envoy-original-path
|
158
|
+
# x-envoy-upstream-stream-duration-ms
|
159
|
+
DEBUG_HEADERS = 2
|
160
|
+
end
|
144
161
|
end
|
145
162
|
end
|
146
163
|
end
|
@@ -27,7 +27,7 @@ module Google
|
|
27
27
|
# an all endpoints that serve on port 8080.
|
28
28
|
# @!attribute [rw] name
|
29
29
|
# @return [::String]
|
30
|
-
#
|
30
|
+
# Identifier. Name of the EndpointPolicy resource. It matches pattern
|
31
31
|
# `projects/{project}/locations/global/endpointPolicies/{endpoint_policy}`.
|
32
32
|
# @!attribute [r] create_time
|
33
33
|
# @return [::Google::Protobuf::Timestamp]
|
@@ -117,6 +117,11 @@ module Google
|
|
117
117
|
# Indicates that this is a continuation of a prior
|
118
118
|
# `ListEndpointPolicies` call, and that the system should return the
|
119
119
|
# next page of data.
|
120
|
+
# @!attribute [rw] return_partial_success
|
121
|
+
# @return [::Boolean]
|
122
|
+
# Optional. If true, allow partial responses for multi-regional Aggregated
|
123
|
+
# List requests. Otherwise if one of the locations is down or unreachable,
|
124
|
+
# the Aggregated List request will fail.
|
120
125
|
class ListEndpointPoliciesRequest
|
121
126
|
include ::Google::Protobuf::MessageExts
|
122
127
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -131,6 +136,12 @@ module Google
|
|
131
136
|
# If there might be more results than those appearing in this response, then
|
132
137
|
# `next_page_token` is included. To get the next set of results, call this
|
133
138
|
# method again using the value of `next_page_token` as `page_token`.
|
139
|
+
# @!attribute [rw] unreachable
|
140
|
+
# @return [::Array<::String>]
|
141
|
+
# Unreachable resources. Populated when the request opts into
|
142
|
+
# {::Google::Cloud::NetworkServices::V1::ListEndpointPoliciesRequest#return_partial_success return_partial_success}
|
143
|
+
# and reading across collections e.g. when
|
144
|
+
# attempting to list all resources across all supported locations.
|
134
145
|
class ListEndpointPoliciesResponse
|
135
146
|
include ::Google::Protobuf::MessageExts
|
136
147
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -27,7 +27,7 @@ module Google
|
|
27
27
|
# dictate how requests should be routed by this Gateway.
|
28
28
|
# @!attribute [rw] name
|
29
29
|
# @return [::String]
|
30
|
-
#
|
30
|
+
# Identifier. Name of the Gateway resource. It matches pattern
|
31
31
|
# `projects/*/locations/*/gateways/<gateway_name>`.
|
32
32
|
# @!attribute [r] self_link
|
33
33
|
# @return [::String]
|
@@ -49,17 +49,27 @@ module Google
|
|
49
49
|
# @return [::Google::Cloud::NetworkServices::V1::Gateway::Type]
|
50
50
|
# Immutable. The type of the customer managed gateway.
|
51
51
|
# This field is required. If unspecified, an error is returned.
|
52
|
+
# @!attribute [rw] addresses
|
53
|
+
# @return [::Array<::String>]
|
54
|
+
# Optional. Zero or one IPv4 or IPv6 address on which the Gateway will
|
55
|
+
# receive the traffic. When no address is provided, an IP from the subnetwork
|
56
|
+
# is allocated
|
57
|
+
#
|
58
|
+
# This field only applies to gateways of type 'SECURE_WEB_GATEWAY'.
|
59
|
+
# Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6.
|
52
60
|
# @!attribute [rw] ports
|
53
61
|
# @return [::Array<::Integer>]
|
54
|
-
# Required. One or more
|
55
|
-
# proxy binds to the
|
56
|
-
#
|
62
|
+
# Required. One or more port numbers (1-65535), on which the Gateway will
|
63
|
+
# receive traffic. The proxy binds to the specified ports.
|
64
|
+
# Gateways of type 'SECURE_WEB_GATEWAY' are limited to 1 port.
|
65
|
+
# Gateways of type 'OPEN_MESH' listen on 0.0.0.0 for IPv4 and :: for IPv6 and
|
66
|
+
# support multiple ports.
|
57
67
|
# @!attribute [rw] scope
|
58
68
|
# @return [::String]
|
59
|
-
#
|
60
|
-
#
|
61
|
-
#
|
62
|
-
#
|
69
|
+
# Optional. Scope determines how configuration across multiple Gateway
|
70
|
+
# instances are merged. The configuration for multiple Gateway instances with
|
71
|
+
# the same scope will be merged as presented as a single configuration to the
|
72
|
+
# proxy/load balancer.
|
63
73
|
#
|
64
74
|
# Max length 64 characters.
|
65
75
|
# Scope should start with a letter and can only have letters, numbers,
|
@@ -68,6 +78,49 @@ module Google
|
|
68
78
|
# @return [::String]
|
69
79
|
# Optional. A fully-qualified ServerTLSPolicy URL reference. Specifies how
|
70
80
|
# TLS traffic is terminated. If empty, TLS termination is disabled.
|
81
|
+
# @!attribute [rw] certificate_urls
|
82
|
+
# @return [::Array<::String>]
|
83
|
+
# Optional. A fully-qualified Certificates URL reference. The proxy presents
|
84
|
+
# a Certificate (selected based on SNI) when establishing a TLS connection.
|
85
|
+
# This feature only applies to gateways of type 'SECURE_WEB_GATEWAY'.
|
86
|
+
# @!attribute [rw] gateway_security_policy
|
87
|
+
# @return [::String]
|
88
|
+
# Optional. A fully-qualified GatewaySecurityPolicy URL reference.
|
89
|
+
# Defines how a server should apply security policy to inbound
|
90
|
+
# (VM to Proxy) initiated connections.
|
91
|
+
#
|
92
|
+
# For example:
|
93
|
+
# `projects/*/locations/*/gatewaySecurityPolicies/swg-policy`.
|
94
|
+
#
|
95
|
+
# This policy is specific to gateways of type 'SECURE_WEB_GATEWAY'.
|
96
|
+
# @!attribute [rw] network
|
97
|
+
# @return [::String]
|
98
|
+
# Optional. The relative resource name identifying the VPC network that is
|
99
|
+
# using this configuration. For example:
|
100
|
+
# `projects/*/global/networks/network-1`.
|
101
|
+
#
|
102
|
+
# Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY'.
|
103
|
+
# @!attribute [rw] subnetwork
|
104
|
+
# @return [::String]
|
105
|
+
# Optional. The relative resource name identifying the subnetwork in which
|
106
|
+
# this SWG is allocated. For example:
|
107
|
+
# `projects/*/regions/us-central1/subnetworks/network-1`
|
108
|
+
#
|
109
|
+
# Currently, this field is specific to gateways of type 'SECURE_WEB_GATEWAY".
|
110
|
+
# @!attribute [rw] ip_version
|
111
|
+
# @return [::Google::Cloud::NetworkServices::V1::Gateway::IpVersion]
|
112
|
+
# Optional. The IP Version that will be used by this gateway. Valid options
|
113
|
+
# are IPV4 or IPV6. Default is IPV4.
|
114
|
+
# @!attribute [rw] envoy_headers
|
115
|
+
# @return [::Google::Cloud::NetworkServices::V1::EnvoyHeaders]
|
116
|
+
# Optional. Determines if envoy will insert internal debug headers into
|
117
|
+
# upstream requests. Other Envoy headers may still be injected. By default,
|
118
|
+
# envoy will not insert any debug headers.
|
119
|
+
# @!attribute [rw] routing_mode
|
120
|
+
# @return [::Google::Cloud::NetworkServices::V1::Gateway::RoutingMode]
|
121
|
+
# Optional. The routing mode of the Gateway.
|
122
|
+
# This field is configurable only for gateways of type SECURE_WEB_GATEWAY.
|
123
|
+
# This field is required for gateways of type SECURE_WEB_GATEWAY.
|
71
124
|
class Gateway
|
72
125
|
include ::Google::Protobuf::MessageExts
|
73
126
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -96,6 +149,38 @@ module Google
|
|
96
149
|
# The type of the customer managed gateway is SecureWebGateway (SWG).
|
97
150
|
SECURE_WEB_GATEWAY = 2
|
98
151
|
end
|
152
|
+
|
153
|
+
# The types of IP version for the gateway.
|
154
|
+
# Possible values are:
|
155
|
+
# * IPV4
|
156
|
+
# * IPV6
|
157
|
+
module IpVersion
|
158
|
+
# The type when IP version is not specified. Defaults to IPV4.
|
159
|
+
IP_VERSION_UNSPECIFIED = 0
|
160
|
+
|
161
|
+
# The type for IP version 4.
|
162
|
+
IPV4 = 1
|
163
|
+
|
164
|
+
# The type for IP version 6.
|
165
|
+
IPV6 = 2
|
166
|
+
end
|
167
|
+
|
168
|
+
# The routing mode of the Gateway, to determine how the Gateway routes
|
169
|
+
# traffic. Today, this field only applies to Gateways of type
|
170
|
+
# SECURE_WEB_GATEWAY. Possible values are:
|
171
|
+
# * EXPLICIT_ROUTING_MODE
|
172
|
+
# * NEXT_HOP_ROUTING_MODE
|
173
|
+
module RoutingMode
|
174
|
+
# The routing mode is explicit; clients are configured to send
|
175
|
+
# traffic through the gateway. This is the default routing mode.
|
176
|
+
EXPLICIT_ROUTING_MODE = 0
|
177
|
+
|
178
|
+
# The routing mode is next-hop. Clients are unaware of the gateway,
|
179
|
+
# and a route (advanced route or other route type)
|
180
|
+
# can be configured to direct traffic from client to gateway.
|
181
|
+
# The gateway then acts as a next-hop to the destination.
|
182
|
+
NEXT_HOP_ROUTING_MODE = 1
|
183
|
+
end
|
99
184
|
end
|
100
185
|
|
101
186
|
# Request used with the ListGateways method.
|
@@ -125,6 +210,9 @@ module Google
|
|
125
210
|
# If there might be more results than those appearing in this response, then
|
126
211
|
# `next_page_token` is included. To get the next set of results, call this
|
127
212
|
# method again using the value of `next_page_token` as `page_token`.
|
213
|
+
# @!attribute [rw] unreachable
|
214
|
+
# @return [::Array<::String>]
|
215
|
+
# Locations that could not be reached.
|
128
216
|
class ListGatewaysResponse
|
129
217
|
include ::Google::Protobuf::MessageExts
|
130
218
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -25,7 +25,7 @@ module Google
|
|
25
25
|
# or Gateway resource is routed.
|
26
26
|
# @!attribute [rw] name
|
27
27
|
# @return [::String]
|
28
|
-
#
|
28
|
+
# Identifier. Name of the GrpcRoute resource. It matches pattern
|
29
29
|
# `projects/*/locations/global/grpcRoutes/<grpc_route_name>`
|
30
30
|
# @!attribute [r] self_link
|
31
31
|
# @return [::String]
|
@@ -256,7 +256,30 @@ module Google
|
|
256
256
|
end
|
257
257
|
end
|
258
258
|
|
259
|
+
# The specification for cookie-based stateful session affinity where the
|
260
|
+
# date plane supplies a “session cookie” with the name "GSSA" which encodes
|
261
|
+
# a specific destination host and each request containing that cookie will
|
262
|
+
# be directed to that host as long as the destination host remains up and
|
263
|
+
# healthy.
|
264
|
+
#
|
265
|
+
# The gRPC proxyless mesh library or sidecar proxy will manage the session
|
266
|
+
# cookie but the client application code is responsible for copying the
|
267
|
+
# cookie from each RPC in the session to the next.
|
268
|
+
# @!attribute [rw] cookie_ttl
|
269
|
+
# @return [::Google::Protobuf::Duration]
|
270
|
+
# Required. The cookie TTL value for the Set-Cookie header generated by the
|
271
|
+
# data plane. The lifetime of the cookie may be set to a value from 0 to
|
272
|
+
# 86400 seconds (24 hours) inclusive.
|
273
|
+
#
|
274
|
+
# Set this to 0s to use a session cookie and disable cookie expiration.
|
275
|
+
class StatefulSessionAffinityPolicy
|
276
|
+
include ::Google::Protobuf::MessageExts
|
277
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
278
|
+
end
|
279
|
+
|
259
280
|
# The specifications for retries.
|
281
|
+
# Specifies one or more conditions for which this retry rule applies. Valid
|
282
|
+
# values are:
|
260
283
|
# @!attribute [rw] retry_conditions
|
261
284
|
# @return [::Array<::String>]
|
262
285
|
# - connect-failure: Router will retry on failures connecting to Backend
|
@@ -292,12 +315,12 @@ module Google
|
|
292
315
|
# Backend Service(s) according to the weight field of these destinations.
|
293
316
|
# @!attribute [rw] fault_injection_policy
|
294
317
|
# @return [::Google::Cloud::NetworkServices::V1::GrpcRoute::FaultInjectionPolicy]
|
295
|
-
# Optional. The specification for fault injection introduced into traffic
|
296
|
-
# resiliency of clients to destination service failure. As part
|
297
|
-
# injection, when clients send requests to a destination, delays
|
298
|
-
# introduced on a percentage of requests before sending those
|
299
|
-
# the destination service. Similarly requests from clients can
|
300
|
-
# by for a percentage of requests.
|
318
|
+
# Optional. The specification for fault injection introduced into traffic
|
319
|
+
# to test the resiliency of clients to destination service failure. As part
|
320
|
+
# of fault injection, when clients send requests to a destination, delays
|
321
|
+
# can be introduced on a percentage of requests before sending those
|
322
|
+
# requests to the destination service. Similarly requests from clients can
|
323
|
+
# be aborted by for a percentage of requests.
|
301
324
|
#
|
302
325
|
# timeout and retry_policy will be ignored by clients that are configured
|
303
326
|
# with a fault_injection_policy
|
@@ -310,6 +333,16 @@ module Google
|
|
310
333
|
# @!attribute [rw] retry_policy
|
311
334
|
# @return [::Google::Cloud::NetworkServices::V1::GrpcRoute::RetryPolicy]
|
312
335
|
# Optional. Specifies the retry policy associated with this route.
|
336
|
+
# @!attribute [rw] stateful_session_affinity
|
337
|
+
# @return [::Google::Cloud::NetworkServices::V1::GrpcRoute::StatefulSessionAffinityPolicy]
|
338
|
+
# Optional. Specifies cookie-based stateful session affinity.
|
339
|
+
# @!attribute [rw] idle_timeout
|
340
|
+
# @return [::Google::Protobuf::Duration]
|
341
|
+
# Optional. Specifies the idle timeout for the selected route. The idle
|
342
|
+
# timeout is defined as the period in which there are no bytes sent or
|
343
|
+
# received on either the upstream or downstream connection. If not set, the
|
344
|
+
# default idle timeout is 1 hour. If set to 0s, the timeout will be
|
345
|
+
# disabled.
|
313
346
|
class RouteAction
|
314
347
|
include ::Google::Protobuf::MessageExts
|
315
348
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -354,6 +387,11 @@ module Google
|
|
354
387
|
# The value returned by the last `ListGrpcRoutesResponse`
|
355
388
|
# Indicates that this is a continuation of a prior `ListGrpcRoutes` call,
|
356
389
|
# and that the system should return the next page of data.
|
390
|
+
# @!attribute [rw] return_partial_success
|
391
|
+
# @return [::Boolean]
|
392
|
+
# Optional. If true, allow partial responses for multi-regional Aggregated
|
393
|
+
# List requests. Otherwise if one of the locations is down or unreachable,
|
394
|
+
# the Aggregated List request will fail.
|
357
395
|
class ListGrpcRoutesRequest
|
358
396
|
include ::Google::Protobuf::MessageExts
|
359
397
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -368,6 +406,12 @@ module Google
|
|
368
406
|
# If there might be more results than those appearing in this response, then
|
369
407
|
# `next_page_token` is included. To get the next set of results, call this
|
370
408
|
# method again using the value of `next_page_token` as `page_token`.
|
409
|
+
# @!attribute [rw] unreachable
|
410
|
+
# @return [::Array<::String>]
|
411
|
+
# Unreachable resources. Populated when the request opts into
|
412
|
+
# {::Google::Cloud::NetworkServices::V1::ListGrpcRoutesRequest#return_partial_success return_partial_success}
|
413
|
+
# and reading across collections e.g. when attempting to list all resources
|
414
|
+
# across all supported locations.
|
371
415
|
class ListGrpcRoutesResponse
|
372
416
|
include ::Google::Protobuf::MessageExts
|
373
417
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -25,7 +25,7 @@ module Google
|
|
25
25
|
# Mesh or Gateway resource.
|
26
26
|
# @!attribute [rw] name
|
27
27
|
# @return [::String]
|
28
|
-
#
|
28
|
+
# Identifier. Name of the HttpRoute resource. It matches pattern
|
29
29
|
# `projects/*/locations/global/httpRoutes/http_route_name>`.
|
30
30
|
# @!attribute [r] self_link
|
31
31
|
# @return [::String]
|
@@ -258,6 +258,19 @@ module Google
|
|
258
258
|
#
|
259
259
|
# If weights are unspecified for all services, then, traffic is distributed
|
260
260
|
# in equal proportions to all of them.
|
261
|
+
# @!attribute [rw] request_header_modifier
|
262
|
+
# @return [::Google::Cloud::NetworkServices::V1::HttpRoute::HeaderModifier]
|
263
|
+
# Optional. The specification for modifying the headers of a matching
|
264
|
+
# request prior to delivery of the request to the destination. If
|
265
|
+
# HeaderModifiers are set on both the Destination and the RouteAction, they
|
266
|
+
# will be merged. Conflicts between the two will not be resolved on the
|
267
|
+
# configuration.
|
268
|
+
# @!attribute [rw] response_header_modifier
|
269
|
+
# @return [::Google::Cloud::NetworkServices::V1::HttpRoute::HeaderModifier]
|
270
|
+
# Optional. The specification for modifying the headers of a response prior
|
271
|
+
# to sending the response back to the client. If HeaderModifiers are set on
|
272
|
+
# both the Destination and the RouteAction, they will be merged. Conflicts
|
273
|
+
# between the two will not be resolved on the configuration.
|
261
274
|
class Destination
|
262
275
|
include ::Google::Protobuf::MessageExts
|
263
276
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -376,6 +389,27 @@ module Google
|
|
376
389
|
end
|
377
390
|
end
|
378
391
|
|
392
|
+
# The specification for cookie-based stateful session affinity where the
|
393
|
+
# date plane supplies a “session cookie” with the name "GSSA" which encodes
|
394
|
+
# a specific destination host and each request containing that cookie will
|
395
|
+
# be directed to that host as long as the destination host remains up and
|
396
|
+
# healthy.
|
397
|
+
#
|
398
|
+
# The gRPC proxyless mesh library or sidecar proxy will manage the session
|
399
|
+
# cookie but the client application code is responsible for copying the
|
400
|
+
# cookie from each RPC in the session to the next.
|
401
|
+
# @!attribute [rw] cookie_ttl
|
402
|
+
# @return [::Google::Protobuf::Duration]
|
403
|
+
# Required. The cookie TTL value for the Set-Cookie header generated by
|
404
|
+
# the data plane. The lifetime of the cookie may be set to a value from 0
|
405
|
+
# to 86400 seconds (24 hours) inclusive.
|
406
|
+
#
|
407
|
+
# Set this to 0s to use a session cookie and disable cookie expiration.
|
408
|
+
class StatefulSessionAffinityPolicy
|
409
|
+
include ::Google::Protobuf::MessageExts
|
410
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
411
|
+
end
|
412
|
+
|
379
413
|
# The specification for modifying HTTP header in HTTP request and HTTP
|
380
414
|
# response.
|
381
415
|
# @!attribute [rw] set
|
@@ -468,10 +502,15 @@ module Google
|
|
468
502
|
# destination service. The proxy does not wait for responses from the
|
469
503
|
# shadow service. Prior to sending traffic to the shadow service, the
|
470
504
|
# host/authority header is suffixed with -shadow.
|
505
|
+
# Mirroring is currently not supported for Cloud Run destinations.
|
471
506
|
# @!attribute [rw] destination
|
472
507
|
# @return [::Google::Cloud::NetworkServices::V1::HttpRoute::Destination]
|
473
508
|
# The destination the requests will be mirrored to. The weight of the
|
474
509
|
# destination will be ignored.
|
510
|
+
# @!attribute [rw] mirror_percent
|
511
|
+
# @return [::Float]
|
512
|
+
# Optional. The percentage of requests to get mirrored to the desired
|
513
|
+
# destination.
|
475
514
|
class RequestMirrorPolicy
|
476
515
|
include ::Google::Protobuf::MessageExts
|
477
516
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -517,6 +556,27 @@ module Google
|
|
517
556
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
518
557
|
end
|
519
558
|
|
559
|
+
# Static HTTP response object to be returned.
|
560
|
+
# @!attribute [rw] string_body
|
561
|
+
# @return [::String]
|
562
|
+
# Optional. Response body as a string. Maximum body length is 1024
|
563
|
+
# characters.
|
564
|
+
#
|
565
|
+
# Note: The following fields are mutually exclusive: `string_body`, `bytes_body`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
566
|
+
# @!attribute [rw] bytes_body
|
567
|
+
# @return [::String]
|
568
|
+
# Optional. Response body as bytes. Maximum body size is 4096B.
|
569
|
+
#
|
570
|
+
# Note: The following fields are mutually exclusive: `bytes_body`, `string_body`. If a field in that set is populated, all other fields in the set will automatically be cleared.
|
571
|
+
# @!attribute [rw] status
|
572
|
+
# @return [::Integer]
|
573
|
+
# Required. Status to return as part of HTTP Response. Must be a positive
|
574
|
+
# integer.
|
575
|
+
class HttpDirectResponse
|
576
|
+
include ::Google::Protobuf::MessageExts
|
577
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
578
|
+
end
|
579
|
+
|
520
580
|
# The specifications for routing traffic and applying associated policies.
|
521
581
|
# @!attribute [rw] destinations
|
522
582
|
# @return [::Array<::Google::Cloud::NetworkServices::V1::HttpRoute::Destination>]
|
@@ -569,6 +629,20 @@ module Google
|
|
569
629
|
# @!attribute [rw] cors_policy
|
570
630
|
# @return [::Google::Cloud::NetworkServices::V1::HttpRoute::CorsPolicy]
|
571
631
|
# The specification for allowing client side cross-origin requests.
|
632
|
+
# @!attribute [rw] stateful_session_affinity
|
633
|
+
# @return [::Google::Cloud::NetworkServices::V1::HttpRoute::StatefulSessionAffinityPolicy]
|
634
|
+
# Optional. Specifies cookie-based stateful session affinity.
|
635
|
+
# @!attribute [rw] direct_response
|
636
|
+
# @return [::Google::Cloud::NetworkServices::V1::HttpRoute::HttpDirectResponse]
|
637
|
+
# Optional. Static HTTP Response object to be returned regardless of the
|
638
|
+
# request.
|
639
|
+
# @!attribute [rw] idle_timeout
|
640
|
+
# @return [::Google::Protobuf::Duration]
|
641
|
+
# Optional. Specifies the idle timeout for the selected route. The idle
|
642
|
+
# timeout is defined as the period in which there are no bytes sent or
|
643
|
+
# received on either the upstream or downstream connection. If not set, the
|
644
|
+
# default idle timeout is 1 hour. If set to 0s, the timeout will be
|
645
|
+
# disabled.
|
572
646
|
class RouteAction
|
573
647
|
include ::Google::Protobuf::MessageExts
|
574
648
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -618,6 +692,11 @@ module Google
|
|
618
692
|
# The value returned by the last `ListHttpRoutesResponse`
|
619
693
|
# Indicates that this is a continuation of a prior `ListHttpRoutes` call,
|
620
694
|
# and that the system should return the next page of data.
|
695
|
+
# @!attribute [rw] return_partial_success
|
696
|
+
# @return [::Boolean]
|
697
|
+
# Optional. If true, allow partial responses for multi-regional Aggregated
|
698
|
+
# List requests. Otherwise if one of the locations is down or unreachable,
|
699
|
+
# the Aggregated List request will fail.
|
621
700
|
class ListHttpRoutesRequest
|
622
701
|
include ::Google::Protobuf::MessageExts
|
623
702
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -632,6 +711,12 @@ module Google
|
|
632
711
|
# If there might be more results than those appearing in this response, then
|
633
712
|
# `next_page_token` is included. To get the next set of results, call this
|
634
713
|
# method again using the value of `next_page_token` as `page_token`.
|
714
|
+
# @!attribute [rw] unreachable
|
715
|
+
# @return [::Array<::String>]
|
716
|
+
# Unreachable resources. Populated when the request opts into
|
717
|
+
# {::Google::Cloud::NetworkServices::V1::ListHttpRoutesRequest#return_partial_success return_partial_success}
|
718
|
+
# and reading across collections e.g. when attempting to list all resources
|
719
|
+
# across all supported locations.
|
635
720
|
class ListHttpRoutesResponse
|
636
721
|
include ::Google::Protobuf::MessageExts
|
637
722
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -26,7 +26,7 @@ module Google
|
|
26
26
|
# requests are routed within this logical mesh boundary.
|
27
27
|
# @!attribute [rw] name
|
28
28
|
# @return [::String]
|
29
|
-
#
|
29
|
+
# Identifier. Name of the Mesh resource. It matches pattern
|
30
30
|
# `projects/*/locations/global/meshes/<mesh_name>`.
|
31
31
|
# @!attribute [r] self_link
|
32
32
|
# @return [::String]
|
@@ -52,6 +52,11 @@ module Google
|
|
52
52
|
# regardless of its actual ip:port destination. If unset, a port '15001' is
|
53
53
|
# used as the interception port. This is applicable only for sidecar proxy
|
54
54
|
# deployments.
|
55
|
+
# @!attribute [rw] envoy_headers
|
56
|
+
# @return [::Google::Cloud::NetworkServices::V1::EnvoyHeaders]
|
57
|
+
# Optional. Determines if envoy will insert internal debug headers into
|
58
|
+
# upstream requests. Other Envoy headers may still be injected. By default,
|
59
|
+
# envoy will not insert any debug headers.
|
55
60
|
class Mesh
|
56
61
|
include ::Google::Protobuf::MessageExts
|
57
62
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -79,6 +84,11 @@ module Google
|
|
79
84
|
# The value returned by the last `ListMeshesResponse`
|
80
85
|
# Indicates that this is a continuation of a prior `ListMeshes` call,
|
81
86
|
# and that the system should return the next page of data.
|
87
|
+
# @!attribute [rw] return_partial_success
|
88
|
+
# @return [::Boolean]
|
89
|
+
# Optional. If true, allow partial responses for multi-regional Aggregated
|
90
|
+
# List requests. Otherwise if one of the locations is down or unreachable,
|
91
|
+
# the Aggregated List request will fail.
|
82
92
|
class ListMeshesRequest
|
83
93
|
include ::Google::Protobuf::MessageExts
|
84
94
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -93,6 +103,11 @@ module Google
|
|
93
103
|
# If there might be more results than those appearing in this response, then
|
94
104
|
# `next_page_token` is included. To get the next set of results, call this
|
95
105
|
# method again using the value of `next_page_token` as `page_token`.
|
106
|
+
# @!attribute [rw] unreachable
|
107
|
+
# @return [::Array<::String>]
|
108
|
+
# Unreachable resources. Populated when the request opts into
|
109
|
+
# `return_partial_success` and reading across collections e.g. when
|
110
|
+
# attempting to list all resources across all supported locations.
|
96
111
|
class ListMeshesResponse
|
97
112
|
include ::Google::Protobuf::MessageExts
|
98
113
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|