kuma

Форк
0
/
kuma.io_meshproxypatches.yaml 
542 строки · 27.7 Кб
1
---
2
apiVersion: apiextensions.k8s.io/v1
3
kind: CustomResourceDefinition
4
metadata:
5
  annotations:
6
    controller-gen.kubebuilder.io/version: v0.14.0
7
  name: meshproxypatches.kuma.io
8
spec:
9
  group: kuma.io
10
  names:
11
    categories:
12
    - kuma
13
    kind: MeshProxyPatch
14
    listKind: MeshProxyPatchList
15
    plural: meshproxypatches
16
    singular: meshproxypatch
17
  scope: Namespaced
18
  versions:
19
  - additionalPrinterColumns:
20
    - jsonPath: .spec.targetRef.kind
21
      name: TargetRef Kind
22
      type: string
23
    - jsonPath: .spec.targetRef.name
24
      name: TargetRef Name
25
      type: string
26
    name: v1alpha1
27
    schema:
28
      openAPIV3Schema:
29
        properties:
30
          apiVersion:
31
            description: |-
32
              APIVersion defines the versioned schema of this representation of an object.
33
              Servers should convert recognized schemas to the latest internal value, and
34
              may reject unrecognized values.
35
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
36
            type: string
37
          kind:
38
            description: |-
39
              Kind is a string value representing the REST resource this object represents.
40
              Servers may infer this from the endpoint the client submits requests to.
41
              Cannot be updated.
42
              In CamelCase.
43
              More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
44
            type: string
45
          metadata:
46
            type: object
47
          spec:
48
            description: Spec is the specification of the Kuma MeshProxyPatch resource.
49
            properties:
50
              default:
51
                description: |-
52
                  Default is a configuration specific to the group of destinations
53
                  referenced in 'targetRef'.
54
                properties:
55
                  appendModifications:
56
                    description: AppendModifications is a list of modifications applied
57
                      on the selected proxy.
58
                    items:
59
                      properties:
60
                        cluster:
61
                          description: Cluster is a modification of Envoy's Cluster
62
                            resource.
63
                          properties:
64
                            jsonPatches:
65
                              description: |-
66
                                JsonPatches specifies list of jsonpatches to apply to on Envoy's Cluster
67
                                resource
68
                              items:
69
                                description: JsonPatchBlock is one json patch operation
70
                                  block.
71
                                properties:
72
                                  from:
73
                                    description: From is a jsonpatch from string,
74
                                      used by move and copy operations.
75
                                    type: string
76
                                  op:
77
                                    description: Op is a jsonpatch operation string.
78
                                    enum:
79
                                    - add
80
                                    - remove
81
                                    - replace
82
                                    - move
83
                                    - copy
84
                                    type: string
85
                                  path:
86
                                    description: Path is a jsonpatch path string.
87
                                    type: string
88
                                  value:
89
                                    description: Value must be a valid json value
90
                                      used by replace and add operations.
91
                                    x-kubernetes-preserve-unknown-fields: true
92
                                required:
93
                                - op
94
                                - path
95
                                type: object
96
                              type: array
97
                            match:
98
                              description: Match is a set of conditions that have
99
                                to be matched for modification operation to happen.
100
                              properties:
101
                                name:
102
                                  description: Name of the cluster to match.
103
                                  type: string
104
                                origin:
105
                                  description: |-
106
                                    Origin is the name of the component or plugin that generated the resource.
107

108

109
                                    Here is the list of well-known origins:
110
                                    inbound - resources generated for handling incoming traffic.
111
                                    outbound - resources generated for handling outgoing traffic.
112
                                    transparent - resources generated for transparent proxy functionality.
113
                                    prometheus - resources generated when Prometheus metrics are enabled.
114
                                    direct-access - resources generated for Direct Access functionality.
115
                                    ingress - resources generated for Zone Ingress.
116
                                    egress - resources generated for Zone Egress.
117
                                    gateway - resources generated for MeshGateway.
118

119

120
                                    The list is not complete, because policy plugins can introduce new resources.
121
                                    For example MeshTrace plugin can create Cluster with "mesh-trace" origin.
122
                                  type: string
123
                              type: object
124
                            operation:
125
                              description: Operation to execute on matched cluster.
126
                              enum:
127
                              - Add
128
                              - Remove
129
                              - Patch
130
                              type: string
131
                            value:
132
                              description: Value of xDS resource in YAML format to
133
                                add or patch.
134
                              type: string
135
                          required:
