google-cloud-network_services-v1 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/network_services/v1/bindings_override.rb +279 -0
  6. data/lib/google/cloud/network_services/v1/dep_service/client.rb +1503 -0
  7. data/lib/google/cloud/network_services/v1/dep_service/credentials.rb +47 -0
  8. data/lib/google/cloud/network_services/v1/dep_service/operations.rb +809 -0
  9. data/lib/google/cloud/network_services/v1/dep_service/paths.rb +88 -0
  10. data/lib/google/cloud/network_services/v1/dep_service/rest/client.rb +1414 -0
  11. data/lib/google/cloud/network_services/v1/dep_service/rest/operations.rb +902 -0
  12. data/lib/google/cloud/network_services/v1/dep_service/rest/service_stub.rb +663 -0
  13. data/lib/google/cloud/network_services/v1/dep_service/rest.rb +54 -0
  14. data/lib/google/cloud/network_services/v1/dep_service.rb +56 -0
  15. data/lib/google/cloud/network_services/v1/network_services/client.rb +4383 -0
  16. data/lib/google/cloud/network_services/v1/network_services/credentials.rb +47 -0
  17. data/lib/google/cloud/network_services/v1/network_services/operations.rb +809 -0
  18. data/lib/google/cloud/network_services/v1/network_services/paths.rb +278 -0
  19. data/lib/google/cloud/network_services/v1/network_services/rest/client.rb +4093 -0
  20. data/lib/google/cloud/network_services/v1/network_services/rest/operations.rb +902 -0
  21. data/lib/google/cloud/network_services/v1/network_services/rest/service_stub.rb +2385 -0
  22. data/lib/google/cloud/network_services/v1/network_services/rest.rb +52 -0
  23. data/lib/google/cloud/network_services/v1/network_services.rb +54 -0
  24. data/lib/google/cloud/network_services/v1/rest.rb +39 -0
  25. data/lib/google/cloud/network_services/v1/version.rb +7 -2
  26. data/lib/google/cloud/network_services/v1.rb +46 -0
  27. data/lib/google/cloud/networkservices/v1/common_pb.rb +51 -0
  28. data/lib/google/cloud/networkservices/v1/dep_pb.rb +75 -0
  29. data/lib/google/cloud/networkservices/v1/dep_services_pb.rb +64 -0
  30. data/lib/google/cloud/networkservices/v1/endpoint_policy_pb.rb +58 -0
  31. data/lib/google/cloud/networkservices/v1/gateway_pb.rb +56 -0
  32. data/lib/google/cloud/networkservices/v1/grpc_route_pb.rb +69 -0
  33. data/lib/google/cloud/networkservices/v1/http_route_pb.rb +74 -0
  34. data/lib/google/cloud/networkservices/v1/mesh_pb.rb +55 -0
  35. data/lib/google/cloud/networkservices/v1/network_services_pb.rb +53 -0
  36. data/lib/google/cloud/networkservices/v1/network_services_services_pb.rb +120 -0
  37. data/lib/google/cloud/networkservices/v1/service_binding_pb.rb +52 -0
  38. data/lib/google/cloud/networkservices/v1/tcp_route_pb.rb +59 -0
  39. data/lib/google/cloud/networkservices/v1/tls_route_pb.rb +59 -0
  40. data/lib/google-cloud-network_services-v1.rb +21 -0
  41. data/proto_docs/README.md +4 -0
  42. data/proto_docs/google/api/client.rb +399 -0
  43. data/proto_docs/google/api/field_behavior.rb +85 -0
  44. data/proto_docs/google/api/field_info.rb +65 -0
  45. data/proto_docs/google/api/launch_stage.rb +71 -0
  46. data/proto_docs/google/api/resource.rb +222 -0
  47. data/proto_docs/google/cloud/networkservices/v1/common.rb +147 -0
  48. data/proto_docs/google/cloud/networkservices/v1/dep.rb +569 -0
  49. data/proto_docs/google/cloud/networkservices/v1/endpoint_policy.rb +194 -0
  50. data/proto_docs/google/cloud/networkservices/v1/gateway.rb +187 -0
  51. data/proto_docs/google/cloud/networkservices/v1/grpc_route.rb +430 -0
  52. data/proto_docs/google/cloud/networkservices/v1/http_route.rb +670 -0
  53. data/proto_docs/google/cloud/networkservices/v1/mesh.rb +155 -0
  54. data/proto_docs/google/cloud/networkservices/v1/service_binding.rb +131 -0
  55. data/proto_docs/google/cloud/networkservices/v1/tcp_route.rb +247 -0
  56. data/proto_docs/google/cloud/networkservices/v1/tls_route.rb +219 -0
  57. data/proto_docs/google/longrunning/operations.rb +164 -0
  58. data/proto_docs/google/protobuf/any.rb +145 -0
  59. data/proto_docs/google/protobuf/duration.rb +98 -0
  60. data/proto_docs/google/protobuf/empty.rb +34 -0
  61. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  62. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  63. data/proto_docs/google/rpc/status.rb +48 -0
  64. data/proto_docs/google/type/expr.rb +75 -0
  65. metadata +144 -10
