...
1# Copyright 2020 Google LLC
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15apiVersion: apiextensions.k8s.io/v1
16kind: CustomResourceDefinition
17metadata:
18 annotations:
19 cnrm.cloud.google.com/version: 1.106.0
20 creationTimestamp: null
21 labels:
22 cnrm.cloud.google.com/dcl2crd: "true"
23 cnrm.cloud.google.com/managed-by-kcc: "true"
24 cnrm.cloud.google.com/stability-level: stable
25 cnrm.cloud.google.com/system: "true"
26 name: networkservicestlsroutes.networkservices.cnrm.cloud.google.com
27spec:
28 group: networkservices.cnrm.cloud.google.com
29 names:
30 categories:
31 - gcp
32 kind: NetworkServicesTLSRoute
33 plural: networkservicestlsroutes
34 shortNames:
35 - gcpnetworkservicestlsroute
36 - gcpnetworkservicestlsroutes
37 singular: networkservicestlsroute
38 scope: Namespaced
39 versions:
40 - additionalPrinterColumns:
41 - jsonPath: .metadata.creationTimestamp
42 name: Age
43 type: date
44 - description: When 'True', the most recent reconcile of the resource succeeded
45 jsonPath: .status.conditions[?(@.type=='Ready')].status
46 name: Ready
47 type: string
48 - description: The reason for the value in 'Ready'
49 jsonPath: .status.conditions[?(@.type=='Ready')].reason
50 name: Status
51 type: string
52 - description: The last transition time for the value in 'Status'
53 jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
54 name: Status Age
55 type: date
56 name: v1beta1
57 schema:
58 openAPIV3Schema:
59 properties:
60 apiVersion:
61 description: 'apiVersion defines the versioned schema of this representation
62 of an object. Servers should convert recognized schemas to the latest
63 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
64 type: string
65 kind:
66 description: 'kind is a string value representing the REST resource this
67 object represents. Servers may infer this from the endpoint the client
68 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
69 type: string
70 metadata:
71 type: object
72 spec:
73 properties:
74 description:
75 description: Optional. A free-text description of the resource. Max
76 length 1024 characters.
77 type: string
78 gateways:
79 items:
80 oneOf:
81 - not:
82 required:
83 - external
84 required:
85 - name
86 - not:
87 anyOf:
88 - required:
89 - name
90 - required:
91 - namespace
92 required:
93 - external
94 properties:
95 external:
96 description: 'Allowed value: The `selfLink` field of a `NetworkServicesGateway`
97 resource.'
98 type: string
99 name:
100 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
101 type: string
102 namespace:
103 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
104 type: string
105 type: object
106 type: array
107 location:
108 description: Immutable. The location for the resource
109 type: string
110 meshes:
111 items:
112 oneOf:
113 - not:
114 required:
115 - external
116 required:
117 - name
118 - not:
119 anyOf:
120 - required:
121 - name
122 - required:
123 - namespace
124 required:
125 - external
126 properties:
127 external:
128 description: 'Allowed value: The `selfLink` field of a `NetworkServicesMesh`
129 resource.'
130 type: string
131 name:
132 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
133 type: string
134 namespace:
135 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
136 type: string
137 type: object
138 type: array
139 projectRef:
140 description: Immutable. The Project that this resource belongs to.
141 oneOf:
142 - not:
143 required:
144 - external
145 required:
146 - name
147 - not:
148 anyOf:
149 - required:
150 - name
151 - required:
152 - namespace
153 required:
154 - external
155 properties:
156 external:
157 description: |-
158 The project for the resource
159
160 Allowed value: The Google Cloud resource name of a `Project` resource (format: `projects/{{name}}`).
161 type: string
162 name:
163 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
164 type: string
165 namespace:
166 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
167 type: string
168 type: object
169 resourceID:
170 description: Immutable. Optional. The name of the resource. Used for
171 creation and acquisition. When unset, the value of `metadata.name`
172 is used as the default.
173 type: string
174 rules:
175 description: Required. Rules that define how traffic is routed and
176 handled. At least one RouteRule must be supplied. If there are multiple
177 rules then the action taken will be the first rule to match.
178 items:
179 properties:
180 action:
181 description: Required. The detailed rule defining how to route
182 matched traffic.
183 properties:
184 destinations:
185 description: Required. The destination services to which
186 traffic should be forwarded. At least one destination
187 service is required.
188 items:
189 properties:
190 serviceRef:
191 oneOf:
192 - not:
193 required:
194 - external
195 required:
196 - name
197 - not:
198 anyOf:
199 - required:
200 - name
201 - required:
202 - namespace
203 required:
204 - external
205 properties:
206 external:
207 description: |-
208 Required. The URL of a BackendService to route traffic to.
209
210 Allowed value: The Google Cloud resource name of a `ComputeBackendService` resource (format: `projects/{{project}}/global/backendServices/{{name}}`).
211 type: string
212 name:
213 description: 'Name of the referent. More info:
214 https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
215 type: string
216 namespace:
217 description: 'Namespace of the referent. More
218 info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
219 type: string
220 type: object
221 weight:
222 description: 'Optional. Specifies the proportion of
223 requests forwareded to the backend referenced by
224 the service_name field. This is computed as: weight/Sum(weights
225 in destinations) Weights in all destinations does
226 not need to sum up to 100.'
227 format: int64
228 type: integer
229 required:
230 - serviceRef
231 type: object
232 type: array
233 required:
234 - destinations
235 type: object
236 matches:
237 description: Required. RouteMatch defines the predicate used
238 to match requests to a given action. Multiple match types
239 are "OR"ed for evaluation.
240 items:
241 properties:
242 alpn:
243 description: 'Optional. ALPN (Application-Layer Protocol
244 Negotiation) to match against. Examples: "http/1.1",
245 "h2". At least one of sni_host and alpn is required.
246 Up to 5 alpns across all matches can be set.'
247 items:
248 type: string
249 type: array
250 sniHost:
251 description: Optional. SNI (server name indicator) to
252 match against. SNI will be matched against all wildcard
253 domains, i.e. www.example.com will be first matched
254 against www.example.com, then *.example.com, then *.com.
255 Partial wildcards are not supported, and values like
256 *w.example.com are invalid. At least one of sni_host
257 and alpn is required. Up to 5 sni hosts across all matches
258 can be set.
259 items:
260 type: string
261 type: array
262 type: object
263 type: array
264 required:
265 - action
266 - matches
267 type: object
268 type: array
269 required:
270 - location
271 - projectRef
272 - rules
273 type: object
274 status:
275 properties:
276 conditions:
277 description: Conditions represent the latest available observation
278 of the resource's current state.
279 items:
280 properties:
281 lastTransitionTime:
282 description: Last time the condition transitioned from one status
283 to another.
284 type: string
285 message:
286 description: Human-readable message indicating details about
287 last transition.
288 type: string
289 reason:
290 description: Unique, one-word, CamelCase reason for the condition's
291 last transition.
292 type: string
293 status:
294 description: Status is the status of the condition. Can be True,
295 False, Unknown.
296 type: string
297 type:
298 description: Type is the type of the condition.
299 type: string
300 type: object
301 type: array
302 createTime:
303 description: Output only. The timestamp when the resource was created.
304 format: date-time
305 type: string
306 observedGeneration:
307 description: ObservedGeneration is the generation of the resource
308 that was most recently observed by the Config Connector controller.
309 If this is equal to metadata.generation, then that means that the
310 current reported status reflects the most recent desired state of
311 the resource.
312 type: integer
313 selfLink:
314 description: Output only. Server-defined URL of this resource
315 type: string
316 updateTime:
317 description: Output only. The timestamp when the resource was updated.
318 format: date-time
319 type: string
320 type: object
321 required:
322 - spec
323 type: object
324 served: true
325 storage: true
326 subresources:
327 status: {}
328status:
329 acceptedNames:
330 kind: ""
331 plural: ""
332 conditions: []
333 storedVersions: []
View as plain text