136
                          - operation
137
                          type: object
138
                        httpFilter:
139
                          description: |-
140
                            HTTPFilter is a modification of Envoy HTTP Filter
141
                            available in HTTP Connection Manager in a Listener resource.
142
                          properties:
143
                            jsonPatches:
144
                              description: |-
145
                                JsonPatches specifies list of jsonpatches to apply to on Envoy's
146
                                HTTP Filter available in HTTP Connection Manager in a Listener resource.
147
                              items:
148
                                description: JsonPatchBlock is one json patch operation
149
                                  block.
150
                                properties:
151
                                  from:
152
                                    description: From is a jsonpatch from string,
153
                                      used by move and copy operations.
154
                                    type: string
155
                                  op:
156
                                    description: Op is a jsonpatch operation string.
157
                                    enum:
158
                                    - add
159
                                    - remove
160
                                    - replace
161
                                    - move
162
                                    - copy
163
                                    type: string
164
                                  path:
165
                                    description: Path is a jsonpatch path string.
166
                                    type: string
167
                                  value:
168
                                    description: Value must be a valid json value
169
                                      used by replace and add operations.
170
                                    x-kubernetes-preserve-unknown-fields: true
171
                                required:
172
                                - op
173
                                - path
174
                                type: object
175
                              type: array
176
                            match:
177
                              description: Match is a set of conditions that have
178
                                to be matched for modification operation to happen.
179
                              properties:
180
                                listenerName:
181
                                  description: Name of the listener to match.
182
                                  type: string
183
                                listenerTags:
184
                                  additionalProperties:
185
                                    type: string
186
                                  description: Listener tags available in Listener#Metadata#FilterMetadata[io.kuma.tags]
187
                                  type: object
188
                                name:
189
                                  description: Name of the HTTP filter. For example
190
                                    "envoy.filters.http.local_ratelimit"
191
                                  type: string
192
                                origin:
193
                                  description: |-
194
                                    Origin is the name of the component or plugin that generated the resource.
195

196

197
                                    Here is the list of well-known origins:
198
                                    inbound - resources generated for handling incoming traffic.
199
                                    outbound - resources generated for handling outgoing traffic.
200
                                    transparent - resources generated for transparent proxy functionality.
201
                                    prometheus - resources generated when Prometheus metrics are enabled.
202
                                    direct-access - resources generated for Direct Access functionality.
203
                                    ingress - resources generated for Zone Ingress.
204
                                    egress - resources generated for Zone Egress.
205
                                    gateway - resources generated for MeshGateway.
206

207

208
                                    The list is not complete, because policy plugins can introduce new resources.
209
                                    For example MeshTrace plugin can create Cluster with "mesh-trace" origin.
210
                                  type: string
211
                              type: object
212
                            operation:
213
                              description: Operation to execute on matched listener.
214
                              enum:
215
                              - Remove
216
                              - Patch
217
                              - AddFirst
218
                              - AddBefore
219
                              - AddAfter
220
                              - AddLast
221
                              type: string
222
                            value:
223
                              description: Value of xDS resource in YAML format to
224
                                add or patch.
225
                              type: string
226
                          required:
227
                          - operation
228
                          type: object
229
                        listener:
230
                          description: Listener is a modification of Envoy's Listener
231
                            resource.
232
                          properties:
233
                            jsonPatches:
234
                              description: |-
235
                                JsonPatches specifies list of jsonpatches to apply to on Envoy's Listener
236
                                resource
237
                              items:
238
                                description: JsonPatchBlock is one json patch operation
239
                                  block.
240
                                properties:
241
                                  from:
242
                                    description: From is a jsonpatch from string,
243
                                      used by move and copy operations.
244
                                    type: string
245
                                  op:
246
                                    description: Op is a jsonpatch operation string.
247
                                    enum:
248
                                    - add
249
                                    - remove
250
                                    - replace
251
                                    - move
252
                                    - copy
253
                                    type: string
254
                                  path:
255
                                    description: Path is a jsonpatch path string.
256
                                    type: string
257
                                  value:
258
                                    description: Value must be a valid json value
259
                                      used by replace and add operations.
260
                                    x-kubernetes-preserve-unknown-fields: true
261
                                required:
262
                                - op
263
                                - path
264
                                type: object
265
                              type: array
266
                            match:
267
                              description: Match is a set of conditions that have
268
                                to be matched for modification operation to happen.
269
                              properties:
270
                                name:
271
                                  description: Name of the listener to match.