@@ -0,0 +1,194 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V1
24
+ # EndpointPolicy is a resource that helps apply desired configuration
25
+ # on the endpoints that match specific criteria.
26
+ # For example, this resource can be used to apply "authentication config"
27
+ # an all endpoints that serve on port 8080.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # Required. Name of the EndpointPolicy resource. It matches pattern
31
+ # `projects/{project}/locations/global/endpointPolicies/{endpoint_policy}`.
32
+ # @!attribute [r] create_time
33
+ # @return [::Google::Protobuf::Timestamp]
34
+ # Output only. The timestamp when the resource was created.
35
+ # @!attribute [r] update_time
36
+ # @return [::Google::Protobuf::Timestamp]
37
+ # Output only. The timestamp when the resource was updated.
38
+ # @!attribute [rw] labels
39
+ # @return [::Google::Protobuf::Map{::String => ::String}]
40
+ # Optional. Set of label tags associated with the EndpointPolicy resource.
41
+ # @!attribute [rw] type
42
+ # @return [::Google::Cloud::NetworkServices::V1::EndpointPolicy::EndpointPolicyType]
43
+ # Required. The type of endpoint policy. This is primarily used to validate
44
+ # the configuration.
45
+ # @!attribute [rw] authorization_policy
46
+ # @return [::String]
47
+ # Optional. This field specifies the URL of AuthorizationPolicy resource that
48
+ # applies authorization policies to the inbound traffic at the
49
+ # matched endpoints. Refer to Authorization. If this field is not
50
+ # specified, authorization is disabled(no authz checks) for this
51
+ # endpoint.
52
+ # @!attribute [rw] endpoint_matcher
53
+ # @return [::Google::Cloud::NetworkServices::V1::EndpointMatcher]
54
+ # Required. A matcher that selects endpoints to which the policies should be
55
+ # applied.
56
+ # @!attribute [rw] traffic_port_selector
57
+ # @return [::Google::Cloud::NetworkServices::V1::TrafficPortSelector]
58
+ # Optional. Port selector for the (matched) endpoints. If no port selector is
59
+ # provided, the matched config is applied to all ports.
60
+ # @!attribute [rw] description
61
+ # @return [::String]
62
+ # Optional. A free-text description of the resource. Max length 1024
63
+ # characters.
64
+ # @!attribute [rw] server_tls_policy
65
+ # @return [::String]
66
+ # Optional. A URL referring to ServerTlsPolicy resource. ServerTlsPolicy is
67
+ # used to determine the authentication policy to be applied to terminate the
68
+ # inbound traffic at the identified backends. If this field is not set,
69
+ # authentication is disabled(open) for this endpoint.
70
+ # @!attribute [rw] client_tls_policy
71
+ # @return [::String]
72
+ # Optional. A URL referring to a ClientTlsPolicy resource. ClientTlsPolicy
73
+ # can be set to specify the authentication for traffic from the proxy to the
74
+ # actual endpoints. More specifically, it is applied to the outgoing traffic
75
+ # from the proxy to the endpoint. This is typically used for sidecar model
76
+ # where the proxy identifies itself as endpoint to the control plane, with
77
+ # the connection between sidecar and endpoint requiring authentication. If
78
+ # this field is not set, authentication is disabled(open). Applicable only
79
+ # when EndpointPolicyType is SIDECAR_PROXY.
80
+ class EndpointPolicy
81
+ include ::Google::Protobuf::MessageExts
82
+ extend ::Google::Protobuf::MessageExts::ClassMethods
83
+
84
+ # @!attribute [rw] key
85
+ # @return [::String]
86
+ # @!attribute [rw] value
87
+ # @return [::String]
88
+ class LabelsEntry
89
+ include ::Google::Protobuf::MessageExts
90
+ extend ::Google::Protobuf::MessageExts::ClassMethods
91
+ end
92
+
93
+ # The type of endpoint policy.
94
+ module EndpointPolicyType
95
+ # Default value. Must not be used.
96
+ ENDPOINT_POLICY_TYPE_UNSPECIFIED = 0
97
+
98
+ # Represents a proxy deployed as a sidecar.
99
+ SIDECAR_PROXY = 1
100
+
101
+ # Represents a proxyless gRPC backend.
102
+ GRPC_SERVER = 2
103
+ end
104
+ end
105
+
106
+ # Request used with the ListEndpointPolicies method.
107
+ # @!attribute [rw] parent
108
+ # @return [::String]
109
+ # Required. The project and location from which the EndpointPolicies should
110
+ # be listed, specified in the format `projects/*/locations/global`.
111
+ # @!attribute [rw] page_size
112
+ # @return [::Integer]
113
+ # Maximum number of EndpointPolicies to return per call.
114
+ # @!attribute [rw] page_token
115
+ # @return [::String]
116
+ # The value returned by the last `ListEndpointPoliciesResponse`
117
+ # Indicates that this is a continuation of a prior
118
+ # `ListEndpointPolicies` call, and that the system should return the
119
+ # next page of data.
120
+ class ListEndpointPoliciesRequest
121
+ include ::Google::Protobuf::MessageExts
122
+ extend ::Google::Protobuf::MessageExts::ClassMethods
123
+ end
124
+
125
+ # Response returned by the ListEndpointPolicies method.
126
+ # @!attribute [rw] endpoint_policies
127
+ # @return [::Array<::Google::Cloud::NetworkServices::V1::EndpointPolicy>]
128
+ # List of EndpointPolicy resources.
129
+ # @!attribute [rw] next_page_token
130
+ # @return [::String]
131
+ # If there might be more results than those appearing in this response, then
132
+ # `next_page_token` is included. To get the next set of results, call this
133
+ # method again using the value of `next_page_token` as `page_token`.
134
+ class ListEndpointPoliciesResponse
135
+ include ::Google::Protobuf::MessageExts
136
+ extend ::Google::Protobuf::MessageExts::ClassMethods
137
+ end
138
+
139
+ # Request used with the GetEndpointPolicy method.
140
+ # @!attribute [rw] name
141
+ # @return [::String]
142
+ # Required. A name of the EndpointPolicy to get. Must be in the format
143
+ # `projects/*/locations/global/endpointPolicies/*`.
144
+ class GetEndpointPolicyRequest
145
+ include ::Google::Protobuf::MessageExts
146
+ extend ::Google::Protobuf::MessageExts::ClassMethods
147
+ end
148
+
149
+ # Request used with the CreateEndpointPolicy method.
150
+ # @!attribute [rw] parent
151
+ # @return [::String]
152
+ # Required. The parent resource of the EndpointPolicy. Must be in the
153
+ # format `projects/*/locations/global`.
154
+ # @!attribute [rw] endpoint_policy_id
155
+ # @return [::String]
156
+ # Required. Short name of the EndpointPolicy resource to be created.
157
+ # E.g. "CustomECS".
158
+ # @!attribute [rw] endpoint_policy
159
+ # @return [::Google::Cloud::NetworkServices::V1::EndpointPolicy]
160
+ # Required. EndpointPolicy resource to be created.
161
+ class CreateEndpointPolicyRequest
162
+ include ::Google::Protobuf::MessageExts
163
+ extend ::Google::Protobuf::MessageExts::ClassMethods
164
+ end
165
+
166
+ # Request used with the UpdateEndpointPolicy method.
167
+ # @!attribute [rw] update_mask
168
+ # @return [::Google::Protobuf::FieldMask]
169
+ # Optional. Field mask is used to specify the fields to be overwritten in the
170
+ # EndpointPolicy resource by the update.
171
+ # The fields specified in the update_mask are relative to the resource, not
172
+ # the full request. A field will be overwritten if it is in the mask. If the
173
+ # user does not provide a mask then all fields will be overwritten.
174
+ # @!attribute [rw] endpoint_policy
175
+ # @return [::Google::Cloud::NetworkServices::V1::EndpointPolicy]
176
+ # Required. Updated EndpointPolicy resource.
177
+ class UpdateEndpointPolicyRequest
178
+ include ::Google::Protobuf::MessageExts
179
+ extend ::Google::Protobuf::MessageExts::ClassMethods
180
+ end
181
+
182
+ # Request used with the DeleteEndpointPolicy method.
183
+ # @!attribute [rw] name
184
+ # @return [::String]
185
+ # Required. A name of the EndpointPolicy to delete. Must be in the format
186
+ # `projects/*/locations/global/endpointPolicies/*`.
187
+ class DeleteEndpointPolicyRequest
188
+ include ::Google::Protobuf::MessageExts
189
+ extend ::Google::Protobuf::MessageExts::ClassMethods
190
+ end
191
+ end
192
+ end
193
+ end
194
+ end
@@ -0,0 +1,187 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 V1
24
+ # Gateway represents the configuration for a proxy, typically a load balancer.
25
+ # It captures the ip:port over which the services are exposed by the proxy,
26
+ # along with any policy configurations. Routes have reference to to Gateways to
27
+ # dictate how requests should be routed by this Gateway.
28
+ # @!attribute [rw] name
29
+ # @return [::String]
30
+ # Required. Name of the Gateway resource. It matches pattern
31
+ # `projects/*/locations/*/gateways/<gateway_name>`.
32
+ # @!attribute [r] self_link
33
+ # @return [::String]
34
+ # Output only. Server-defined URL of this resource
35
+ # @!attribute [r] create_time
36
+ # @return [::Google::Protobuf::Timestamp]
37
+ # Output only. The timestamp when the resource was created.
38
+ # @!attribute [r] update_time
39
+ # @return [::Google::Protobuf::Timestamp]
40
+ # Output only. The timestamp when the resource was updated.
41
+ # @!attribute [rw] labels
42
+ # @return [::Google::Protobuf::Map{::String => ::String}]
43
+ # Optional. Set of label tags associated with the Gateway resource.
44
+ # @!attribute [rw] description
45
+ # @return [::String]
46
+ # Optional. A free-text description of the resource. Max length 1024
47
+ # characters.
48
+ # @!attribute [rw] type
49
+ # @return [::Google::Cloud::NetworkServices::V1::Gateway::Type]
50
+ # Immutable. The type of the customer managed gateway.
51
+ # This field is required. If unspecified, an error is returned.
52
+ # @!attribute [rw] ports
53
+ # @return [::Array<::Integer>]
54
+ # Required. One or more ports that the Gateway must receive traffic on. The
55
+ # proxy binds to the ports specified. Gateway listen on 0.0.0.0 on the ports
56
+ # specified below.
57
+ # @!attribute [rw] scope
58
+ # @return [::String]
59
+ # Required. Immutable. Scope determines how configuration across multiple
60
+ # Gateway instances are merged. The configuration for multiple Gateway
61
+ # instances with the same scope will be merged as presented as a single
62
+ # coniguration to the proxy/load balancer.
63
+ #
64
+ # Max length 64 characters.
65
+ # Scope should start with a letter and can only have letters, numbers,
66
+ # hyphens.
67
+ # @!attribute [rw] server_tls_policy
68
+ # @return [::String]
69
+ # Optional. A fully-qualified ServerTLSPolicy URL reference. Specifies how
70
+ # TLS traffic is terminated. If empty, TLS termination is disabled.
71
+ class Gateway
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+
75
+ # @!attribute [rw] key
76
+ # @return [::String]
77
+ # @!attribute [rw] value
78
+ # @return [::String]
79
+ class LabelsEntry
80
+ include ::Google::Protobuf::MessageExts
81
+ extend ::Google::Protobuf::MessageExts::ClassMethods
82
+ end
83
+
84
+ # The type of the customer-managed gateway.
85
+ # Possible values are:
86
+ # * OPEN_MESH
87
+ # * SECURE_WEB_GATEWAY
88
+ module Type
89
+ # The type of the customer managed gateway is unspecified.
90
+ TYPE_UNSPECIFIED = 0
91
+
92
+ # The type of the customer managed gateway is TrafficDirector Open
93
+ # Mesh.
94
+ OPEN_MESH = 1
95
+
96
+ # The type of the customer managed gateway is SecureWebGateway (SWG).
97
+ SECURE_WEB_GATEWAY = 2
98
+ end
99
+ end
100
+
101
+ # Request used with the ListGateways method.
102
+ # @!attribute [rw] parent
103
+ # @return [::String]
104
+ # Required. The project and location from which the Gateways should be
105
+ # listed, specified in the format `projects/*/locations/*`.
106
+ # @!attribute [rw] page_size
107
+ # @return [::Integer]
108
+ # Maximum number of Gateways to return per call.
109
+ # @!attribute [rw] page_token
110
+ # @return [::String]
111
+ # The value returned by the last `ListGatewaysResponse`
112
+ # Indicates that this is a continuation of a prior `ListGateways` call,
113
+ # and that the system should return the next page of data.
114
+ class ListGatewaysRequest
115
+ include ::Google::Protobuf::MessageExts
116
+ extend ::Google::Protobuf::MessageExts::ClassMethods
117
+ end
118
+
119
+ # Response returned by the ListGateways method.
120
+ # @!attribute [rw] gateways
121
+ # @return [::Array<::Google::Cloud::NetworkServices::V1::Gateway>]
122
+ # List of Gateway resources.
123
+ # @!attribute [rw] next_page_token
124
+ # @return [::String]
125
+ # If there might be more results than those appearing in this response, then
126
+ # `next_page_token` is included. To get the next set of results, call this
127
+ # method again using the value of `next_page_token` as `page_token`.
128
+ class ListGatewaysResponse
129
+ include ::Google::Protobuf::MessageExts
130
+ extend ::Google::Protobuf::MessageExts::ClassMethods
131
+ end
132
+
133
+ # Request used by the GetGateway method.
134
+ # @!attribute [rw] name
135
+ # @return [::String]
136
+ # Required. A name of the Gateway to get. Must be in the format
137
+ # `projects/*/locations/*/gateways/*`.
138
+ class GetGatewayRequest
139
+ include ::Google::Protobuf::MessageExts
140
+ extend ::Google::Protobuf::MessageExts::ClassMethods
141
+ end
142
+
143
+ # Request used by the CreateGateway method.
144
+ # @!attribute [rw] parent
145
+ # @return [::String]
146
+ # Required. The parent resource of the Gateway. Must be in the
147
+ # format `projects/*/locations/*`.
148
+ # @!attribute [rw] gateway_id
149
+ # @return [::String]
150
+ # Required. Short name of the Gateway resource to be created.
151
+ # @!attribute [rw] gateway
152
+ # @return [::Google::Cloud::NetworkServices::V1::Gateway]
153
+ # Required. Gateway resource to be created.
154
+ class CreateGatewayRequest
155
+ include ::Google::Protobuf::MessageExts
156
+ extend ::Google::Protobuf::MessageExts::ClassMethods
157
+ end
158
+
159
+ # Request used by the UpdateGateway method.
160
+ # @!attribute [rw] update_mask
161
+ # @return [::Google::Protobuf::FieldMask]
162
+ # Optional. Field mask is used to specify the fields to be overwritten in the
163
+ # Gateway resource by the update.
164
+ # The fields specified in the update_mask are relative to the resource, not
165
+ # the full request. A field will be overwritten if it is in the mask. If the
166
+ # user does not provide a mask then all fields will be overwritten.
167
+ # @!attribute [rw] gateway
168
+ # @return [::Google::Cloud::NetworkServices::V1::Gateway]
169
+ # Required. Updated Gateway resource.
170
+ class UpdateGatewayRequest
171
+ include ::Google::Protobuf::MessageExts
172
+ extend ::Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+
175
+ # Request used by the DeleteGateway method.
176
+ # @!attribute [rw] name
177
+ # @return [::String]
178
+ # Required. A name of the Gateway to delete. Must be in the format
179
+ # `projects/*/locations/*/gateways/*`.
180
+ class DeleteGatewayRequest
181
+ include ::Google::Protobuf::MessageExts
182
+ extend ::Google::Protobuf::MessageExts::ClassMethods
183
+ end
184
+ end
185
+ end
186
+ end
187
+ end