@bluedynamics/cdk8s-plone 0.1.23 → 0.1.25

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.
@@ -0,0 +1,2419 @@
1
+ import { ApiObject, ApiObjectMetadata, GroupVersionKind } from 'cdk8s';
2
+ import { Construct } from 'constructs';
3
+ /**
4
+ * VinylCache is the Schema for the vinylcaches API.
5
+ It describes a complete Varnish cache cluster: replicas, backends, VCL configuration,
6
+ clustering, and cache invalidation strategy.
7
+ *
8
+ * @schema VinylCache
9
+ */
10
+ export declare class VinylCache extends ApiObject {
11
+ /**
12
+ * Returns the apiVersion and kind for "VinylCache"
13
+ */
14
+ static readonly GVK: GroupVersionKind;
15
+ /**
16
+ * Renders a Kubernetes manifest for "VinylCache".
17
+ *
18
+ * This can be used to inline resource manifests inside other objects (e.g. as templates).
19
+ *
20
+ * @param props initialization props
21
+ */
22
+ static manifest(props?: VinylCacheProps): any;
23
+ /**
24
+ * Defines a "VinylCache" API object
25
+ * @param scope the scope in which to define this object
26
+ * @param id a scope-local name for the object
27
+ * @param props initialization props
28
+ */
29
+ constructor(scope: Construct, id: string, props?: VinylCacheProps);
30
+ /**
31
+ * Renders the object to Kubernetes JSON.
32
+ */
33
+ toJson(): any;
34
+ }
35
+ /**
36
+ * VinylCache is the Schema for the vinylcaches API.
37
+ * It describes a complete Varnish cache cluster: replicas, backends, VCL configuration,
38
+ * clustering, and cache invalidation strategy.
39
+ *
40
+ * @schema VinylCache
41
+ */
42
+ export interface VinylCacheProps {
43
+ /**
44
+ * @schema VinylCache#metadata
45
+ */
46
+ readonly metadata?: ApiObjectMetadata;
47
+ /**
48
+ * spec defines the desired state of the VinylCache cluster.
49
+ *
50
+ * @schema VinylCache#spec
51
+ */
52
+ readonly spec?: VinylCacheSpec;
53
+ }
54
+ /**
55
+ * Converts an object of type 'VinylCacheProps' to JSON representation.
56
+ */
57
+ export declare function toJson_VinylCacheProps(obj: VinylCacheProps | undefined): Record<string, any> | undefined;
58
+ /**
59
+ * spec defines the desired state of the VinylCache cluster.
60
+ *
61
+ * @schema VinylCacheSpec
62
+ */
63
+ export interface VinylCacheSpec {
64
+ /**
65
+ * backends defines the upstream services Varnish will proxy to.
66
+ * At least one backend is required.
67
+ *
68
+ * @schema VinylCacheSpec#backends
69
+ */
70
+ readonly backends: VinylCacheSpecBackends[];
71
+ /**
72
+ * cluster configures Varnish clustering between pods.
73
+ *
74
+ * @schema VinylCacheSpec#cluster
75
+ */
76
+ readonly cluster?: VinylCacheSpecCluster;
77
+ /**
78
+ * debounce configures a grace period before applying endpoint changes to Varnish,
79
+ * preventing thundering-herd on rapid endpoint churn.
80
+ *
81
+ * @schema VinylCacheSpec#debounce
82
+ */
83
+ readonly debounce?: VinylCacheSpecDebounce;
84
+ /**
85
+ * director configures how Varnish distributes requests across backend endpoints.
86
+ *
87
+ * @schema VinylCacheSpec#director
88
+ */
89
+ readonly director?: VinylCacheSpecDirector;
90
+ /**
91
+ * image is the container image for the Varnish pods.
92
+ *
93
+ * @schema VinylCacheSpec#image
94
+ */
95
+ readonly image: string;
96
+ /**
97
+ * invalidation configures cache invalidation methods (PURGE, BAN, xkey).
98
+ *
99
+ * @schema VinylCacheSpec#invalidation
100
+ */
101
+ readonly invalidation?: VinylCacheSpecInvalidation;
102
+ /**
103
+ * monitoring configures Prometheus metrics and alerting rules.
104
+ *
105
+ * @schema VinylCacheSpec#monitoring
106
+ */
107
+ readonly monitoring?: VinylCacheSpecMonitoring;
108
+ /**
109
+ * pod configures pod-level scheduling and metadata.
110
+ *
111
+ * @schema VinylCacheSpec#pod
112
+ */
113
+ readonly pod?: VinylCacheSpecPod;
114
+ /**
115
+ * proxyProtocol enables PROXY protocol on a dedicated port for passing client IP.
116
+ *
117
+ * @schema VinylCacheSpec#proxyProtocol
118
+ */
119
+ readonly proxyProtocol?: VinylCacheSpecProxyProtocol;
120
+ /**
121
+ * replicas is the desired number of Varnish pods in the cluster.
122
+ *
123
+ * @schema VinylCacheSpec#replicas
124
+ */
125
+ readonly replicas: number;
126
+ /**
127
+ * resources sets CPU and memory requests/limits for the Varnish container.
128
+ *
129
+ * @schema VinylCacheSpec#resources
130
+ */
131
+ readonly resources?: VinylCacheSpecResources;
132
+ /**
133
+ * retry configures retry behaviour when VCL updates fail to apply.
134
+ *
135
+ * @schema VinylCacheSpec#retry
136
+ */
137
+ readonly retry?: VinylCacheSpecRetry;
138
+ /**
139
+ * service configures the Kubernetes Service created for traffic ingress.
140
+ *
141
+ * @schema VinylCacheSpec#service
142
+ */
143
+ readonly service?: VinylCacheSpecService;
144
+ /**
145
+ * storage configures one or more Varnish storage backends (malloc or file).
146
+ *
147
+ * @schema VinylCacheSpec#storage
148
+ */
149
+ readonly storage?: VinylCacheSpecStorage[];
150
+ /**
151
+ * varnishParameters are runtime parameters passed to varnishd via -p flags.
152
+ * Certain security-sensitive parameters are blocked by the admission webhook.
153
+ *
154
+ * @schema VinylCacheSpec#varnishParameters
155
+ */
156
+ readonly varnishParameters?: {
157
+ [key: string]: string;
158
+ };
159
+ /**
160
+ * vcl configures VCL generation: snippets injected into generated VCL subroutines,
161
+ * or a full VCL override.
162
+ *
163
+ * @schema VinylCacheSpec#vcl
164
+ */
165
+ readonly vcl?: VinylCacheSpecVcl;
166
+ }
167
+ /**
168
+ * Converts an object of type 'VinylCacheSpec' to JSON representation.
169
+ */
170
+ export declare function toJson_VinylCacheSpec(obj: VinylCacheSpec | undefined): Record<string, any> | undefined;
171
+ /**
172
+ * BackendSpec describes an upstream Kubernetes service used as a Varnish backend.
173
+ *
174
+ * @schema VinylCacheSpecBackends
175
+ */
176
+ export interface VinylCacheSpecBackends {
177
+ /**
178
+ * connectionParameters configures backend connection pool timeouts and limits.
179
+ *
180
+ * @schema VinylCacheSpecBackends#connectionParameters
181
+ */
182
+ readonly connectionParameters?: VinylCacheSpecBackendsConnectionParameters;
183
+ /**
184
+ * name is the VCL identifier for this backend. Must match ^[a-zA-Z][a-zA-Z0-9_]*$.
185
+ *
186
+ * @schema VinylCacheSpecBackends#name
187
+ */
188
+ readonly name: string;
189
+ /**
190
+ * port overrides the service port used for this backend.
191
+ *
192
+ * @schema VinylCacheSpecBackends#port
193
+ */
194
+ readonly port?: number;
195
+ /**
196
+ * probe configures the Varnish backend health probe.
197
+ *
198
+ * @schema VinylCacheSpecBackends#probe
199
+ */
200
+ readonly probe?: VinylCacheSpecBackendsProbe;
201
+ /**
202
+ * serviceRef references the Kubernetes Service in the same namespace.
203
+ *
204
+ * @schema VinylCacheSpecBackends#serviceRef
205
+ */
206
+ readonly serviceRef: VinylCacheSpecBackendsServiceRef;
207
+ /**
208
+ * weight is the relative weight for the director. 0 means standby (fallback director).
209
+ *
210
+ * @schema VinylCacheSpecBackends#weight
211
+ */
212
+ readonly weight?: number;
213
+ }
214
+ /**
215
+ * Converts an object of type 'VinylCacheSpecBackends' to JSON representation.
216
+ */
217
+ export declare function toJson_VinylCacheSpecBackends(obj: VinylCacheSpecBackends | undefined): Record<string, any> | undefined;
218
+ /**
219
+ * cluster configures Varnish clustering between pods.
220
+ *
221
+ * @schema VinylCacheSpecCluster
222
+ */
223
+ export interface VinylCacheSpecCluster {
224
+ /**
225
+ * enabled activates inter-pod clustering via a shard director.
226
+ *
227
+ * @schema VinylCacheSpecCluster#enabled
228
+ */
229
+ readonly enabled?: boolean;
230
+ /**
231
+ * peerRouting configures how requests are routed between Varnish peers.
232
+ *
233
+ * @schema VinylCacheSpecCluster#peerRouting
234
+ */
235
+ readonly peerRouting?: VinylCacheSpecClusterPeerRouting;
236
+ }
237
+ /**
238
+ * Converts an object of type 'VinylCacheSpecCluster' to JSON representation.
239
+ */
240
+ export declare function toJson_VinylCacheSpecCluster(obj: VinylCacheSpecCluster | undefined): Record<string, any> | undefined;
241
+ /**
242
+ * debounce configures a grace period before applying endpoint changes to Varnish,
243
+ * preventing thundering-herd on rapid endpoint churn.
244
+ *
245
+ * @schema VinylCacheSpecDebounce
246
+ */
247
+ export interface VinylCacheSpecDebounce {
248
+ /**
249
+ * duration is the time to wait after the last endpoint change before pushing a VCL update.
250
+ * This prevents thundering-herd on rapid endpoint churn. Default: 5s.
251
+ *
252
+ * @schema VinylCacheSpecDebounce#duration
253
+ */
254
+ readonly duration?: string;
255
+ }
256
+ /**
257
+ * Converts an object of type 'VinylCacheSpecDebounce' to JSON representation.
258
+ */
259
+ export declare function toJson_VinylCacheSpecDebounce(obj: VinylCacheSpecDebounce | undefined): Record<string, any> | undefined;
260
+ /**
261
+ * director configures how Varnish distributes requests across backend endpoints.
262
+ *
263
+ * @schema VinylCacheSpecDirector
264
+ */
265
+ export interface VinylCacheSpecDirector {
266
+ /**
267
+ * hash configures the hash director. Only used when type is "hash".
268
+ *
269
+ * @schema VinylCacheSpecDirector#hash
270
+ */
271
+ readonly hash?: VinylCacheSpecDirectorHash;
272
+ /**
273
+ * shard configures the shard director (consistent-hash). Only used when type is "shard".
274
+ *
275
+ * @schema VinylCacheSpecDirector#shard
276
+ */
277
+ readonly shard?: VinylCacheSpecDirectorShard;
278
+ /**
279
+ * type selects the Varnish director algorithm.
280
+ * "shard" (default) provides consistent hashing; "round_robin", "random", and "hash"
281
+ * are also supported.
282
+ *
283
+ * @schema VinylCacheSpecDirector#type
284
+ */
285
+ readonly type?: VinylCacheSpecDirectorType;
286
+ }
287
+ /**
288
+ * Converts an object of type 'VinylCacheSpecDirector' to JSON representation.
289
+ */
290
+ export declare function toJson_VinylCacheSpecDirector(obj: VinylCacheSpecDirector | undefined): Record<string, any> | undefined;
291
+ /**
292
+ * invalidation configures cache invalidation methods (PURGE, BAN, xkey).
293
+ *
294
+ * @schema VinylCacheSpecInvalidation
295
+ */
296
+ export interface VinylCacheSpecInvalidation {
297
+ /**
298
+ * ban configures BAN-based cache invalidation.
299
+ *
300
+ * @schema VinylCacheSpecInvalidation#ban
301
+ */
302
+ readonly ban?: VinylCacheSpecInvalidationBan;
303
+ /**
304
+ * purge configures HTTP PURGE-based cache invalidation.
305
+ *
306
+ * @schema VinylCacheSpecInvalidation#purge
307
+ */
308
+ readonly purge?: VinylCacheSpecInvalidationPurge;
309
+ /**
310
+ * xkey configures xkey-based surrogate key invalidation (requires vmod_xkey).
311
+ *
312
+ * @schema VinylCacheSpecInvalidation#xkey
313
+ */
314
+ readonly xkey?: VinylCacheSpecInvalidationXkey;
315
+ }
316
+ /**
317
+ * Converts an object of type 'VinylCacheSpecInvalidation' to JSON representation.
318
+ */
319
+ export declare function toJson_VinylCacheSpecInvalidation(obj: VinylCacheSpecInvalidation | undefined): Record<string, any> | undefined;
320
+ /**
321
+ * monitoring configures Prometheus metrics and alerting rules.
322
+ *
323
+ * @schema VinylCacheSpecMonitoring
324
+ */
325
+ export interface VinylCacheSpecMonitoring {
326
+ /**
327
+ * enabled activates Prometheus metrics scraping.
328
+ *
329
+ * @schema VinylCacheSpecMonitoring#enabled
330
+ */
331
+ readonly enabled?: boolean;
332
+ /**
333
+ * prometheusRules configures PrometheusRule objects for alerting.
334
+ *
335
+ * @schema VinylCacheSpecMonitoring#prometheusRules
336
+ */
337
+ readonly prometheusRules?: VinylCacheSpecMonitoringPrometheusRules;
338
+ /**
339
+ * serviceMonitor configures a ServiceMonitor for Prometheus Operator scraping.
340
+ *
341
+ * @schema VinylCacheSpecMonitoring#serviceMonitor
342
+ */
343
+ readonly serviceMonitor?: VinylCacheSpecMonitoringServiceMonitor;
344
+ }
345
+ /**
346
+ * Converts an object of type 'VinylCacheSpecMonitoring' to JSON representation.
347
+ */
348
+ export declare function toJson_VinylCacheSpecMonitoring(obj: VinylCacheSpecMonitoring | undefined): Record<string, any> | undefined;
349
+ /**
350
+ * pod configures pod-level scheduling and metadata.
351
+ *
352
+ * @schema VinylCacheSpecPod
353
+ */
354
+ export interface VinylCacheSpecPod {
355
+ /**
356
+ * affinity configures pod affinity and anti-affinity scheduling rules.
357
+ *
358
+ * @schema VinylCacheSpecPod#affinity
359
+ */
360
+ readonly affinity?: VinylCacheSpecPodAffinity;
361
+ /**
362
+ * annotations are added to each Varnish pod.
363
+ *
364
+ * @schema VinylCacheSpecPod#annotations
365
+ */
366
+ readonly annotations?: {
367
+ [key: string]: string;
368
+ };
369
+ /**
370
+ * labels are added to each Varnish pod (merged with operator-managed labels).
371
+ *
372
+ * @schema VinylCacheSpecPod#labels
373
+ */
374
+ readonly labels?: {
375
+ [key: string]: string;
376
+ };
377
+ /**
378
+ * nodeSelector constrains pods to nodes matching all specified labels.
379
+ *
380
+ * @schema VinylCacheSpecPod#nodeSelector
381
+ */
382
+ readonly nodeSelector?: {
383
+ [key: string]: string;
384
+ };
385
+ /**
386
+ * priorityClassName is the name of the PriorityClass for Varnish pods.
387
+ *
388
+ * @schema VinylCacheSpecPod#priorityClassName
389
+ */
390
+ readonly priorityClassName?: string;
391
+ /**
392
+ * tolerations allow pods to be scheduled on tainted nodes.
393
+ *
394
+ * @schema VinylCacheSpecPod#tolerations
395
+ */
396
+ readonly tolerations?: VinylCacheSpecPodTolerations[];
397
+ }
398
+ /**
399
+ * Converts an object of type 'VinylCacheSpecPod' to JSON representation.
400
+ */
401
+ export declare function toJson_VinylCacheSpecPod(obj: VinylCacheSpecPod | undefined): Record<string, any> | undefined;
402
+ /**
403
+ * proxyProtocol enables PROXY protocol on a dedicated port for passing client IP.
404
+ *
405
+ * @schema VinylCacheSpecProxyProtocol
406
+ */
407
+ export interface VinylCacheSpecProxyProtocol {
408
+ /**
409
+ * enabled activates PROXY protocol support.
410
+ *
411
+ * @schema VinylCacheSpecProxyProtocol#enabled
412
+ */
413
+ readonly enabled?: boolean;
414
+ /**
415
+ * port is the port on which PROXY protocol connections are accepted. Default: 8081.
416
+ *
417
+ * @schema VinylCacheSpecProxyProtocol#port
418
+ */
419
+ readonly port?: number;
420
+ }
421
+ /**
422
+ * Converts an object of type 'VinylCacheSpecProxyProtocol' to JSON representation.
423
+ */
424
+ export declare function toJson_VinylCacheSpecProxyProtocol(obj: VinylCacheSpecProxyProtocol | undefined): Record<string, any> | undefined;
425
+ /**
426
+ * resources sets CPU and memory requests/limits for the Varnish container.
427
+ *
428
+ * @schema VinylCacheSpecResources
429
+ */
430
+ export interface VinylCacheSpecResources {
431
+ /**
432
+ * Claims lists the names of resources, defined in spec.resourceClaims,
433
+ * that are used by this container.
434
+ *
435
+ * This field depends on the
436
+ * DynamicResourceAllocation feature gate.
437
+ *
438
+ * This field is immutable. It can only be set for containers.
439
+ *
440
+ * @schema VinylCacheSpecResources#claims
441
+ */
442
+ readonly claims?: VinylCacheSpecResourcesClaims[];
443
+ /**
444
+ * Limits describes the maximum amount of compute resources allowed.
445
+ * More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
446
+ *
447
+ * @schema VinylCacheSpecResources#limits
448
+ */
449
+ readonly limits?: {
450
+ [key: string]: VinylCacheSpecResourcesLimits;
451
+ };
452
+ /**
453
+ * Requests describes the minimum amount of compute resources required.
454
+ * If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
455
+ * otherwise to an implementation-defined value. Requests cannot exceed Limits.
456
+ * More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
457
+ *
458
+ * @schema VinylCacheSpecResources#requests
459
+ */
460
+ readonly requests?: {
461
+ [key: string]: VinylCacheSpecResourcesRequests;
462
+ };
463
+ }
464
+ /**
465
+ * Converts an object of type 'VinylCacheSpecResources' to JSON representation.
466
+ */
467
+ export declare function toJson_VinylCacheSpecResources(obj: VinylCacheSpecResources | undefined): Record<string, any> | undefined;
468
+ /**
469
+ * retry configures retry behaviour when VCL updates fail to apply.
470
+ *
471
+ * @schema VinylCacheSpecRetry
472
+ */
473
+ export interface VinylCacheSpecRetry {
474
+ /**
475
+ * backoffBase is the initial backoff duration between retry attempts. Default: 5s.
476
+ *
477
+ * @schema VinylCacheSpecRetry#backoffBase
478
+ */
479
+ readonly backoffBase?: string;
480
+ /**
481
+ * backoffMax is the maximum backoff duration (exponential backoff cap). Default: 5m.
482
+ *
483
+ * @schema VinylCacheSpecRetry#backoffMax
484
+ */
485
+ readonly backoffMax?: string;
486
+ /**
487
+ * maxAttempts is the maximum number of VCL push attempts before the operator
488
+ * transitions to Error phase. Default: 3.
489
+ *
490
+ * @schema VinylCacheSpecRetry#maxAttempts
491
+ */
492
+ readonly maxAttempts?: number;
493
+ }
494
+ /**
495
+ * Converts an object of type 'VinylCacheSpecRetry' to JSON representation.
496
+ */
497
+ export declare function toJson_VinylCacheSpecRetry(obj: VinylCacheSpecRetry | undefined): Record<string, any> | undefined;
498
+ /**
499
+ * service configures the Kubernetes Service created for traffic ingress.
500
+ *
501
+ * @schema VinylCacheSpecService
502
+ */
503
+ export interface VinylCacheSpecService {
504
+ /**
505
+ * annotations are added to the Service object.
506
+ *
507
+ * @schema VinylCacheSpecService#annotations
508
+ */
509
+ readonly annotations?: {
510
+ [key: string]: string;
511
+ };
512
+ /**
513
+ * type sets the Kubernetes Service type (ClusterIP, NodePort, LoadBalancer).
514
+ *
515
+ * @schema VinylCacheSpecService#type
516
+ */
517
+ readonly type?: VinylCacheSpecServiceType;
518
+ }
519
+ /**
520
+ * Converts an object of type 'VinylCacheSpecService' to JSON representation.
521
+ */
522
+ export declare function toJson_VinylCacheSpecService(obj: VinylCacheSpecService | undefined): Record<string, any> | undefined;
523
+ /**
524
+ * StorageSpec configures a Varnish storage backend.
525
+ *
526
+ * @schema VinylCacheSpecStorage
527
+ */
528
+ export interface VinylCacheSpecStorage {
529
+ /**
530
+ * name is the internal storage identifier used in varnishd -s arguments.
531
+ *
532
+ * @schema VinylCacheSpecStorage#name
533
+ */
534
+ readonly name: string;
535
+ /**
536
+ * path is the filesystem path for file-type storage.
537
+ *
538
+ * @schema VinylCacheSpecStorage#path
539
+ */
540
+ readonly path?: string;
541
+ /**
542
+ * size is the storage allocation as a Kubernetes resource quantity (e.g. "1Gi").
543
+ * The operator converts to bytes for varnishd.
544
+ *
545
+ * @schema VinylCacheSpecStorage#size
546
+ */
547
+ readonly size?: VinylCacheSpecStorageSize;
548
+ /**
549
+ * type is the storage backend type. Only "malloc" and "file" are permitted.
550
+ * "persistent", "umem", and "default" are rejected by the admission webhook.
551
+ *
552
+ * @schema VinylCacheSpecStorage#type
553
+ */
554
+ readonly type: VinylCacheSpecStorageType;
555
+ }
556
+ /**
557
+ * Converts an object of type 'VinylCacheSpecStorage' to JSON representation.
558
+ */
559
+ export declare function toJson_VinylCacheSpecStorage(obj: VinylCacheSpecStorage | undefined): Record<string, any> | undefined;
560
+ /**
561
+ * vcl configures VCL generation: snippets injected into generated VCL subroutines,
562
+ * or a full VCL override.
563
+ *
564
+ * @schema VinylCacheSpecVcl
565
+ */
566
+ export interface VinylCacheSpecVcl {
567
+ /**
568
+ * fullOverride replaces the entire generated VCL with a custom VCL string.
569
+ * Use with caution — this disables all structured configuration.
570
+ *
571
+ * @schema VinylCacheSpecVcl#fullOverride
572
+ */
573
+ readonly fullOverride?: string;
574
+ /**
575
+ * snippets provides VCL code injected into each generated subroutine.
576
+ *
577
+ * @schema VinylCacheSpecVcl#snippets
578
+ */
579
+ readonly snippets?: VinylCacheSpecVclSnippets;
580
+ }
581
+ /**
582
+ * Converts an object of type 'VinylCacheSpecVcl' to JSON representation.
583
+ */
584
+ export declare function toJson_VinylCacheSpecVcl(obj: VinylCacheSpecVcl | undefined): Record<string, any> | undefined;
585
+ /**
586
+ * connectionParameters configures backend connection pool timeouts and limits.
587
+ *
588
+ * @schema VinylCacheSpecBackendsConnectionParameters
589
+ */
590
+ export interface VinylCacheSpecBackendsConnectionParameters {
591
+ /**
592
+ * betweenBytesTimeout is the maximum time to wait between bytes of the response body.
593
+ *
594
+ * @schema VinylCacheSpecBackendsConnectionParameters#betweenBytesTimeout
595
+ */
596
+ readonly betweenBytesTimeout?: string;
597
+ /**
598
+ * connectTimeout is the maximum time to establish a TCP connection to the backend.
599
+ *
600
+ * @schema VinylCacheSpecBackendsConnectionParameters#connectTimeout
601
+ */
602
+ readonly connectTimeout?: string;
603
+ /**
604
+ * firstByteTimeout is the maximum time to wait for the first byte of the response.
605
+ *
606
+ * @schema VinylCacheSpecBackendsConnectionParameters#firstByteTimeout
607
+ */
608
+ readonly firstByteTimeout?: string;
609
+ /**
610
+ * idleTimeout is the maximum time an idle connection may be reused. Should be less
611
+ * than the backend's keep-alive timeout to avoid 503 races.
612
+ *
613
+ * @schema VinylCacheSpecBackendsConnectionParameters#idleTimeout
614
+ */
615
+ readonly idleTimeout?: string;
616
+ /**
617
+ * maxConnections is the maximum number of concurrent connections to the backend.
618
+ *
619
+ * @schema VinylCacheSpecBackendsConnectionParameters#maxConnections
620
+ */
621
+ readonly maxConnections?: number;
622
+ }
623
+ /**
624
+ * Converts an object of type 'VinylCacheSpecBackendsConnectionParameters' to JSON representation.
625
+ */
626
+ export declare function toJson_VinylCacheSpecBackendsConnectionParameters(obj: VinylCacheSpecBackendsConnectionParameters | undefined): Record<string, any> | undefined;
627
+ /**
628
+ * probe configures the Varnish backend health probe.
629
+ *
630
+ * @schema VinylCacheSpecBackendsProbe
631
+ */
632
+ export interface VinylCacheSpecBackendsProbe {
633
+ /**
634
+ * expectedResponse is the expected HTTP response status code. Defaults to 200.
635
+ *
636
+ * @default 200.
637
+ * @schema VinylCacheSpecBackendsProbe#expectedResponse
638
+ */
639
+ readonly expectedResponse?: number;
640
+ /**
641
+ * interval is how often to probe the backend.
642
+ *
643
+ * @schema VinylCacheSpecBackendsProbe#interval
644
+ */
645
+ readonly interval?: string;
646
+ /**
647
+ * threshold is the minimum number of successful probes within the window for the backend
648
+ * to be considered healthy.
649
+ *
650
+ * @schema VinylCacheSpecBackendsProbe#threshold
651
+ */
652
+ readonly threshold?: number;
653
+ /**
654
+ * timeout is the maximum time to wait for a probe response.
655
+ *
656
+ * @schema VinylCacheSpecBackendsProbe#timeout
657
+ */
658
+ readonly timeout?: string;
659
+ /**
660
+ * url is the URL to probe. If empty, the backend's root path is used.
661
+ *
662
+ * @schema VinylCacheSpecBackendsProbe#url
663
+ */
664
+ readonly url?: string;
665
+ /**
666
+ * window is the number of most recent probes to consider for threshold evaluation.
667
+ *
668
+ * @schema VinylCacheSpecBackendsProbe#window
669
+ */
670
+ readonly window?: number;
671
+ }
672
+ /**
673
+ * Converts an object of type 'VinylCacheSpecBackendsProbe' to JSON representation.
674
+ */
675
+ export declare function toJson_VinylCacheSpecBackendsProbe(obj: VinylCacheSpecBackendsProbe | undefined): Record<string, any> | undefined;
676
+ /**
677
+ * serviceRef references the Kubernetes Service in the same namespace.
678
+ *
679
+ * @schema VinylCacheSpecBackendsServiceRef
680
+ */
681
+ export interface VinylCacheSpecBackendsServiceRef {
682
+ /**
683
+ * name is the Kubernetes Service name.
684
+ *
685
+ * @schema VinylCacheSpecBackendsServiceRef#name
686
+ */
687
+ readonly name: string;
688
+ }
689
+ /**
690
+ * Converts an object of type 'VinylCacheSpecBackendsServiceRef' to JSON representation.
691
+ */
692
+ export declare function toJson_VinylCacheSpecBackendsServiceRef(obj: VinylCacheSpecBackendsServiceRef | undefined): Record<string, any> | undefined;
693
+ /**
694
+ * peerRouting configures how requests are routed between Varnish peers.
695
+ *
696
+ * @schema VinylCacheSpecClusterPeerRouting
697
+ */
698
+ export interface VinylCacheSpecClusterPeerRouting {
699
+ /**
700
+ * type is the routing strategy between Varnish pods. Only "shard" is supported.
701
+ *
702
+ * @schema VinylCacheSpecClusterPeerRouting#type
703
+ */
704
+ readonly type?: VinylCacheSpecClusterPeerRoutingType;
705
+ }
706
+ /**
707
+ * Converts an object of type 'VinylCacheSpecClusterPeerRouting' to JSON representation.
708
+ */
709
+ export declare function toJson_VinylCacheSpecClusterPeerRouting(obj: VinylCacheSpecClusterPeerRouting | undefined): Record<string, any> | undefined;
710
+ /**
711
+ * hash configures the hash director. Only used when type is "hash".
712
+ *
713
+ * @schema VinylCacheSpecDirectorHash
714
+ */
715
+ export interface VinylCacheSpecDirectorHash {
716
+ /**
717
+ * header is the request header name used as the hash key.
718
+ *
719
+ * @schema VinylCacheSpecDirectorHash#header
720
+ */
721
+ readonly header?: string;
722
+ }
723
+ /**
724
+ * Converts an object of type 'VinylCacheSpecDirectorHash' to JSON representation.
725
+ */
726
+ export declare function toJson_VinylCacheSpecDirectorHash(obj: VinylCacheSpecDirectorHash | undefined): Record<string, any> | undefined;
727
+ /**
728
+ * shard configures the shard director (consistent-hash). Only used when type is "shard".
729
+ *
730
+ * @schema VinylCacheSpecDirectorShard
731
+ */
732
+ export interface VinylCacheSpecDirectorShard {
733
+ /**
734
+ * by determines what value is hashed for shard selection. "HASH" uses the Varnish
735
+ * hash (default); "URL" uses the request URL.
736
+ *
737
+ * @schema VinylCacheSpecDirectorShard#by
738
+ */
739
+ readonly by?: VinylCacheSpecDirectorShardBy;
740
+ /**
741
+ * healthy controls which backends the director considers when selecting a shard.
742
+ * "CHOSEN" (default) only considers the chosen backend healthy; "ALL" requires all
743
+ * backends to be healthy.
744
+ *
745
+ * @schema VinylCacheSpecDirectorShard#healthy
746
+ */
747
+ readonly healthy?: VinylCacheSpecDirectorShardHealthy;
748
+ /**
749
+ * rampup is the time after adding a backend before it receives its full share of traffic,
750
+ * preventing thundering-herd. Default: 30s.
751
+ *
752
+ * @schema VinylCacheSpecDirectorShard#rampup
753
+ */
754
+ readonly rampup?: string;
755
+ /**
756
+ * replicas is the number of Ketama replicas per backend in the hash ring. Default: 67.
757
+ *
758
+ * @schema VinylCacheSpecDirectorShard#replicas
759
+ */
760
+ readonly replicas?: number;
761
+ /**
762
+ * warmup is the proportion of requests (0.0–1.0) sent to the alternative backend
763
+ * to pre-populate its cache. Default: 0.1. Must be between 0.0 and 1.0.
764
+ *
765
+ * @schema VinylCacheSpecDirectorShard#warmup
766
+ */
767
+ readonly warmup?: number;
768
+ }
769
+ /**
770
+ * Converts an object of type 'VinylCacheSpecDirectorShard' to JSON representation.
771
+ */
772
+ export declare function toJson_VinylCacheSpecDirectorShard(obj: VinylCacheSpecDirectorShard | undefined): Record<string, any> | undefined;
773
+ /**
774
+ * type selects the Varnish director algorithm.
775
+ * "shard" (default) provides consistent hashing; "round_robin", "random", and "hash"
776
+ * are also supported.
777
+ *
778
+ * @schema VinylCacheSpecDirectorType
779
+ */
780
+ export declare enum VinylCacheSpecDirectorType {
781
+ /** shard */
782
+ SHARD = "shard",
783
+ /** round_robin */
784
+ ROUND_UNDERSCORE_ROBIN = "round_robin",
785
+ /** random */
786
+ RANDOM = "random",
787
+ /** hash */
788
+ HASH = "hash"
789
+ }
790
+ /**
791
+ * ban configures BAN-based cache invalidation.
792
+ *
793
+ * @schema VinylCacheSpecInvalidationBan
794
+ */
795
+ export interface VinylCacheSpecInvalidationBan {
796
+ /**
797
+ * allowedSources is a list of CIDR ranges permitted to send BAN requests.
798
+ *
799
+ * @schema VinylCacheSpecInvalidationBan#allowedSources
800
+ */
801
+ readonly allowedSources?: string[];
802
+ /**
803
+ * enabled activates the BAN invalidation handler.
804
+ *
805
+ * @schema VinylCacheSpecInvalidationBan#enabled
806
+ */
807
+ readonly enabled?: boolean;
808
+ /**
809
+ * rateLimitPerMinute limits BAN requests per minute. 0 means no limit.
810
+ *
811
+ * @schema VinylCacheSpecInvalidationBan#rateLimitPerMinute
812
+ */
813
+ readonly rateLimitPerMinute?: number;
814
+ }
815
+ /**
816
+ * Converts an object of type 'VinylCacheSpecInvalidationBan' to JSON representation.
817
+ */
818
+ export declare function toJson_VinylCacheSpecInvalidationBan(obj: VinylCacheSpecInvalidationBan | undefined): Record<string, any> | undefined;
819
+ /**
820
+ * purge configures HTTP PURGE-based cache invalidation.
821
+ *
822
+ * @schema VinylCacheSpecInvalidationPurge
823
+ */
824
+ export interface VinylCacheSpecInvalidationPurge {
825
+ /**
826
+ * allowedSources is a list of CIDR ranges permitted to send PURGE requests.
827
+ * If empty, no source restriction is applied.
828
+ *
829
+ * @schema VinylCacheSpecInvalidationPurge#allowedSources
830
+ */
831
+ readonly allowedSources?: string[];
832
+ /**
833
+ * enabled activates the PURGE invalidation handler.
834
+ *
835
+ * @schema VinylCacheSpecInvalidationPurge#enabled
836
+ */
837
+ readonly enabled?: boolean;
838
+ /**
839
+ * soft enables soft purges, which mark objects as expired rather than removing them.
840
+ * This allows Varnish to serve stale content while revalidating. Default: true.
841
+ *
842
+ * @schema VinylCacheSpecInvalidationPurge#soft
843
+ */
844
+ readonly soft?: boolean;
845
+ }
846
+ /**
847
+ * Converts an object of type 'VinylCacheSpecInvalidationPurge' to JSON representation.
848
+ */
849
+ export declare function toJson_VinylCacheSpecInvalidationPurge(obj: VinylCacheSpecInvalidationPurge | undefined): Record<string, any> | undefined;
850
+ /**
851
+ * xkey configures xkey-based surrogate key invalidation (requires vmod_xkey).
852
+ *
853
+ * @schema VinylCacheSpecInvalidationXkey
854
+ */
855
+ export interface VinylCacheSpecInvalidationXkey {
856
+ /**
857
+ * allowedSources is a list of CIDR ranges permitted to send xkey invalidation requests.
858
+ *
859
+ * @schema VinylCacheSpecInvalidationXkey#allowedSources
860
+ */
861
+ readonly allowedSources?: string[];
862
+ /**
863
+ * enabled activates xkey-based invalidation.
864
+ *
865
+ * @schema VinylCacheSpecInvalidationXkey#enabled
866
+ */
867
+ readonly enabled?: boolean;
868
+ /**
869
+ * softPurge enables soft purging via xkey. Default: true.
870
+ *
871
+ * @schema VinylCacheSpecInvalidationXkey#softPurge
872
+ */
873
+ readonly softPurge?: boolean;
874
+ }
875
+ /**
876
+ * Converts an object of type 'VinylCacheSpecInvalidationXkey' to JSON representation.
877
+ */
878
+ export declare function toJson_VinylCacheSpecInvalidationXkey(obj: VinylCacheSpecInvalidationXkey | undefined): Record<string, any> | undefined;
879
+ /**
880
+ * prometheusRules configures PrometheusRule objects for alerting.
881
+ *
882
+ * @schema VinylCacheSpecMonitoringPrometheusRules
883
+ */
884
+ export interface VinylCacheSpecMonitoringPrometheusRules {
885
+ /**
886
+ * enabled creates a PrometheusRule with default alerting rules.
887
+ *
888
+ * @schema VinylCacheSpecMonitoringPrometheusRules#enabled
889
+ */
890
+ readonly enabled?: boolean;
891
+ }
892
+ /**
893
+ * Converts an object of type 'VinylCacheSpecMonitoringPrometheusRules' to JSON representation.
894
+ */
895
+ export declare function toJson_VinylCacheSpecMonitoringPrometheusRules(obj: VinylCacheSpecMonitoringPrometheusRules | undefined): Record<string, any> | undefined;
896
+ /**
897
+ * serviceMonitor configures a ServiceMonitor for Prometheus Operator scraping.
898
+ *
899
+ * @schema VinylCacheSpecMonitoringServiceMonitor
900
+ */
901
+ export interface VinylCacheSpecMonitoringServiceMonitor {
902
+ /**
903
+ * enabled creates a ServiceMonitor targeting the Varnish metrics endpoint.
904
+ *
905
+ * @schema VinylCacheSpecMonitoringServiceMonitor#enabled
906
+ */
907
+ readonly enabled?: boolean;
908
+ /**
909
+ * interval is the scrape interval (e.g. "30s"). Defaults to the Prometheus global interval.
910
+ *
911
+ * @default the Prometheus global interval.
912
+ * @schema VinylCacheSpecMonitoringServiceMonitor#interval
913
+ */
914
+ readonly interval?: string;
915
+ }
916
+ /**
917
+ * Converts an object of type 'VinylCacheSpecMonitoringServiceMonitor' to JSON representation.
918
+ */
919
+ export declare function toJson_VinylCacheSpecMonitoringServiceMonitor(obj: VinylCacheSpecMonitoringServiceMonitor | undefined): Record<string, any> | undefined;
920
+ /**
921
+ * affinity configures pod affinity and anti-affinity scheduling rules.
922
+ *
923
+ * @schema VinylCacheSpecPodAffinity
924
+ */
925
+ export interface VinylCacheSpecPodAffinity {
926
+ /**
927
+ * Describes node affinity scheduling rules for the pod.
928
+ *
929
+ * @schema VinylCacheSpecPodAffinity#nodeAffinity
930
+ */
931
+ readonly nodeAffinity?: VinylCacheSpecPodAffinityNodeAffinity;
932
+ /**
933
+ * Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
934
+ *
935
+ * @schema VinylCacheSpecPodAffinity#podAffinity
936
+ */
937
+ readonly podAffinity?: VinylCacheSpecPodAffinityPodAffinity;
938
+ /**
939
+ * Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
940
+ *
941
+ * @schema VinylCacheSpecPodAffinity#podAntiAffinity
942
+ */
943
+ readonly podAntiAffinity?: VinylCacheSpecPodAffinityPodAntiAffinity;
944
+ }
945
+ /**
946
+ * Converts an object of type 'VinylCacheSpecPodAffinity' to JSON representation.
947
+ */
948
+ export declare function toJson_VinylCacheSpecPodAffinity(obj: VinylCacheSpecPodAffinity | undefined): Record<string, any> | undefined;
949
+ /**
950
+ * The pod this Toleration is attached to tolerates any taint that matches
951
+ * the triple <key,value,effect> using the matching operator <operator>.
952
+ *
953
+ * @schema VinylCacheSpecPodTolerations
954
+ */
955
+ export interface VinylCacheSpecPodTolerations {
956
+ /**
957
+ * Effect indicates the taint effect to match. Empty means match all taint effects.
958
+ * When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute.
959
+ *
960
+ * @schema VinylCacheSpecPodTolerations#effect
961
+ */
962
+ readonly effect?: string;
963
+ /**
964
+ * Key is the taint key that the toleration applies to. Empty means match all taint keys.
965
+ * If the key is empty, operator must be Exists; this combination means to match all values and all keys.
966
+ *
967
+ * @schema VinylCacheSpecPodTolerations#key
968
+ */
969
+ readonly key?: string;
970
+ /**
971
+ * Operator represents a key's relationship to the value.
972
+ * Valid operators are Exists, Equal, Lt, and Gt. Defaults to Equal.
973
+ * Exists is equivalent to wildcard for value, so that a pod can
974
+ * tolerate all taints of a particular category.
975
+ * Lt and Gt perform numeric comparisons (requires feature gate TaintTolerationComparisonOperators).
976
+ *
977
+ * @default Equal.
978
+ * @schema VinylCacheSpecPodTolerations#operator
979
+ */
980
+ readonly operator?: string;
981
+ /**
982
+ * TolerationSeconds represents the period of time the toleration (which must be
983
+ * of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default,
984
+ * it is not set, which means tolerate the taint forever (do not evict). Zero and
985
+ * negative values will be treated as 0 (evict immediately) by the system.
986
+ *
987
+ * @schema VinylCacheSpecPodTolerations#tolerationSeconds
988
+ */
989
+ readonly tolerationSeconds?: number;
990
+ /**
991
+ * Value is the taint value the toleration matches to.
992
+ * If the operator is Exists, the value should be empty, otherwise just a regular string.
993
+ *
994
+ * @schema VinylCacheSpecPodTolerations#value
995
+ */
996
+ readonly value?: string;
997
+ }
998
+ /**
999
+ * Converts an object of type 'VinylCacheSpecPodTolerations' to JSON representation.
1000
+ */
1001
+ export declare function toJson_VinylCacheSpecPodTolerations(obj: VinylCacheSpecPodTolerations | undefined): Record<string, any> | undefined;
1002
+ /**
1003
+ * ResourceClaim references one entry in PodSpec.ResourceClaims.
1004
+ *
1005
+ * @schema VinylCacheSpecResourcesClaims
1006
+ */
1007
+ export interface VinylCacheSpecResourcesClaims {
1008
+ /**
1009
+ * Name must match the name of one entry in pod.spec.resourceClaims of
1010
+ * the Pod where this field is used. It makes that resource available
1011
+ * inside a container.
1012
+ *
1013
+ * @schema VinylCacheSpecResourcesClaims#name
1014
+ */
1015
+ readonly name: string;
1016
+ /**
1017
+ * Request is the name chosen for a request in the referenced claim.
1018
+ * If empty, everything from the claim is made available, otherwise
1019
+ * only the result of this request.
1020
+ *
1021
+ * @schema VinylCacheSpecResourcesClaims#request
1022
+ */
1023
+ readonly request?: string;
1024
+ }
1025
+ /**
1026
+ * Converts an object of type 'VinylCacheSpecResourcesClaims' to JSON representation.
1027
+ */
1028
+ export declare function toJson_VinylCacheSpecResourcesClaims(obj: VinylCacheSpecResourcesClaims | undefined): Record<string, any> | undefined;
1029
+ /**
1030
+ * @schema VinylCacheSpecResourcesLimits
1031
+ */
1032
+ export declare class VinylCacheSpecResourcesLimits {
1033
+ readonly value: number | string;
1034
+ static fromNumber(value: number): VinylCacheSpecResourcesLimits;
1035
+ static fromString(value: string): VinylCacheSpecResourcesLimits;
1036
+ private constructor();
1037
+ }
1038
+ /**
1039
+ * @schema VinylCacheSpecResourcesRequests
1040
+ */
1041
+ export declare class VinylCacheSpecResourcesRequests {
1042
+ readonly value: number | string;
1043
+ static fromNumber(value: number): VinylCacheSpecResourcesRequests;
1044
+ static fromString(value: string): VinylCacheSpecResourcesRequests;
1045
+ private constructor();
1046
+ }
1047
+ /**
1048
+ * type sets the Kubernetes Service type (ClusterIP, NodePort, LoadBalancer).
1049
+ *
1050
+ * @schema VinylCacheSpecServiceType
1051
+ */
1052
+ export declare enum VinylCacheSpecServiceType {
1053
+ /** ClusterIP */
1054
+ CLUSTER_IP = "ClusterIP",
1055
+ /** NodePort */
1056
+ NODE_PORT = "NodePort",
1057
+ /** LoadBalancer */
1058
+ LOAD_BALANCER = "LoadBalancer"
1059
+ }
1060
+ /**
1061
+ * size is the storage allocation as a Kubernetes resource quantity (e.g. "1Gi").
1062
+ * The operator converts to bytes for varnishd.
1063
+ *
1064
+ * @schema VinylCacheSpecStorageSize
1065
+ */
1066
+ export declare class VinylCacheSpecStorageSize {
1067
+ readonly value: number | string;
1068
+ static fromNumber(value: number): VinylCacheSpecStorageSize;
1069
+ static fromString(value: string): VinylCacheSpecStorageSize;
1070
+ private constructor();
1071
+ }
1072
+ /**
1073
+ * type is the storage backend type. Only "malloc" and "file" are permitted.
1074
+ * "persistent", "umem", and "default" are rejected by the admission webhook.
1075
+ *
1076
+ * @schema VinylCacheSpecStorageType
1077
+ */
1078
+ export declare enum VinylCacheSpecStorageType {
1079
+ /** malloc */
1080
+ MALLOC = "malloc",
1081
+ /** file */
1082
+ FILE = "file"
1083
+ }
1084
+ /**
1085
+ * snippets provides VCL code injected into each generated subroutine.
1086
+ *
1087
+ * @schema VinylCacheSpecVclSnippets
1088
+ */
1089
+ export interface VinylCacheSpecVclSnippets {
1090
+ /**
1091
+ * header is inserted at the top of the VCL file, before any subroutines.
1092
+ * Use for import statements and global declarations.
1093
+ *
1094
+ * @schema VinylCacheSpecVclSnippets#header
1095
+ */
1096
+ readonly header?: string;
1097
+ /**
1098
+ * vclBackendError is inserted into vcl_backend_error.
1099
+ *
1100
+ * @schema VinylCacheSpecVclSnippets#vclBackendError
1101
+ */
1102
+ readonly vclBackendError?: string;
1103
+ /**
1104
+ * vclBackendFetch is inserted into vcl_backend_fetch.
1105
+ *
1106
+ * @schema VinylCacheSpecVclSnippets#vclBackendFetch
1107
+ */
1108
+ readonly vclBackendFetch?: string;
1109
+ /**
1110
+ * vclBackendResponse is inserted into vcl_backend_response.
1111
+ *
1112
+ * @schema VinylCacheSpecVclSnippets#vclBackendResponse
1113
+ */
1114
+ readonly vclBackendResponse?: string;
1115
+ /**
1116
+ * vclDeliver is inserted into vcl_deliver.
1117
+ *
1118
+ * @schema VinylCacheSpecVclSnippets#vclDeliver
1119
+ */
1120
+ readonly vclDeliver?: string;
1121
+ /**
1122
+ * vclFini is inserted into vcl_fini.
1123
+ *
1124
+ * @schema VinylCacheSpecVclSnippets#vclFini
1125
+ */
1126
+ readonly vclFini?: string;
1127
+ /**
1128
+ * vclHash is inserted into vcl_hash.
1129
+ *
1130
+ * @schema VinylCacheSpecVclSnippets#vclHash
1131
+ */
1132
+ readonly vclHash?: string;
1133
+ /**
1134
+ * vclHit is inserted into vcl_hit.
1135
+ *
1136
+ * @schema VinylCacheSpecVclSnippets#vclHit
1137
+ */
1138
+ readonly vclHit?: string;
1139
+ /**
1140
+ * vclInit is inserted into the vcl_init subroutine after director initialisation.
1141
+ *
1142
+ * @schema VinylCacheSpecVclSnippets#vclInit
1143
+ */
1144
+ readonly vclInit?: string;
1145
+ /**
1146
+ * vclMiss is inserted into vcl_miss.
1147
+ *
1148
+ * @schema VinylCacheSpecVclSnippets#vclMiss
1149
+ */
1150
+ readonly vclMiss?: string;
1151
+ /**
1152
+ * vclPass is inserted into vcl_pass.
1153
+ *
1154
+ * @schema VinylCacheSpecVclSnippets#vclPass
1155
+ */
1156
+ readonly vclPass?: string;
1157
+ /**
1158
+ * vclPipe is inserted into vcl_pipe.
1159
+ *
1160
+ * @schema VinylCacheSpecVclSnippets#vclPipe
1161
+ */
1162
+ readonly vclPipe?: string;
1163
+ /**
1164
+ * vclPurge is inserted into vcl_purge.
1165
+ *
1166
+ * @schema VinylCacheSpecVclSnippets#vclPurge
1167
+ */
1168
+ readonly vclPurge?: string;
1169
+ /**
1170
+ * vclRecv is inserted into vcl_recv after generated routing logic, before return().
1171
+ *
1172
+ * @schema VinylCacheSpecVclSnippets#vclRecv
1173
+ */
1174
+ readonly vclRecv?: string;
1175
+ /**
1176
+ * vclSynth is inserted into vcl_synth.
1177
+ *
1178
+ * @schema VinylCacheSpecVclSnippets#vclSynth
1179
+ */
1180
+ readonly vclSynth?: string;
1181
+ }
1182
+ /**
1183
+ * Converts an object of type 'VinylCacheSpecVclSnippets' to JSON representation.
1184
+ */
1185
+ export declare function toJson_VinylCacheSpecVclSnippets(obj: VinylCacheSpecVclSnippets | undefined): Record<string, any> | undefined;
1186
+ /**
1187
+ * type is the routing strategy between Varnish pods. Only "shard" is supported.
1188
+ *
1189
+ * @schema VinylCacheSpecClusterPeerRoutingType
1190
+ */
1191
+ export declare enum VinylCacheSpecClusterPeerRoutingType {
1192
+ /** shard */
1193
+ SHARD = "shard"
1194
+ }
1195
+ /**
1196
+ * by determines what value is hashed for shard selection. "HASH" uses the Varnish
1197
+ * hash (default); "URL" uses the request URL.
1198
+ *
1199
+ * @schema VinylCacheSpecDirectorShardBy
1200
+ */
1201
+ export declare enum VinylCacheSpecDirectorShardBy {
1202
+ /** HASH */
1203
+ HASH = "HASH",
1204
+ /** URL */
1205
+ URL = "URL"
1206
+ }
1207
+ /**
1208
+ * healthy controls which backends the director considers when selecting a shard.
1209
+ * "CHOSEN" (default) only considers the chosen backend healthy; "ALL" requires all
1210
+ * backends to be healthy.
1211
+ *
1212
+ * @schema VinylCacheSpecDirectorShardHealthy
1213
+ */
1214
+ export declare enum VinylCacheSpecDirectorShardHealthy {
1215
+ /** CHOSEN */
1216
+ CHOSEN = "CHOSEN",
1217
+ /** ALL */
1218
+ ALL = "ALL"
1219
+ }
1220
+ /**
1221
+ * Describes node affinity scheduling rules for the pod.
1222
+ *
1223
+ * @schema VinylCacheSpecPodAffinityNodeAffinity
1224
+ */
1225
+ export interface VinylCacheSpecPodAffinityNodeAffinity {
1226
+ /**
1227
+ * The scheduler will prefer to schedule pods to nodes that satisfy
1228
+ * the affinity expressions specified by this field, but it may choose
1229
+ * a node that violates one or more of the expressions. The node that is
1230
+ * most preferred is the one with the greatest sum of weights, i.e.
1231
+ * for each node that meets all of the scheduling requirements (resource
1232
+ * request, requiredDuringScheduling affinity expressions, etc.),
1233
+ * compute a sum by iterating through the elements of this field and adding
1234
+ * "weight" to the sum if the node matches the corresponding matchExpressions; the
1235
+ * node(s) with the highest sum are the most preferred.
1236
+ *
1237
+ * @schema VinylCacheSpecPodAffinityNodeAffinity#preferredDuringSchedulingIgnoredDuringExecution
1238
+ */
1239
+ readonly preferredDuringSchedulingIgnoredDuringExecution?: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution[];
1240
+ /**
1241
+ * If the affinity requirements specified by this field are not met at
1242
+ * scheduling time, the pod will not be scheduled onto the node.
1243
+ * If the affinity requirements specified by this field cease to be met
1244
+ * at some point during pod execution (e.g. due to an update), the system
1245
+ * may or may not try to eventually evict the pod from its node.
1246
+ *
1247
+ * @schema VinylCacheSpecPodAffinityNodeAffinity#requiredDuringSchedulingIgnoredDuringExecution
1248
+ */
1249
+ readonly requiredDuringSchedulingIgnoredDuringExecution?: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution;
1250
+ }
1251
+ /**
1252
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinity' to JSON representation.
1253
+ */
1254
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinity(obj: VinylCacheSpecPodAffinityNodeAffinity | undefined): Record<string, any> | undefined;
1255
+ /**
1256
+ * Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)).
1257
+ *
1258
+ * @schema VinylCacheSpecPodAffinityPodAffinity
1259
+ */
1260
+ export interface VinylCacheSpecPodAffinityPodAffinity {
1261
+ /**
1262
+ * The scheduler will prefer to schedule pods to nodes that satisfy
1263
+ * the affinity expressions specified by this field, but it may choose
1264
+ * a node that violates one or more of the expressions. The node that is
1265
+ * most preferred is the one with the greatest sum of weights, i.e.
1266
+ * for each node that meets all of the scheduling requirements (resource
1267
+ * request, requiredDuringScheduling affinity expressions, etc.),
1268
+ * compute a sum by iterating through the elements of this field and adding
1269
+ * "weight" to the sum if the node has pods which matches the corresponding podAffinityTerm; the
1270
+ * node(s) with the highest sum are the most preferred.
1271
+ *
1272
+ * @schema VinylCacheSpecPodAffinityPodAffinity#preferredDuringSchedulingIgnoredDuringExecution
1273
+ */
1274
+ readonly preferredDuringSchedulingIgnoredDuringExecution?: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution[];
1275
+ /**
1276
+ * If the affinity requirements specified by this field are not met at
1277
+ * scheduling time, the pod will not be scheduled onto the node.
1278
+ * If the affinity requirements specified by this field cease to be met
1279
+ * at some point during pod execution (e.g. due to a pod label update), the
1280
+ * system may or may not try to eventually evict the pod from its node.
1281
+ * When there are multiple elements, the lists of nodes corresponding to each
1282
+ * podAffinityTerm are intersected, i.e. all terms must be satisfied.
1283
+ *
1284
+ * @schema VinylCacheSpecPodAffinityPodAffinity#requiredDuringSchedulingIgnoredDuringExecution
1285
+ */
1286
+ readonly requiredDuringSchedulingIgnoredDuringExecution?: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution[];
1287
+ }
1288
+ /**
1289
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinity' to JSON representation.
1290
+ */
1291
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinity(obj: VinylCacheSpecPodAffinityPodAffinity | undefined): Record<string, any> | undefined;
1292
+ /**
1293
+ * Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)).
1294
+ *
1295
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinity
1296
+ */
1297
+ export interface VinylCacheSpecPodAffinityPodAntiAffinity {
1298
+ /**
1299
+ * The scheduler will prefer to schedule pods to nodes that satisfy
1300
+ * the anti-affinity expressions specified by this field, but it may choose
1301
+ * a node that violates one or more of the expressions. The node that is
1302
+ * most preferred is the one with the greatest sum of weights, i.e.
1303
+ * for each node that meets all of the scheduling requirements (resource
1304
+ * request, requiredDuringScheduling anti-affinity expressions, etc.),
1305
+ * compute a sum by iterating through the elements of this field and subtracting
1306
+ * "weight" from the sum if the node has pods which matches the corresponding podAffinityTerm; the
1307
+ * node(s) with the highest sum are the most preferred.
1308
+ *
1309
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinity#preferredDuringSchedulingIgnoredDuringExecution
1310
+ */
1311
+ readonly preferredDuringSchedulingIgnoredDuringExecution?: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution[];
1312
+ /**
1313
+ * If the anti-affinity requirements specified by this field are not met at
1314
+ * scheduling time, the pod will not be scheduled onto the node.
1315
+ * If the anti-affinity requirements specified by this field cease to be met
1316
+ * at some point during pod execution (e.g. due to a pod label update), the
1317
+ * system may or may not try to eventually evict the pod from its node.
1318
+ * When there are multiple elements, the lists of nodes corresponding to each
1319
+ * podAffinityTerm are intersected, i.e. all terms must be satisfied.
1320
+ *
1321
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinity#requiredDuringSchedulingIgnoredDuringExecution
1322
+ */
1323
+ readonly requiredDuringSchedulingIgnoredDuringExecution?: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution[];
1324
+ }
1325
+ /**
1326
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinity' to JSON representation.
1327
+ */
1328
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinity(obj: VinylCacheSpecPodAffinityPodAntiAffinity | undefined): Record<string, any> | undefined;
1329
+ /**
1330
+ * An empty preferred scheduling term matches all objects with implicit weight 0
1331
+ * (i.e. it's a no-op). A null preferred scheduling term matches no objects (i.e. is also a no-op).
1332
+ *
1333
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution
1334
+ */
1335
+ export interface VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution {
1336
+ /**
1337
+ * A node selector term, associated with the corresponding weight.
1338
+ *
1339
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution#preference
1340
+ */
1341
+ readonly preference: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference;
1342
+ /**
1343
+ * Weight associated with matching the corresponding nodeSelectorTerm, in the range 1-100.
1344
+ *
1345
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution#weight
1346
+ */
1347
+ readonly weight: number;
1348
+ }
1349
+ /**
1350
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution' to JSON representation.
1351
+ */
1352
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution(obj: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecution | undefined): Record<string, any> | undefined;
1353
+ /**
1354
+ * If the affinity requirements specified by this field are not met at
1355
+ * scheduling time, the pod will not be scheduled onto the node.
1356
+ * If the affinity requirements specified by this field cease to be met
1357
+ * at some point during pod execution (e.g. due to an update), the system
1358
+ * may or may not try to eventually evict the pod from its node.
1359
+ *
1360
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution
1361
+ */
1362
+ export interface VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution {
1363
+ /**
1364
+ * Required. A list of node selector terms. The terms are ORed.
1365
+ *
1366
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution#nodeSelectorTerms
1367
+ */
1368
+ readonly nodeSelectorTerms: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms[];
1369
+ }
1370
+ /**
1371
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution' to JSON representation.
1372
+ */
1373
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution(obj: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecution | undefined): Record<string, any> | undefined;
1374
+ /**
1375
+ * The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
1376
+ *
1377
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution
1378
+ */
1379
+ export interface VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution {
1380
+ /**
1381
+ * Required. A pod affinity term, associated with the corresponding weight.
1382
+ *
1383
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution#podAffinityTerm
1384
+ */
1385
+ readonly podAffinityTerm: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm;
1386
+ /**
1387
+ * weight associated with matching the corresponding podAffinityTerm,
1388
+ * in the range 1-100.
1389
+ *
1390
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution#weight
1391
+ */
1392
+ readonly weight: number;
1393
+ }
1394
+ /**
1395
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution' to JSON representation.
1396
+ */
1397
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution(obj: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecution | undefined): Record<string, any> | undefined;
1398
+ /**
1399
+ * Defines a set of pods (namely those matching the labelSelector
1400
+ * relative to the given namespace(s)) that this pod should be
1401
+ * co-located (affinity) or not co-located (anti-affinity) with,
1402
+ * where co-located is defined as running on a node whose value of
1403
+ * the label with key <topologyKey> matches that of any node on which
1404
+ * a pod of the set of pods is running
1405
+ *
1406
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution
1407
+ */
1408
+ export interface VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution {
1409
+ /**
1410
+ * A label query over a set of resources, in this case pods.
1411
+ * If it's null, this PodAffinityTerm matches with no Pods.
1412
+ *
1413
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution#labelSelector
1414
+ */
1415
+ readonly labelSelector?: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector;
1416
+ /**
1417
+ * MatchLabelKeys is a set of pod label keys to select which pods will
1418
+ * be taken into consideration. The keys are used to lookup values from the
1419
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
1420
+ * to select the group of existing pods which pods will be taken into consideration
1421
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1422
+ * pod labels will be ignored. The default value is empty.
1423
+ * The same key is forbidden to exist in both matchLabelKeys and labelSelector.
1424
+ * Also, matchLabelKeys cannot be set when labelSelector isn't set.
1425
+ *
1426
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution#matchLabelKeys
1427
+ */
1428
+ readonly matchLabelKeys?: string[];
1429
+ /**
1430
+ * MismatchLabelKeys is a set of pod label keys to select which pods will
1431
+ * be taken into consideration. The keys are used to lookup values from the
1432
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
1433
+ * to select the group of existing pods which pods will be taken into consideration
1434
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1435
+ * pod labels will be ignored. The default value is empty.
1436
+ * The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
1437
+ * Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
1438
+ *
1439
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution#mismatchLabelKeys
1440
+ */
1441
+ readonly mismatchLabelKeys?: string[];
1442
+ /**
1443
+ * A label query over the set of namespaces that the term applies to.
1444
+ * The term is applied to the union of the namespaces selected by this field
1445
+ * and the ones listed in the namespaces field.
1446
+ * null selector and null or empty namespaces list means "this pod's namespace".
1447
+ * An empty selector ({}) matches all namespaces.
1448
+ *
1449
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution#namespaceSelector
1450
+ */
1451
+ readonly namespaceSelector?: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector;
1452
+ /**
1453
+ * namespaces specifies a static list of namespace names that the term applies to.
1454
+ * The term is applied to the union of the namespaces listed in this field
1455
+ * and the ones selected by namespaceSelector.
1456
+ * null or empty namespaces list and null namespaceSelector means "this pod's namespace".
1457
+ *
1458
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution#namespaces
1459
+ */
1460
+ readonly namespaces?: string[];
1461
+ /**
1462
+ * This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
1463
+ * the labelSelector in the specified namespaces, where co-located is defined as running on a node
1464
+ * whose value of the label with key topologyKey matches that of any node on which any of the
1465
+ * selected pods is running.
1466
+ * Empty topologyKey is not allowed.
1467
+ *
1468
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution#topologyKey
1469
+ */
1470
+ readonly topologyKey: string;
1471
+ }
1472
+ /**
1473
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution' to JSON representation.
1474
+ */
1475
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution(obj: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecution | undefined): Record<string, any> | undefined;
1476
+ /**
1477
+ * The weights of all of the matched WeightedPodAffinityTerm fields are added per-node to find the most preferred node(s)
1478
+ *
1479
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution
1480
+ */
1481
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution {
1482
+ /**
1483
+ * Required. A pod affinity term, associated with the corresponding weight.
1484
+ *
1485
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution#podAffinityTerm
1486
+ */
1487
+ readonly podAffinityTerm: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm;
1488
+ /**
1489
+ * weight associated with matching the corresponding podAffinityTerm,
1490
+ * in the range 1-100.
1491
+ *
1492
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution#weight
1493
+ */
1494
+ readonly weight: number;
1495
+ }
1496
+ /**
1497
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution' to JSON representation.
1498
+ */
1499
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution(obj: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecution | undefined): Record<string, any> | undefined;
1500
+ /**
1501
+ * Defines a set of pods (namely those matching the labelSelector
1502
+ * relative to the given namespace(s)) that this pod should be
1503
+ * co-located (affinity) or not co-located (anti-affinity) with,
1504
+ * where co-located is defined as running on a node whose value of
1505
+ * the label with key <topologyKey> matches that of any node on which
1506
+ * a pod of the set of pods is running
1507
+ *
1508
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution
1509
+ */
1510
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution {
1511
+ /**
1512
+ * A label query over a set of resources, in this case pods.
1513
+ * If it's null, this PodAffinityTerm matches with no Pods.
1514
+ *
1515
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution#labelSelector
1516
+ */
1517
+ readonly labelSelector?: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector;
1518
+ /**
1519
+ * MatchLabelKeys is a set of pod label keys to select which pods will
1520
+ * be taken into consideration. The keys are used to lookup values from the
1521
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
1522
+ * to select the group of existing pods which pods will be taken into consideration
1523
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1524
+ * pod labels will be ignored. The default value is empty.
1525
+ * The same key is forbidden to exist in both matchLabelKeys and labelSelector.
1526
+ * Also, matchLabelKeys cannot be set when labelSelector isn't set.
1527
+ *
1528
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution#matchLabelKeys
1529
+ */
1530
+ readonly matchLabelKeys?: string[];
1531
+ /**
1532
+ * MismatchLabelKeys is a set of pod label keys to select which pods will
1533
+ * be taken into consideration. The keys are used to lookup values from the
1534
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
1535
+ * to select the group of existing pods which pods will be taken into consideration
1536
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1537
+ * pod labels will be ignored. The default value is empty.
1538
+ * The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
1539
+ * Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
1540
+ *
1541
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution#mismatchLabelKeys
1542
+ */
1543
+ readonly mismatchLabelKeys?: string[];
1544
+ /**
1545
+ * A label query over the set of namespaces that the term applies to.
1546
+ * The term is applied to the union of the namespaces selected by this field
1547
+ * and the ones listed in the namespaces field.
1548
+ * null selector and null or empty namespaces list means "this pod's namespace".
1549
+ * An empty selector ({}) matches all namespaces.
1550
+ *
1551
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution#namespaceSelector
1552
+ */
1553
+ readonly namespaceSelector?: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector;
1554
+ /**
1555
+ * namespaces specifies a static list of namespace names that the term applies to.
1556
+ * The term is applied to the union of the namespaces listed in this field
1557
+ * and the ones selected by namespaceSelector.
1558
+ * null or empty namespaces list and null namespaceSelector means "this pod's namespace".
1559
+ *
1560
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution#namespaces
1561
+ */
1562
+ readonly namespaces?: string[];
1563
+ /**
1564
+ * This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
1565
+ * the labelSelector in the specified namespaces, where co-located is defined as running on a node
1566
+ * whose value of the label with key topologyKey matches that of any node on which any of the
1567
+ * selected pods is running.
1568
+ * Empty topologyKey is not allowed.
1569
+ *
1570
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution#topologyKey
1571
+ */
1572
+ readonly topologyKey: string;
1573
+ }
1574
+ /**
1575
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution' to JSON representation.
1576
+ */
1577
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution(obj: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecution | undefined): Record<string, any> | undefined;
1578
+ /**
1579
+ * A node selector term, associated with the corresponding weight.
1580
+ *
1581
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference
1582
+ */
1583
+ export interface VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference {
1584
+ /**
1585
+ * A list of node selector requirements by node's labels.
1586
+ *
1587
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference#matchExpressions
1588
+ */
1589
+ readonly matchExpressions?: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions[];
1590
+ /**
1591
+ * A list of node selector requirements by node's fields.
1592
+ *
1593
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference#matchFields
1594
+ */
1595
+ readonly matchFields?: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields[];
1596
+ }
1597
+ /**
1598
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference' to JSON representation.
1599
+ */
1600
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference(obj: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreference | undefined): Record<string, any> | undefined;
1601
+ /**
1602
+ * A null or empty node selector term matches no objects. The requirements of
1603
+ * them are ANDed.
1604
+ * The TopologySelectorTerm type implements a subset of the NodeSelectorTerm.
1605
+ *
1606
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms
1607
+ */
1608
+ export interface VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms {
1609
+ /**
1610
+ * A list of node selector requirements by node's labels.
1611
+ *
1612
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms#matchExpressions
1613
+ */
1614
+ readonly matchExpressions?: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions[];
1615
+ /**
1616
+ * A list of node selector requirements by node's fields.
1617
+ *
1618
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms#matchFields
1619
+ */
1620
+ readonly matchFields?: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields[];
1621
+ }
1622
+ /**
1623
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms' to JSON representation.
1624
+ */
1625
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms(obj: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTerms | undefined): Record<string, any> | undefined;
1626
+ /**
1627
+ * Required. A pod affinity term, associated with the corresponding weight.
1628
+ *
1629
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm
1630
+ */
1631
+ export interface VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
1632
+ /**
1633
+ * A label query over a set of resources, in this case pods.
1634
+ * If it's null, this PodAffinityTerm matches with no Pods.
1635
+ *
1636
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#labelSelector
1637
+ */
1638
+ readonly labelSelector?: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector;
1639
+ /**
1640
+ * MatchLabelKeys is a set of pod label keys to select which pods will
1641
+ * be taken into consideration. The keys are used to lookup values from the
1642
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
1643
+ * to select the group of existing pods which pods will be taken into consideration
1644
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1645
+ * pod labels will be ignored. The default value is empty.
1646
+ * The same key is forbidden to exist in both matchLabelKeys and labelSelector.
1647
+ * Also, matchLabelKeys cannot be set when labelSelector isn't set.
1648
+ *
1649
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#matchLabelKeys
1650
+ */
1651
+ readonly matchLabelKeys?: string[];
1652
+ /**
1653
+ * MismatchLabelKeys is a set of pod label keys to select which pods will
1654
+ * be taken into consideration. The keys are used to lookup values from the
1655
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
1656
+ * to select the group of existing pods which pods will be taken into consideration
1657
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1658
+ * pod labels will be ignored. The default value is empty.
1659
+ * The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
1660
+ * Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
1661
+ *
1662
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#mismatchLabelKeys
1663
+ */
1664
+ readonly mismatchLabelKeys?: string[];
1665
+ /**
1666
+ * A label query over the set of namespaces that the term applies to.
1667
+ * The term is applied to the union of the namespaces selected by this field
1668
+ * and the ones listed in the namespaces field.
1669
+ * null selector and null or empty namespaces list means "this pod's namespace".
1670
+ * An empty selector ({}) matches all namespaces.
1671
+ *
1672
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#namespaceSelector
1673
+ */
1674
+ readonly namespaceSelector?: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector;
1675
+ /**
1676
+ * namespaces specifies a static list of namespace names that the term applies to.
1677
+ * The term is applied to the union of the namespaces listed in this field
1678
+ * and the ones selected by namespaceSelector.
1679
+ * null or empty namespaces list and null namespaceSelector means "this pod's namespace".
1680
+ *
1681
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#namespaces
1682
+ */
1683
+ readonly namespaces?: string[];
1684
+ /**
1685
+ * This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
1686
+ * the labelSelector in the specified namespaces, where co-located is defined as running on a node
1687
+ * whose value of the label with key topologyKey matches that of any node on which any of the
1688
+ * selected pods is running.
1689
+ * Empty topologyKey is not allowed.
1690
+ *
1691
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#topologyKey
1692
+ */
1693
+ readonly topologyKey: string;
1694
+ }
1695
+ /**
1696
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm' to JSON representation.
1697
+ */
1698
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm(obj: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm | undefined): Record<string, any> | undefined;
1699
+ /**
1700
+ * A label query over a set of resources, in this case pods.
1701
+ * If it's null, this PodAffinityTerm matches with no Pods.
1702
+ *
1703
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector
1704
+ */
1705
+ export interface VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
1706
+ /**
1707
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
1708
+ *
1709
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector#matchExpressions
1710
+ */
1711
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions[];
1712
+ /**
1713
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
1714
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
1715
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
1716
+ *
1717
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector#matchLabels
1718
+ */
1719
+ readonly matchLabels?: {
1720
+ [key: string]: string;
1721
+ };
1722
+ }
1723
+ /**
1724
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector' to JSON representation.
1725
+ */
1726
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector(obj: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector | undefined): Record<string, any> | undefined;
1727
+ /**
1728
+ * A label query over the set of namespaces that the term applies to.
1729
+ * The term is applied to the union of the namespaces selected by this field
1730
+ * and the ones listed in the namespaces field.
1731
+ * null selector and null or empty namespaces list means "this pod's namespace".
1732
+ * An empty selector ({}) matches all namespaces.
1733
+ *
1734
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector
1735
+ */
1736
+ export interface VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
1737
+ /**
1738
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
1739
+ *
1740
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector#matchExpressions
1741
+ */
1742
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions[];
1743
+ /**
1744
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
1745
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
1746
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
1747
+ *
1748
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector#matchLabels
1749
+ */
1750
+ readonly matchLabels?: {
1751
+ [key: string]: string;
1752
+ };
1753
+ }
1754
+ /**
1755
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector' to JSON representation.
1756
+ */
1757
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector(obj: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector | undefined): Record<string, any> | undefined;
1758
+ /**
1759
+ * Required. A pod affinity term, associated with the corresponding weight.
1760
+ *
1761
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm
1762
+ */
1763
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm {
1764
+ /**
1765
+ * A label query over a set of resources, in this case pods.
1766
+ * If it's null, this PodAffinityTerm matches with no Pods.
1767
+ *
1768
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#labelSelector
1769
+ */
1770
+ readonly labelSelector?: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector;
1771
+ /**
1772
+ * MatchLabelKeys is a set of pod label keys to select which pods will
1773
+ * be taken into consideration. The keys are used to lookup values from the
1774
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key in (value)`
1775
+ * to select the group of existing pods which pods will be taken into consideration
1776
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1777
+ * pod labels will be ignored. The default value is empty.
1778
+ * The same key is forbidden to exist in both matchLabelKeys and labelSelector.
1779
+ * Also, matchLabelKeys cannot be set when labelSelector isn't set.
1780
+ *
1781
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#matchLabelKeys
1782
+ */
1783
+ readonly matchLabelKeys?: string[];
1784
+ /**
1785
+ * MismatchLabelKeys is a set of pod label keys to select which pods will
1786
+ * be taken into consideration. The keys are used to lookup values from the
1787
+ * incoming pod labels, those key-value labels are merged with `labelSelector` as `key notin (value)`
1788
+ * to select the group of existing pods which pods will be taken into consideration
1789
+ * for the incoming pod's pod (anti) affinity. Keys that don't exist in the incoming
1790
+ * pod labels will be ignored. The default value is empty.
1791
+ * The same key is forbidden to exist in both mismatchLabelKeys and labelSelector.
1792
+ * Also, mismatchLabelKeys cannot be set when labelSelector isn't set.
1793
+ *
1794
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#mismatchLabelKeys
1795
+ */
1796
+ readonly mismatchLabelKeys?: string[];
1797
+ /**
1798
+ * A label query over the set of namespaces that the term applies to.
1799
+ * The term is applied to the union of the namespaces selected by this field
1800
+ * and the ones listed in the namespaces field.
1801
+ * null selector and null or empty namespaces list means "this pod's namespace".
1802
+ * An empty selector ({}) matches all namespaces.
1803
+ *
1804
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#namespaceSelector
1805
+ */
1806
+ readonly namespaceSelector?: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector;
1807
+ /**
1808
+ * namespaces specifies a static list of namespace names that the term applies to.
1809
+ * The term is applied to the union of the namespaces listed in this field
1810
+ * and the ones selected by namespaceSelector.
1811
+ * null or empty namespaces list and null namespaceSelector means "this pod's namespace".
1812
+ *
1813
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#namespaces
1814
+ */
1815
+ readonly namespaces?: string[];
1816
+ /**
1817
+ * This pod should be co-located (affinity) or not co-located (anti-affinity) with the pods matching
1818
+ * the labelSelector in the specified namespaces, where co-located is defined as running on a node
1819
+ * whose value of the label with key topologyKey matches that of any node on which any of the
1820
+ * selected pods is running.
1821
+ * Empty topologyKey is not allowed.
1822
+ *
1823
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm#topologyKey
1824
+ */
1825
+ readonly topologyKey: string;
1826
+ }
1827
+ /**
1828
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm' to JSON representation.
1829
+ */
1830
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm(obj: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTerm | undefined): Record<string, any> | undefined;
1831
+ /**
1832
+ * A label query over a set of resources, in this case pods.
1833
+ * If it's null, this PodAffinityTerm matches with no Pods.
1834
+ *
1835
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector
1836
+ */
1837
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector {
1838
+ /**
1839
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
1840
+ *
1841
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector#matchExpressions
1842
+ */
1843
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions[];
1844
+ /**
1845
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
1846
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
1847
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
1848
+ *
1849
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector#matchLabels
1850
+ */
1851
+ readonly matchLabels?: {
1852
+ [key: string]: string;
1853
+ };
1854
+ }
1855
+ /**
1856
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector' to JSON representation.
1857
+ */
1858
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector(obj: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelector | undefined): Record<string, any> | undefined;
1859
+ /**
1860
+ * A label query over the set of namespaces that the term applies to.
1861
+ * The term is applied to the union of the namespaces selected by this field
1862
+ * and the ones listed in the namespaces field.
1863
+ * null selector and null or empty namespaces list means "this pod's namespace".
1864
+ * An empty selector ({}) matches all namespaces.
1865
+ *
1866
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector
1867
+ */
1868
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector {
1869
+ /**
1870
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
1871
+ *
1872
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector#matchExpressions
1873
+ */
1874
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions[];
1875
+ /**
1876
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
1877
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
1878
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
1879
+ *
1880
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector#matchLabels
1881
+ */
1882
+ readonly matchLabels?: {
1883
+ [key: string]: string;
1884
+ };
1885
+ }
1886
+ /**
1887
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector' to JSON representation.
1888
+ */
1889
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector(obj: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelector | undefined): Record<string, any> | undefined;
1890
+ /**
1891
+ * A node selector requirement is a selector that contains values, a key, and an operator
1892
+ * that relates the key and values.
1893
+ *
1894
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions
1895
+ */
1896
+ export interface VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions {
1897
+ /**
1898
+ * The label key that the selector applies to.
1899
+ *
1900
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions#key
1901
+ */
1902
+ readonly key: string;
1903
+ /**
1904
+ * Represents a key's relationship to a set of values.
1905
+ * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
1906
+ *
1907
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions#operator
1908
+ */
1909
+ readonly operator: string;
1910
+ /**
1911
+ * An array of string values. If the operator is In or NotIn,
1912
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
1913
+ * the values array must be empty. If the operator is Gt or Lt, the values
1914
+ * array must have a single element, which will be interpreted as an integer.
1915
+ * This array is replaced during a strategic merge patch.
1916
+ *
1917
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions#values
1918
+ */
1919
+ readonly values?: string[];
1920
+ }
1921
+ /**
1922
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions' to JSON representation.
1923
+ */
1924
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions(obj: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchExpressions | undefined): Record<string, any> | undefined;
1925
+ /**
1926
+ * A node selector requirement is a selector that contains values, a key, and an operator
1927
+ * that relates the key and values.
1928
+ *
1929
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields
1930
+ */
1931
+ export interface VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields {
1932
+ /**
1933
+ * The label key that the selector applies to.
1934
+ *
1935
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields#key
1936
+ */
1937
+ readonly key: string;
1938
+ /**
1939
+ * Represents a key's relationship to a set of values.
1940
+ * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
1941
+ *
1942
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields#operator
1943
+ */
1944
+ readonly operator: string;
1945
+ /**
1946
+ * An array of string values. If the operator is In or NotIn,
1947
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
1948
+ * the values array must be empty. If the operator is Gt or Lt, the values
1949
+ * array must have a single element, which will be interpreted as an integer.
1950
+ * This array is replaced during a strategic merge patch.
1951
+ *
1952
+ * @schema VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields#values
1953
+ */
1954
+ readonly values?: string[];
1955
+ }
1956
+ /**
1957
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields' to JSON representation.
1958
+ */
1959
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields(obj: VinylCacheSpecPodAffinityNodeAffinityPreferredDuringSchedulingIgnoredDuringExecutionPreferenceMatchFields | undefined): Record<string, any> | undefined;
1960
+ /**
1961
+ * A node selector requirement is a selector that contains values, a key, and an operator
1962
+ * that relates the key and values.
1963
+ *
1964
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions
1965
+ */
1966
+ export interface VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions {
1967
+ /**
1968
+ * The label key that the selector applies to.
1969
+ *
1970
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions#key
1971
+ */
1972
+ readonly key: string;
1973
+ /**
1974
+ * Represents a key's relationship to a set of values.
1975
+ * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
1976
+ *
1977
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions#operator
1978
+ */
1979
+ readonly operator: string;
1980
+ /**
1981
+ * An array of string values. If the operator is In or NotIn,
1982
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
1983
+ * the values array must be empty. If the operator is Gt or Lt, the values
1984
+ * array must have a single element, which will be interpreted as an integer.
1985
+ * This array is replaced during a strategic merge patch.
1986
+ *
1987
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions#values
1988
+ */
1989
+ readonly values?: string[];
1990
+ }
1991
+ /**
1992
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions' to JSON representation.
1993
+ */
1994
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions(obj: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchExpressions | undefined): Record<string, any> | undefined;
1995
+ /**
1996
+ * A node selector requirement is a selector that contains values, a key, and an operator
1997
+ * that relates the key and values.
1998
+ *
1999
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields
2000
+ */
2001
+ export interface VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields {
2002
+ /**
2003
+ * The label key that the selector applies to.
2004
+ *
2005
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields#key
2006
+ */
2007
+ readonly key: string;
2008
+ /**
2009
+ * Represents a key's relationship to a set of values.
2010
+ * Valid operators are In, NotIn, Exists, DoesNotExist. Gt, and Lt.
2011
+ *
2012
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields#operator
2013
+ */
2014
+ readonly operator: string;
2015
+ /**
2016
+ * An array of string values. If the operator is In or NotIn,
2017
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2018
+ * the values array must be empty. If the operator is Gt or Lt, the values
2019
+ * array must have a single element, which will be interpreted as an integer.
2020
+ * This array is replaced during a strategic merge patch.
2021
+ *
2022
+ * @schema VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields#values
2023
+ */
2024
+ readonly values?: string[];
2025
+ }
2026
+ /**
2027
+ * Converts an object of type 'VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields' to JSON representation.
2028
+ */
2029
+ export declare function toJson_VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields(obj: VinylCacheSpecPodAffinityNodeAffinityRequiredDuringSchedulingIgnoredDuringExecutionNodeSelectorTermsMatchFields | undefined): Record<string, any> | undefined;
2030
+ /**
2031
+ * A label query over a set of resources, in this case pods.
2032
+ * If it's null, this PodAffinityTerm matches with no Pods.
2033
+ *
2034
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector
2035
+ */
2036
+ export interface VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
2037
+ /**
2038
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
2039
+ *
2040
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector#matchExpressions
2041
+ */
2042
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions[];
2043
+ /**
2044
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
2045
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
2046
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
2047
+ *
2048
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector#matchLabels
2049
+ */
2050
+ readonly matchLabels?: {
2051
+ [key: string]: string;
2052
+ };
2053
+ }
2054
+ /**
2055
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector' to JSON representation.
2056
+ */
2057
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector(obj: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector | undefined): Record<string, any> | undefined;
2058
+ /**
2059
+ * A label query over the set of namespaces that the term applies to.
2060
+ * The term is applied to the union of the namespaces selected by this field
2061
+ * and the ones listed in the namespaces field.
2062
+ * null selector and null or empty namespaces list means "this pod's namespace".
2063
+ * An empty selector ({}) matches all namespaces.
2064
+ *
2065
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector
2066
+ */
2067
+ export interface VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
2068
+ /**
2069
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
2070
+ *
2071
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector#matchExpressions
2072
+ */
2073
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions[];
2074
+ /**
2075
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
2076
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
2077
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
2078
+ *
2079
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector#matchLabels
2080
+ */
2081
+ readonly matchLabels?: {
2082
+ [key: string]: string;
2083
+ };
2084
+ }
2085
+ /**
2086
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector' to JSON representation.
2087
+ */
2088
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector(obj: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector | undefined): Record<string, any> | undefined;
2089
+ /**
2090
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2091
+ * relates the key and values.
2092
+ *
2093
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions
2094
+ */
2095
+ export interface VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
2096
+ /**
2097
+ * key is the label key that the selector applies to.
2098
+ *
2099
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions#key
2100
+ */
2101
+ readonly key: string;
2102
+ /**
2103
+ * operator represents a key's relationship to a set of values.
2104
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2105
+ *
2106
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions#operator
2107
+ */
2108
+ readonly operator: string;
2109
+ /**
2110
+ * values is an array of string values. If the operator is In or NotIn,
2111
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2112
+ * the values array must be empty. This array is replaced during a strategic
2113
+ * merge patch.
2114
+ *
2115
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions#values
2116
+ */
2117
+ readonly values?: string[];
2118
+ }
2119
+ /**
2120
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions' to JSON representation.
2121
+ */
2122
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2123
+ /**
2124
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2125
+ * relates the key and values.
2126
+ *
2127
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions
2128
+ */
2129
+ export interface VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
2130
+ /**
2131
+ * key is the label key that the selector applies to.
2132
+ *
2133
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions#key
2134
+ */
2135
+ readonly key: string;
2136
+ /**
2137
+ * operator represents a key's relationship to a set of values.
2138
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2139
+ *
2140
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions#operator
2141
+ */
2142
+ readonly operator: string;
2143
+ /**
2144
+ * values is an array of string values. If the operator is In or NotIn,
2145
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2146
+ * the values array must be empty. This array is replaced during a strategic
2147
+ * merge patch.
2148
+ *
2149
+ * @schema VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions#values
2150
+ */
2151
+ readonly values?: string[];
2152
+ }
2153
+ /**
2154
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions' to JSON representation.
2155
+ */
2156
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2157
+ /**
2158
+ * A label query over a set of resources, in this case pods.
2159
+ * If it's null, this PodAffinityTerm matches with no Pods.
2160
+ *
2161
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector
2162
+ */
2163
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector {
2164
+ /**
2165
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
2166
+ *
2167
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector#matchExpressions
2168
+ */
2169
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions[];
2170
+ /**
2171
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
2172
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
2173
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
2174
+ *
2175
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector#matchLabels
2176
+ */
2177
+ readonly matchLabels?: {
2178
+ [key: string]: string;
2179
+ };
2180
+ }
2181
+ /**
2182
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector' to JSON representation.
2183
+ */
2184
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector(obj: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelector | undefined): Record<string, any> | undefined;
2185
+ /**
2186
+ * A label query over the set of namespaces that the term applies to.
2187
+ * The term is applied to the union of the namespaces selected by this field
2188
+ * and the ones listed in the namespaces field.
2189
+ * null selector and null or empty namespaces list means "this pod's namespace".
2190
+ * An empty selector ({}) matches all namespaces.
2191
+ *
2192
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector
2193
+ */
2194
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector {
2195
+ /**
2196
+ * matchExpressions is a list of label selector requirements. The requirements are ANDed.
2197
+ *
2198
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector#matchExpressions
2199
+ */
2200
+ readonly matchExpressions?: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions[];
2201
+ /**
2202
+ * matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
2203
+ * map is equivalent to an element of matchExpressions, whose key field is "key", the
2204
+ * operator is "In", and the values array contains only "value". The requirements are ANDed.
2205
+ *
2206
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector#matchLabels
2207
+ */
2208
+ readonly matchLabels?: {
2209
+ [key: string]: string;
2210
+ };
2211
+ }
2212
+ /**
2213
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector' to JSON representation.
2214
+ */
2215
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector(obj: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelector | undefined): Record<string, any> | undefined;
2216
+ /**
2217
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2218
+ * relates the key and values.
2219
+ *
2220
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions
2221
+ */
2222
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions {
2223
+ /**
2224
+ * key is the label key that the selector applies to.
2225
+ *
2226
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions#key
2227
+ */
2228
+ readonly key: string;
2229
+ /**
2230
+ * operator represents a key's relationship to a set of values.
2231
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2232
+ *
2233
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions#operator
2234
+ */
2235
+ readonly operator: string;
2236
+ /**
2237
+ * values is an array of string values. If the operator is In or NotIn,
2238
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2239
+ * the values array must be empty. This array is replaced during a strategic
2240
+ * merge patch.
2241
+ *
2242
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions#values
2243
+ */
2244
+ readonly values?: string[];
2245
+ }
2246
+ /**
2247
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions' to JSON representation.
2248
+ */
2249
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionLabelSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2250
+ /**
2251
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2252
+ * relates the key and values.
2253
+ *
2254
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions
2255
+ */
2256
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions {
2257
+ /**
2258
+ * key is the label key that the selector applies to.
2259
+ *
2260
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions#key
2261
+ */
2262
+ readonly key: string;
2263
+ /**
2264
+ * operator represents a key's relationship to a set of values.
2265
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2266
+ *
2267
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions#operator
2268
+ */
2269
+ readonly operator: string;
2270
+ /**
2271
+ * values is an array of string values. If the operator is In or NotIn,
2272
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2273
+ * the values array must be empty. This array is replaced during a strategic
2274
+ * merge patch.
2275
+ *
2276
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions#values
2277
+ */
2278
+ readonly values?: string[];
2279
+ }
2280
+ /**
2281
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions' to JSON representation.
2282
+ */
2283
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAntiAffinityRequiredDuringSchedulingIgnoredDuringExecutionNamespaceSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2284
+ /**
2285
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2286
+ * relates the key and values.
2287
+ *
2288
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions
2289
+ */
2290
+ export interface VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
2291
+ /**
2292
+ * key is the label key that the selector applies to.
2293
+ *
2294
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions#key
2295
+ */
2296
+ readonly key: string;
2297
+ /**
2298
+ * operator represents a key's relationship to a set of values.
2299
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2300
+ *
2301
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions#operator
2302
+ */
2303
+ readonly operator: string;
2304
+ /**
2305
+ * values is an array of string values. If the operator is In or NotIn,
2306
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2307
+ * the values array must be empty. This array is replaced during a strategic
2308
+ * merge patch.
2309
+ *
2310
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions#values
2311
+ */
2312
+ readonly values?: string[];
2313
+ }
2314
+ /**
2315
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions' to JSON representation.
2316
+ */
2317
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2318
+ /**
2319
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2320
+ * relates the key and values.
2321
+ *
2322
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions
2323
+ */
2324
+ export interface VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
2325
+ /**
2326
+ * key is the label key that the selector applies to.
2327
+ *
2328
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions#key
2329
+ */
2330
+ readonly key: string;
2331
+ /**
2332
+ * operator represents a key's relationship to a set of values.
2333
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2334
+ *
2335
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions#operator
2336
+ */
2337
+ readonly operator: string;
2338
+ /**
2339
+ * values is an array of string values. If the operator is In or NotIn,
2340
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2341
+ * the values array must be empty. This array is replaced during a strategic
2342
+ * merge patch.
2343
+ *
2344
+ * @schema VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions#values
2345
+ */
2346
+ readonly values?: string[];
2347
+ }
2348
+ /**
2349
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions' to JSON representation.
2350
+ */
2351
+ export declare function toJson_VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2352
+ /**
2353
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2354
+ * relates the key and values.
2355
+ *
2356
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions
2357
+ */
2358
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions {
2359
+ /**
2360
+ * key is the label key that the selector applies to.
2361
+ *
2362
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions#key
2363
+ */
2364
+ readonly key: string;
2365
+ /**
2366
+ * operator represents a key's relationship to a set of values.
2367
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2368
+ *
2369
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions#operator
2370
+ */
2371
+ readonly operator: string;
2372
+ /**
2373
+ * values is an array of string values. If the operator is In or NotIn,
2374
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2375
+ * the values array must be empty. This array is replaced during a strategic
2376
+ * merge patch.
2377
+ *
2378
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions#values
2379
+ */
2380
+ readonly values?: string[];
2381
+ }
2382
+ /**
2383
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions' to JSON representation.
2384
+ */
2385
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermLabelSelectorMatchExpressions | undefined): Record<string, any> | undefined;
2386
+ /**
2387
+ * A label selector requirement is a selector that contains values, a key, and an operator that
2388
+ * relates the key and values.
2389
+ *
2390
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions
2391
+ */
2392
+ export interface VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions {
2393
+ /**
2394
+ * key is the label key that the selector applies to.
2395
+ *
2396
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions#key
2397
+ */
2398
+ readonly key: string;
2399
+ /**
2400
+ * operator represents a key's relationship to a set of values.
2401
+ * Valid operators are In, NotIn, Exists and DoesNotExist.
2402
+ *
2403
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions#operator
2404
+ */
2405
+ readonly operator: string;
2406
+ /**
2407
+ * values is an array of string values. If the operator is In or NotIn,
2408
+ * the values array must be non-empty. If the operator is Exists or DoesNotExist,
2409
+ * the values array must be empty. This array is replaced during a strategic
2410
+ * merge patch.
2411
+ *
2412
+ * @schema VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions#values
2413
+ */
2414
+ readonly values?: string[];
2415
+ }
2416
+ /**
2417
+ * Converts an object of type 'VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions' to JSON representation.
2418
+ */
2419
+ export declare function toJson_VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions(obj: VinylCacheSpecPodAffinityPodAntiAffinityPreferredDuringSchedulingIgnoredDuringExecutionPodAffinityTermNamespaceSelectorMatchExpressions | undefined): Record<string, any> | undefined;