272
                                  type: string
273
                                origin:
274
                                  description: |-
275
                                    Origin is the name of the component or plugin that generated the resource.
276

277

278
                                    Here is the list of well-known origins:
279
                                    inbound - resources generated for handling incoming traffic.
280
                                    outbound - resources generated for handling outgoing traffic.
281
                                    transparent - resources generated for transparent proxy functionality.
282
                                    prometheus - resources generated when Prometheus metrics are enabled.
283
                                    direct-access - resources generated for Direct Access functionality.
284
                                    ingress - resources generated for Zone Ingress.
285
                                    egress - resources generated for Zone Egress.
286
                                    gateway - resources generated for MeshGateway.
287

288

289
                                    The list is not complete, because policy plugins can introduce new resources.
290
                                    For example MeshTrace plugin can create Cluster with "mesh-trace" origin.
291
                                  type: string
292
                                tags:
293
                                  additionalProperties:
294
                                    type: string
295
                                  description: Tags available in Listener#Metadata#FilterMetadata[io.kuma.tags]
296
                                  type: object
297
                              type: object
298
                            operation:
299
                              description: Operation to execute on matched listener.
300
                              enum:
301
                              - Add
302
                              - Remove
303
                              - Patch
304
                              type: string
305
                            value:
306
                              description: Value of xDS resource in YAML format to
307
                                add or patch.
308
                              type: string
309
                          required:
310
                          - operation
311
                          type: object
312
                        networkFilter:
313
                          description: NetworkFilter is a modification of Envoy Listener's
314
                            filter.
315
                          properties:
316
                            jsonPatches:
317
                              description: |-
318
                                JsonPatches specifies list of jsonpatches to apply to on Envoy Listener's
319
                                filter.
320
                              items:
321
                                description: JsonPatchBlock is one json patch operation
322
                                  block.
323
                                properties:
324
                                  from:
325
                                    description: From is a jsonpatch from string,
326
                                      used by move and copy operations.
327
                                    type: string
328
                                  op:
329
                                    description: Op is a jsonpatch operation string.
330
                                    enum:
331
                                    - add
332
                                    - remove
333
                                    - replace
334
                                    - move
335
                                    - copy
336
                                    type: string
337
                                  path:
338
                                    description: Path is a jsonpatch path string.
339
                                    type: string
340
                                  value:
341
                                    description: Value must be a valid json value
342
                                      used by replace and add operations.
343
                                    x-kubernetes-preserve-unknown-fields: true
344
                                required:
345
                                - op
346
                                - path
347
                                type: object
348
                              type: array
349
                            match:
350
                              description: Match is a set of conditions that have
351
                                to be matched for modification operation to happen.
352
                              properties:
353
                                listenerName:
354
                                  description: Name of the listener to match.
355
                                  type: string
356
                                listenerTags:
357
                                  additionalProperties:
358
                                    type: string
359
                                  description: Listener tags available in Listener#Metadata#FilterMetadata[io.kuma.tags]
360
                                  type: object
361
                                name:
362
                                  description: Name of the network filter. For example
363
                                    "envoy.filters.network.ratelimit"
364
                                  type: string
365
                                origin:
366
                                  description: |-
367
                                    Origin is the name of the component or plugin that generated the resource.
368

369

370
                                    Here is the list of well-known origins:
371
                                    inbound - resources generated for handling incoming traffic.
372
                                    outbound - resources generated for handling outgoing traffic.
373
                                    transparent - resources generated for transparent proxy functionality.
374
                                    prometheus - resources generated when Prometheus metrics are enabled.
375
                                    direct-access - resources generated for Direct Access functionality.
376
                                    ingress - resources generated for Zone Ingress.
377
                                    egress - resources generated for Zone Egress.
378
                                    gateway - resources generated for MeshGateway.
379

380

381
                                    The list is not complete, because policy plugins can introduce new resources.
382
                                    For example MeshTrace plugin can create Cluster with "mesh-trace" origin.
383
                                  type: string
384
                              type: object
385
                            operation:
386
                              description: Operation to execute on matched listener.
387
                              enum:
388
                              - Remove
389
                              - Patch
390
                              - AddFirst
391
                              - AddBefore
392
                              - AddAfter
393
                              - AddLast
394
                              type: string
395
                            value:
396
                              description: Value of xDS resource in YAML format to
397
                                add or patch.
398
                              type: string
399
                          required:
400
                          - operation
401
                          type: object
402
                        virtualHost:
403
                          description: |-
404
                            VirtualHost is a modification of Envoy's VirtualHost
405
                            referenced in HTTP Connection Manager in a Listener resource.
406
                          properties:
407
                            jsonPatches:
408
                              description: |-
409
                                JsonPatches specifies list of jsonpatches to apply to on Envoy's
410
                                VirtualHost resource
411
                              items:
412
                                description: JsonPatchBlock is one json patch operation
413
                                  block.
414
                                properties:
415
                                  from:
416
                                    description: From is a jsonpatch from string,
417
                                      used by move and copy operations.
418
                                    type: string
419
                                  op:
420
                                    description: Op is a jsonpatch operation string.
421
                                    enum:
422
                                    - add
423
                                    - remove
424
                                    - replace
425
                                    - move
426
                                    - copy
427
                                    type: string
428
                                  path:
429
                                    description: Path is a jsonpatch path string.
430
                                    type: string
431
                                  value:
432
                                    description: Value must be a valid json value
433
                                      used by replace and add operations.
434
                                    x-kubernetes-preserve-unknown-fields: true
435
                                required:
436
                                - op
437
                                - path
438
                                type: object
439
                              type: array
440
                            match:
441
                              description: Match is a set of conditions that have
442
                                to be matched for modification operation to happen.
443
                              properties:
444
                                name:
445
                                  description: Name of the VirtualHost to match.
446
                                  type: string
447
                                origin:
448
                                  description: |-
449
                                    Origin is the name of the component or plugin that generated the resource.
450

451

452
                                    Here is the list of well-known origins:
453
                                    inbound - resources generated for handling incoming traffic.
454
                                    outbound - resources generated for handling outgoing traffic.
455
                                    transparent - resources generated for transparent proxy functionality.
456
                                    prometheus - resources generated when Prometheus metrics are enabled.
457
                                    direct-access - resources generated for Direct Access functionality.
458
                                    ingress - resources generated for Zone Ingress.
459
                                    egress - resources generated for Zone Egress.
460
                                    gateway - resources generated for MeshGateway.
461

462

463
                                    The list is not complete, because policy plugins can introduce new resources.
464
                                    For example MeshTrace plugin can create Cluster with "mesh-trace" origin.
465
                                  type: string
466
                                routeConfigurationName:
467
                                  description: Name of the RouteConfiguration resource
468
                                    to match.
469
                                  type: string
470
                              type: object
471
                            operation:
472
                              description: Operation to execute on matched listener.
473
                              enum:
474
                              - Add
475
                              - Remove
476
                              - Patch
477
                              type: string
478
                            value:
479
                              description: Value of xDS resource in YAML format to
480
                                add or patch.
481
                              type: string
482
                          required:
483
                          - match
484
                          - operation
485
                          type: object
486
                      type: object
487
                    type: array
488
                required:
489
                - appendModifications
490
                type: object
491
              targetRef:
492
                description: |-
493
                  TargetRef is a reference to the resource the policy takes an effect on.
494
                  The resource could be either a real store object or virtual resource
495
                  defined inplace.
496
                properties:
497
                  kind:
498
                    description: Kind of the referenced resource
499
                    enum:
500
                    - Mesh
501
                    - MeshSubset
502
                    - MeshGateway
503
                    - MeshService
504
                    - MeshServiceSubset
505
                    - MeshHTTPRoute
506
                    type: string
507
                  mesh:
508
                    description: Mesh is reserved for future use to identify cross
509
                      mesh resources.
510
                    type: string
511
                  name:
512
                    description: |-
513
                      Name of the referenced resource. Can only be used with kinds: `MeshService`,
514
                      `MeshServiceSubset` and `MeshGatewayRoute`
515
                    type: string
516
                  proxyTypes:
517
                    description: |-
518
                      ProxyTypes specifies the data plane types that are subject to the policy. When not specified,
519
                      all data plane types are targeted by the policy.
520
                    items:
521
                      enum:
522
                      - Sidecar
523
                      - Gateway
524
                      type: string
525
                    minItems: 1
526
                    type: array
527
                  tags:
528
                    additionalProperties:
529
                      type: string
530
                    description: |-
531
                      Tags used to select a subset of proxies by tags. Can only be used with kinds
532
                      `MeshSubset` and `MeshServiceSubset`
533
                    type: object
534
                type: object
535
            required:
536
            - default
537
            - targetRef
538
            type: object
539
        type: object
540
    served: true
541
    storage: true
542
    subresources: {}
543

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.