@cloudfleet/sdk 0.0.1-523e444 → 0.0.1-53d3d1d
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.
- package/dist/@tanstack/react-query.gen.d.ts +1125 -0
- package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
- package/dist/@tanstack/react-query.gen.js +1129 -0
- package/dist/@tanstack/react-query.gen.js.map +1 -0
- package/dist/client/client.gen.d.ts.map +1 -1
- package/dist/client/client.gen.js +113 -98
- package/dist/client/client.gen.js.map +1 -1
- package/dist/client/index.d.ts +1 -1
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/client/types.gen.d.ts +9 -13
- package/dist/client/types.gen.d.ts.map +1 -1
- package/dist/client/utils.gen.d.ts +6 -2
- package/dist/client/utils.gen.d.ts.map +1 -1
- package/dist/client/utils.gen.js +10 -12
- package/dist/client/utils.gen.js.map +1 -1
- package/dist/client.gen.d.ts.map +1 -1
- package/dist/client.gen.js +1 -3
- package/dist/client.gen.js.map +1 -1
- package/dist/core/auth.gen.d.ts.map +1 -1
- package/dist/core/auth.gen.js.map +1 -1
- package/dist/core/bodySerializer.gen.d.ts +16 -8
- package/dist/core/bodySerializer.gen.d.ts.map +1 -1
- package/dist/core/bodySerializer.gen.js +1 -1
- package/dist/core/bodySerializer.gen.js.map +1 -1
- package/dist/core/params.gen.d.ts +10 -0
- package/dist/core/params.gen.d.ts.map +1 -1
- package/dist/core/params.gen.js +18 -6
- package/dist/core/params.gen.js.map +1 -1
- package/dist/core/pathSerializer.gen.d.ts.map +1 -1
- package/dist/core/pathSerializer.gen.js +3 -11
- package/dist/core/pathSerializer.gen.js.map +1 -1
- package/dist/core/queryKeySerializer.gen.d.ts.map +1 -1
- package/dist/core/queryKeySerializer.gen.js +4 -11
- package/dist/core/queryKeySerializer.gen.js.map +1 -1
- package/dist/core/serverSentEvents.gen.d.ts +1 -1
- package/dist/core/serverSentEvents.gen.d.ts.map +1 -1
- package/dist/core/serverSentEvents.gen.js +6 -9
- package/dist/core/serverSentEvents.gen.js.map +1 -1
- package/dist/core/types.gen.d.ts +1 -1
- package/dist/core/types.gen.d.ts.map +1 -1
- package/dist/core/utils.gen.d.ts.map +1 -1
- package/dist/core/utils.gen.js +1 -1
- package/dist/core/utils.gen.js.map +1 -1
- package/dist/schemas.gen.d.ts +1207 -212
- package/dist/schemas.gen.d.ts.map +1 -1
- package/dist/schemas.gen.js +2498 -266
- package/dist/schemas.gen.js.map +1 -1
- package/dist/sdk.gen.d.ts +85 -7
- package/dist/sdk.gen.d.ts.map +1 -1
- package/dist/sdk.gen.js +158 -127
- package/dist/sdk.gen.js.map +1 -1
- package/dist/services/kubernetes/api.d.ts +8 -8
- package/dist/types.gen.d.ts +1028 -106
- package/dist/types.gen.d.ts.map +1 -1
- package/dist/zod.gen.d.ts +2614 -652
- package/dist/zod.gen.d.ts.map +1 -1
- package/dist/zod.gen.js +1201 -470
- package/dist/zod.gen.js.map +1 -1
- package/package.json +28 -5
package/dist/schemas.gen.js
CHANGED
|
@@ -74,10 +74,142 @@ export const BillingContactSchema = {
|
|
|
74
74
|
nullable: true,
|
|
75
75
|
description: 'Type of the tax ID.',
|
|
76
76
|
example: 'de_vat',
|
|
77
|
-
enum: [
|
|
77
|
+
enum: [
|
|
78
|
+
'ad_nrt',
|
|
79
|
+
'ae_trn',
|
|
80
|
+
'al_tin',
|
|
81
|
+
'am_tin',
|
|
82
|
+
'ao_tin',
|
|
83
|
+
'ar_cuit',
|
|
84
|
+
'at_vat',
|
|
85
|
+
'au_abn',
|
|
86
|
+
'au_arn',
|
|
87
|
+
'ba_tin',
|
|
88
|
+
'bb_tin',
|
|
89
|
+
'be_vat',
|
|
90
|
+
'bg_uic',
|
|
91
|
+
'bg_vat',
|
|
92
|
+
'bh_vat',
|
|
93
|
+
'bo_tin',
|
|
94
|
+
'br_cnpj',
|
|
95
|
+
'br_cpf',
|
|
96
|
+
'bs_tin',
|
|
97
|
+
'by_tin',
|
|
98
|
+
'ca_bn',
|
|
99
|
+
'ca_gst_hst',
|
|
100
|
+
'ca_pst_bc',
|
|
101
|
+
'ca_pst_mb',
|
|
102
|
+
'ca_pst_sk',
|
|
103
|
+
'ca_qst',
|
|
104
|
+
'cd_nif',
|
|
105
|
+
'ch_uid',
|
|
106
|
+
'ch_vat',
|
|
107
|
+
'cl_tin',
|
|
108
|
+
'cn_tin',
|
|
109
|
+
'co_nit',
|
|
110
|
+
'cr_tin',
|
|
111
|
+
'cy_vat',
|
|
112
|
+
'cz_vat',
|
|
113
|
+
'de_stn',
|
|
114
|
+
'de_vat',
|
|
115
|
+
'dk_vat',
|
|
116
|
+
'do_rcn',
|
|
117
|
+
'ec_ruc',
|
|
118
|
+
'ee_vat',
|
|
119
|
+
'eg_tin',
|
|
120
|
+
'es_cif',
|
|
121
|
+
'es_vat',
|
|
122
|
+
'eu_oss_vat',
|
|
123
|
+
'fi_vat',
|
|
124
|
+
'fr_vat',
|
|
125
|
+
'gb_vat',
|
|
126
|
+
'ge_vat',
|
|
127
|
+
'gn_nif',
|
|
128
|
+
'gr_vat',
|
|
129
|
+
'hk_br',
|
|
130
|
+
'hr_oib',
|
|
131
|
+
'hr_vat',
|
|
132
|
+
'hu_tin',
|
|
133
|
+
'hu_vat',
|
|
134
|
+
'id_npwp',
|
|
135
|
+
'ie_vat',
|
|
136
|
+
'il_vat',
|
|
137
|
+
'in_gst',
|
|
138
|
+
'is_vat',
|
|
139
|
+
'it_vat',
|
|
140
|
+
'jp_cn',
|
|
141
|
+
'jp_rn',
|
|
142
|
+
'jp_trn',
|
|
143
|
+
'ke_pin',
|
|
144
|
+
'kh_tin',
|
|
145
|
+
'kr_brn',
|
|
146
|
+
'kz_bin',
|
|
147
|
+
'li_uid',
|
|
148
|
+
'li_vat',
|
|
149
|
+
'lt_vat',
|
|
150
|
+
'lu_vat',
|
|
151
|
+
'lv_vat',
|
|
152
|
+
'ma_vat',
|
|
153
|
+
'md_vat',
|
|
154
|
+
'me_pib',
|
|
155
|
+
'mk_vat',
|
|
156
|
+
'mr_nif',
|
|
157
|
+
'mt_vat',
|
|
158
|
+
'mx_rfc',
|
|
159
|
+
'my_frp',
|
|
160
|
+
'my_itn',
|
|
161
|
+
'my_sst',
|
|
162
|
+
'ng_tin',
|
|
163
|
+
'nl_vat',
|
|
164
|
+
'no_vat',
|
|
165
|
+
'no_voec',
|
|
166
|
+
'np_pan',
|
|
167
|
+
'nz_gst',
|
|
168
|
+
'om_vat',
|
|
169
|
+
'pe_ruc',
|
|
170
|
+
'ph_tin',
|
|
171
|
+
'pl_vat',
|
|
172
|
+
'pt_vat',
|
|
173
|
+
'ro_tin',
|
|
174
|
+
'ro_vat',
|
|
175
|
+
'rs_pib',
|
|
176
|
+
'ru_inn',
|
|
177
|
+
'ru_kpp',
|
|
178
|
+
'sa_vat',
|
|
179
|
+
'se_vat',
|
|
180
|
+
'sg_gst',
|
|
181
|
+
'sg_uen',
|
|
182
|
+
'si_tin',
|
|
183
|
+
'si_vat',
|
|
184
|
+
'sk_vat',
|
|
185
|
+
'sn_ninea',
|
|
186
|
+
'sr_fin',
|
|
187
|
+
'sv_nit',
|
|
188
|
+
'th_vat',
|
|
189
|
+
'tj_tin',
|
|
190
|
+
'tr_tin',
|
|
191
|
+
'tw_vat',
|
|
192
|
+
'tz_vat',
|
|
193
|
+
'ua_vat',
|
|
194
|
+
'ug_tin',
|
|
195
|
+
'us_ein',
|
|
196
|
+
'uy_ruc',
|
|
197
|
+
'uz_tin',
|
|
198
|
+
'uz_vat',
|
|
199
|
+
've_rif',
|
|
200
|
+
'vn_tin',
|
|
201
|
+
'xi_vat',
|
|
202
|
+
'za_vat',
|
|
203
|
+
'zm_tin',
|
|
204
|
+
'zw_tin',
|
|
205
|
+
''
|
|
206
|
+
]
|
|
78
207
|
}
|
|
79
208
|
},
|
|
80
|
-
required: [
|
|
209
|
+
required: [
|
|
210
|
+
'email',
|
|
211
|
+
'individual_name'
|
|
212
|
+
],
|
|
81
213
|
additionalProperties: false
|
|
82
214
|
};
|
|
83
215
|
export const BillingCreditsSchema = {
|
|
@@ -92,7 +224,10 @@ export const BillingCreditsSchema = {
|
|
|
92
224
|
type: 'string',
|
|
93
225
|
description: 'Type of the promotional code.',
|
|
94
226
|
example: 'credit',
|
|
95
|
-
enum: [
|
|
227
|
+
enum: [
|
|
228
|
+
'credit',
|
|
229
|
+
'discount'
|
|
230
|
+
]
|
|
96
231
|
},
|
|
97
232
|
date_start: {
|
|
98
233
|
type: 'string',
|
|
@@ -129,7 +264,12 @@ export const BillingCreditsSchema = {
|
|
|
129
264
|
example: 8
|
|
130
265
|
}
|
|
131
266
|
},
|
|
132
|
-
required: [
|
|
267
|
+
required: [
|
|
268
|
+
'type',
|
|
269
|
+
'date_start',
|
|
270
|
+
'code',
|
|
271
|
+
'value_total'
|
|
272
|
+
],
|
|
133
273
|
additionalProperties: false
|
|
134
274
|
};
|
|
135
275
|
export const ChartCreateInputSchema = {
|
|
@@ -170,7 +310,13 @@ export const ChartCreateInputSchema = {
|
|
|
170
310
|
example: 'postgresql'
|
|
171
311
|
}
|
|
172
312
|
},
|
|
173
|
-
required: [
|
|
313
|
+
required: [
|
|
314
|
+
'values',
|
|
315
|
+
'version_channel',
|
|
316
|
+
'name',
|
|
317
|
+
'namespace',
|
|
318
|
+
'chart'
|
|
319
|
+
],
|
|
174
320
|
additionalProperties: false
|
|
175
321
|
};
|
|
176
322
|
export const ChartSchema = {
|
|
@@ -214,7 +360,22 @@ export const ChartSchema = {
|
|
|
214
360
|
type: 'string',
|
|
215
361
|
description: 'Status of the chart deployment.',
|
|
216
362
|
example: 'active',
|
|
217
|
-
enum: [
|
|
363
|
+
enum: [
|
|
364
|
+
'InstallSucceeded',
|
|
365
|
+
'InstallFailed',
|
|
366
|
+
'UpgradeSucceeded',
|
|
367
|
+
'UpgradeFailed',
|
|
368
|
+
'TestSucceeded',
|
|
369
|
+
'TestFailed',
|
|
370
|
+
'RollbackSucceeded',
|
|
371
|
+
'RollbackFailed',
|
|
372
|
+
'UninstallSucceeded',
|
|
373
|
+
'UninstallFailed',
|
|
374
|
+
'ArtifactFailed',
|
|
375
|
+
'DependencyNotReady',
|
|
376
|
+
'Progressing',
|
|
377
|
+
'SourceNotReady'
|
|
378
|
+
]
|
|
218
379
|
},
|
|
219
380
|
version_current: {
|
|
220
381
|
type: 'string',
|
|
@@ -237,7 +398,18 @@ export const ChartSchema = {
|
|
|
237
398
|
example: true
|
|
238
399
|
}
|
|
239
400
|
},
|
|
240
|
-
required: [
|
|
401
|
+
required: [
|
|
402
|
+
'values',
|
|
403
|
+
'version_channel',
|
|
404
|
+
'name',
|
|
405
|
+
'namespace',
|
|
406
|
+
'chart',
|
|
407
|
+
'status',
|
|
408
|
+
'version_current',
|
|
409
|
+
'created_at',
|
|
410
|
+
'updated_at',
|
|
411
|
+
'ready'
|
|
412
|
+
],
|
|
241
413
|
additionalProperties: false
|
|
242
414
|
};
|
|
243
415
|
export const ChartUpdateInputSchema = {
|
|
@@ -254,7 +426,10 @@ export const ChartUpdateInputSchema = {
|
|
|
254
426
|
example: '2.x.x-cfke.x'
|
|
255
427
|
}
|
|
256
428
|
},
|
|
257
|
-
required: [
|
|
429
|
+
required: [
|
|
430
|
+
'values',
|
|
431
|
+
'version_channel'
|
|
432
|
+
],
|
|
258
433
|
additionalProperties: false
|
|
259
434
|
};
|
|
260
435
|
export const ClusterCreateInputSchema = {
|
|
@@ -272,24 +447,41 @@ export const ClusterCreateInputSchema = {
|
|
|
272
447
|
type: 'string',
|
|
273
448
|
description: 'Tier of the cluster.',
|
|
274
449
|
example: 'pro',
|
|
275
|
-
enum: [
|
|
450
|
+
enum: [
|
|
451
|
+
'basic',
|
|
452
|
+
'pro'
|
|
453
|
+
]
|
|
276
454
|
},
|
|
277
455
|
region: {
|
|
278
456
|
type: 'string',
|
|
279
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
|
|
280
|
-
default: 'staging',
|
|
457
|
+
description: 'Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
|
|
458
|
+
default: 'staging-1a',
|
|
281
459
|
example: 'northamerica-central-1a',
|
|
282
|
-
enum: [
|
|
460
|
+
enum: [
|
|
461
|
+
'staging-1a',
|
|
462
|
+
'northamerica-central-1',
|
|
463
|
+
'europe-central-1a',
|
|
464
|
+
'northamerica-central-1a'
|
|
465
|
+
]
|
|
283
466
|
},
|
|
284
467
|
version_channel: {
|
|
285
468
|
type: 'string',
|
|
286
469
|
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
287
470
|
description: 'Version of the kubernetes cluster.',
|
|
288
471
|
default: '1.x.x-cfke.x',
|
|
289
|
-
example: '1.
|
|
472
|
+
example: '1.x.x-cfke.x',
|
|
473
|
+
enum: [
|
|
474
|
+
'1.x.x-cfke.x',
|
|
475
|
+
'1.31.x-cfke.x',
|
|
476
|
+
'1.32.x-cfke.x',
|
|
477
|
+
'1.33.x-cfke.x'
|
|
478
|
+
]
|
|
290
479
|
}
|
|
291
480
|
},
|
|
292
|
-
required: [
|
|
481
|
+
required: [
|
|
482
|
+
'name',
|
|
483
|
+
'tier'
|
|
484
|
+
],
|
|
293
485
|
additionalProperties: false
|
|
294
486
|
};
|
|
295
487
|
export const ClusterJoinInformationSchema = {
|
|
@@ -298,8 +490,7 @@ export const ClusterJoinInformationSchema = {
|
|
|
298
490
|
certificate_authority: {
|
|
299
491
|
type: 'string',
|
|
300
492
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
301
|
-
example:
|
|
302
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
493
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
303
494
|
},
|
|
304
495
|
endpoint: {
|
|
305
496
|
type: 'string',
|
|
@@ -307,6 +498,11 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
307
498
|
description: 'Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.',
|
|
308
499
|
example: 'https://10.31.64.7:6443'
|
|
309
500
|
},
|
|
501
|
+
cluster_dns: {
|
|
502
|
+
type: 'string',
|
|
503
|
+
description: 'Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.',
|
|
504
|
+
example: '10.96.0.10'
|
|
505
|
+
},
|
|
310
506
|
auth_key: {
|
|
311
507
|
type: 'string',
|
|
312
508
|
description: 'Authentication key for the cluster.',
|
|
@@ -323,7 +519,7 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
323
519
|
kubernetes: {
|
|
324
520
|
type: 'string',
|
|
325
521
|
description: 'Kubernetes version of the cluster.',
|
|
326
|
-
example: '1.
|
|
522
|
+
example: '1.33.7'
|
|
327
523
|
},
|
|
328
524
|
tailscale: {
|
|
329
525
|
type: 'string',
|
|
@@ -341,7 +537,12 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
341
537
|
example: '565.0.0'
|
|
342
538
|
}
|
|
343
539
|
},
|
|
344
|
-
required: [
|
|
540
|
+
required: [
|
|
541
|
+
'kubernetes',
|
|
542
|
+
'tailscale',
|
|
543
|
+
'containerd',
|
|
544
|
+
'nvidia_driver'
|
|
545
|
+
],
|
|
345
546
|
additionalProperties: false,
|
|
346
547
|
description: 'Versions of the different components of the cluster.'
|
|
347
548
|
},
|
|
@@ -364,12 +565,24 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
364
565
|
example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
|
|
365
566
|
}
|
|
366
567
|
},
|
|
367
|
-
required: [
|
|
568
|
+
required: [
|
|
569
|
+
'metadata_url',
|
|
570
|
+
'aws_role_arn',
|
|
571
|
+
'gcp_workload_identity_provider'
|
|
572
|
+
],
|
|
368
573
|
additionalProperties: false,
|
|
369
|
-
description:
|
|
574
|
+
description: 'OIDC Information for hosts to access to third party API\'s.'
|
|
370
575
|
}
|
|
371
576
|
},
|
|
372
|
-
required: [
|
|
577
|
+
required: [
|
|
578
|
+
'certificate_authority',
|
|
579
|
+
'endpoint',
|
|
580
|
+
'cluster_dns',
|
|
581
|
+
'auth_key',
|
|
582
|
+
'bootstrap_token',
|
|
583
|
+
'versions',
|
|
584
|
+
'third_party_api_access_config'
|
|
585
|
+
],
|
|
373
586
|
additionalProperties: false
|
|
374
587
|
};
|
|
375
588
|
export const ClusterSchema = {
|
|
@@ -387,21 +600,22 @@ export const ClusterSchema = {
|
|
|
387
600
|
type: 'string',
|
|
388
601
|
description: 'Tier of the cluster.',
|
|
389
602
|
example: 'pro',
|
|
390
|
-
enum: [
|
|
603
|
+
enum: [
|
|
604
|
+
'basic',
|
|
605
|
+
'pro'
|
|
606
|
+
]
|
|
391
607
|
},
|
|
392
608
|
region: {
|
|
393
609
|
type: 'string',
|
|
394
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
|
|
395
|
-
default: 'staging',
|
|
610
|
+
description: 'Cloudfleet control plane region. One of "staging-1a", "northamerica-central-1", "europe-central-1a", "northamerica-central-1a". This field can not be updated after creation.',
|
|
611
|
+
default: 'staging-1a',
|
|
396
612
|
example: 'northamerica-central-1a',
|
|
397
|
-
enum: [
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
default: '1.x.x-cfke.x',
|
|
404
|
-
example: '1.29.x-cfke.x'
|
|
613
|
+
enum: [
|
|
614
|
+
'staging-1a',
|
|
615
|
+
'northamerica-central-1',
|
|
616
|
+
'europe-central-1a',
|
|
617
|
+
'northamerica-central-1a'
|
|
618
|
+
]
|
|
405
619
|
},
|
|
406
620
|
id: {
|
|
407
621
|
type: 'string',
|
|
@@ -413,32 +627,57 @@ export const ClusterSchema = {
|
|
|
413
627
|
type: 'string',
|
|
414
628
|
description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
|
|
415
629
|
example: 'active',
|
|
416
|
-
enum: [
|
|
630
|
+
enum: [
|
|
631
|
+
'active',
|
|
632
|
+
'disabled',
|
|
633
|
+
'deleted',
|
|
634
|
+
'creating',
|
|
635
|
+
'deployed',
|
|
636
|
+
'failed',
|
|
637
|
+
'updating'
|
|
638
|
+
]
|
|
417
639
|
},
|
|
418
640
|
endpoint: {
|
|
419
641
|
anyOf: [
|
|
420
642
|
{
|
|
421
643
|
type: 'string',
|
|
422
644
|
format: 'uri',
|
|
423
|
-
description: 'URL of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
645
|
+
description: 'URL signed by the private CA of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster. (Deprecated, use endpoint_public instead)',
|
|
424
646
|
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.cloudfleet.dev:6443'
|
|
425
647
|
},
|
|
426
648
|
{
|
|
427
649
|
type: 'string',
|
|
428
|
-
enum: [
|
|
650
|
+
enum: [
|
|
651
|
+
''
|
|
652
|
+
]
|
|
653
|
+
}
|
|
654
|
+
]
|
|
655
|
+
},
|
|
656
|
+
endpoint_public: {
|
|
657
|
+
anyOf: [
|
|
658
|
+
{
|
|
659
|
+
type: 'string',
|
|
660
|
+
format: 'uri',
|
|
661
|
+
description: 'URL signed by a public CA of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
662
|
+
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.io'
|
|
663
|
+
},
|
|
664
|
+
{
|
|
665
|
+
type: 'string',
|
|
666
|
+
enum: [
|
|
667
|
+
''
|
|
668
|
+
]
|
|
429
669
|
}
|
|
430
670
|
]
|
|
431
671
|
},
|
|
432
672
|
certificate_ca: {
|
|
433
673
|
type: 'string',
|
|
434
674
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
435
|
-
example:
|
|
436
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
675
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
437
676
|
},
|
|
438
677
|
version_current: {
|
|
439
678
|
type: 'string',
|
|
440
679
|
description: 'Current version of the cluster.',
|
|
441
|
-
example: '1.
|
|
680
|
+
example: '1.33.7-cfke.264'
|
|
442
681
|
},
|
|
443
682
|
created_at: {
|
|
444
683
|
type: 'string',
|
|
@@ -454,9 +693,20 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
454
693
|
type: 'boolean',
|
|
455
694
|
description: 'Indicates if the cluster is ready to be used.',
|
|
456
695
|
example: true
|
|
696
|
+
},
|
|
697
|
+
version_channel: {
|
|
698
|
+
type: 'string',
|
|
699
|
+
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
700
|
+
description: 'Version of the kubernetes cluster.',
|
|
701
|
+
example: '1.x.x-cfke.x'
|
|
457
702
|
}
|
|
458
703
|
},
|
|
459
|
-
required: [
|
|
704
|
+
required: [
|
|
705
|
+
'name',
|
|
706
|
+
'tier',
|
|
707
|
+
'id',
|
|
708
|
+
'status'
|
|
709
|
+
],
|
|
460
710
|
additionalProperties: false
|
|
461
711
|
};
|
|
462
712
|
export const ClusterUpdateInputSchema = {
|
|
@@ -474,16 +724,21 @@ export const ClusterUpdateInputSchema = {
|
|
|
474
724
|
type: 'string',
|
|
475
725
|
description: 'Tier of the cluster.',
|
|
476
726
|
example: 'pro',
|
|
477
|
-
enum: [
|
|
727
|
+
enum: [
|
|
728
|
+
'basic',
|
|
729
|
+
'pro'
|
|
730
|
+
]
|
|
478
731
|
},
|
|
479
732
|
version_channel: {
|
|
480
733
|
type: 'string',
|
|
481
734
|
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
482
735
|
description: 'Version of the kubernetes cluster.',
|
|
483
|
-
example: '1.
|
|
736
|
+
example: '1.x.x-cfke.x'
|
|
484
737
|
}
|
|
485
738
|
},
|
|
486
|
-
required: [
|
|
739
|
+
required: [
|
|
740
|
+
'tier'
|
|
741
|
+
],
|
|
487
742
|
additionalProperties: false
|
|
488
743
|
};
|
|
489
744
|
export const FleetCreateInputSchema = {
|
|
@@ -493,13 +748,12 @@ export const FleetCreateInputSchema = {
|
|
|
493
748
|
type: 'object',
|
|
494
749
|
properties: {
|
|
495
750
|
cpu: {
|
|
496
|
-
type: '
|
|
497
|
-
format: 'float',
|
|
751
|
+
type: 'integer',
|
|
498
752
|
minimum: 0,
|
|
499
|
-
|
|
753
|
+
maximum: 100000,
|
|
754
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
500
755
|
}
|
|
501
756
|
},
|
|
502
|
-
required: ['cpu'],
|
|
503
757
|
additionalProperties: false,
|
|
504
758
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
505
759
|
},
|
|
@@ -507,47 +761,345 @@ export const FleetCreateInputSchema = {
|
|
|
507
761
|
type: 'object',
|
|
508
762
|
properties: {
|
|
509
763
|
enabled: {
|
|
510
|
-
type: 'boolean'
|
|
511
|
-
default: true
|
|
764
|
+
type: 'boolean'
|
|
512
765
|
},
|
|
513
766
|
project: {
|
|
514
767
|
type: 'string',
|
|
515
|
-
|
|
768
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
769
|
+
description: 'GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.',
|
|
770
|
+
example: 'my-cloudfleet-project'
|
|
516
771
|
}
|
|
517
772
|
},
|
|
518
|
-
required: [
|
|
773
|
+
required: [
|
|
774
|
+
'enabled'
|
|
775
|
+
],
|
|
519
776
|
additionalProperties: false
|
|
520
777
|
},
|
|
521
778
|
hetzner: {
|
|
522
779
|
type: 'object',
|
|
523
780
|
properties: {
|
|
524
781
|
enabled: {
|
|
525
|
-
type: 'boolean'
|
|
526
|
-
default: true
|
|
782
|
+
type: 'boolean'
|
|
527
783
|
},
|
|
528
784
|
apiKey: {
|
|
529
785
|
type: 'string',
|
|
530
|
-
|
|
786
|
+
maxLength: 64,
|
|
787
|
+
minLength: 64,
|
|
788
|
+
pattern: '^[A-Za-z0-9]+$',
|
|
789
|
+
description: 'Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.'
|
|
531
790
|
}
|
|
532
791
|
},
|
|
533
|
-
required: [
|
|
792
|
+
required: [
|
|
793
|
+
'enabled'
|
|
794
|
+
],
|
|
534
795
|
additionalProperties: false
|
|
535
796
|
},
|
|
536
797
|
aws: {
|
|
537
798
|
type: 'object',
|
|
538
799
|
properties: {
|
|
539
800
|
enabled: {
|
|
540
|
-
type: 'boolean'
|
|
541
|
-
default: true
|
|
801
|
+
type: 'boolean'
|
|
542
802
|
},
|
|
543
803
|
controllerRoleArn: {
|
|
544
804
|
type: 'string',
|
|
545
|
-
|
|
805
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
806
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
807
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
546
808
|
}
|
|
547
809
|
},
|
|
548
|
-
required: [
|
|
810
|
+
required: [
|
|
811
|
+
'enabled'
|
|
812
|
+
],
|
|
549
813
|
additionalProperties: false
|
|
550
814
|
},
|
|
815
|
+
constraints: {
|
|
816
|
+
type: 'object',
|
|
817
|
+
properties: {
|
|
818
|
+
'karpenter.sh/capacity-type': {
|
|
819
|
+
type: 'array',
|
|
820
|
+
items: {
|
|
821
|
+
type: 'string',
|
|
822
|
+
enum: [
|
|
823
|
+
'on-demand',
|
|
824
|
+
'spot'
|
|
825
|
+
]
|
|
826
|
+
},
|
|
827
|
+
minItems: 1,
|
|
828
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
829
|
+
default: [
|
|
830
|
+
'on-demand',
|
|
831
|
+
'spot'
|
|
832
|
+
]
|
|
833
|
+
},
|
|
834
|
+
'kubernetes.io/arch': {
|
|
835
|
+
type: 'array',
|
|
836
|
+
items: {
|
|
837
|
+
type: 'string',
|
|
838
|
+
enum: [
|
|
839
|
+
'amd64',
|
|
840
|
+
'arm64'
|
|
841
|
+
]
|
|
842
|
+
},
|
|
843
|
+
minItems: 1,
|
|
844
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
845
|
+
default: [
|
|
846
|
+
'amd64'
|
|
847
|
+
]
|
|
848
|
+
},
|
|
849
|
+
'cfke.io/instance-family': {
|
|
850
|
+
type: 'array',
|
|
851
|
+
items: {
|
|
852
|
+
type: 'string',
|
|
853
|
+
enum: [
|
|
854
|
+
'a1',
|
|
855
|
+
'a2',
|
|
856
|
+
'a3',
|
|
857
|
+
'a4',
|
|
858
|
+
'c1',
|
|
859
|
+
'c2',
|
|
860
|
+
'c2d',
|
|
861
|
+
'c3',
|
|
862
|
+
'c3d',
|
|
863
|
+
'c4',
|
|
864
|
+
'c4a',
|
|
865
|
+
'c4d',
|
|
866
|
+
'c5',
|
|
867
|
+
'c5a',
|
|
868
|
+
'c5ad',
|
|
869
|
+
'c5d',
|
|
870
|
+
'c5n',
|
|
871
|
+
'c6a',
|
|
872
|
+
'c6g',
|
|
873
|
+
'c6gd',
|
|
874
|
+
'c6gn',
|
|
875
|
+
'c6i',
|
|
876
|
+
'c6id',
|
|
877
|
+
'c6in',
|
|
878
|
+
'c7a',
|
|
879
|
+
'c7g',
|
|
880
|
+
'c7gd',
|
|
881
|
+
'c7gn',
|
|
882
|
+
'c7i',
|
|
883
|
+
'c7i-flex',
|
|
884
|
+
'c8g',
|
|
885
|
+
'c8gd',
|
|
886
|
+
'cax',
|
|
887
|
+
'ccx',
|
|
888
|
+
'cpx',
|
|
889
|
+
'cx',
|
|
890
|
+
'd2',
|
|
891
|
+
'd3',
|
|
892
|
+
'd3en',
|
|
893
|
+
'dl1',
|
|
894
|
+
'dl2q',
|
|
895
|
+
'e2',
|
|
896
|
+
'f1',
|
|
897
|
+
'f2',
|
|
898
|
+
'g1',
|
|
899
|
+
'g2',
|
|
900
|
+
'g4ad',
|
|
901
|
+
'g4dn',
|
|
902
|
+
'g5',
|
|
903
|
+
'g5g',
|
|
904
|
+
'g6',
|
|
905
|
+
'g6e',
|
|
906
|
+
'gr6',
|
|
907
|
+
'h1',
|
|
908
|
+
'h3',
|
|
909
|
+
'hpc6a',
|
|
910
|
+
'hpc6id',
|
|
911
|
+
'hpc7a',
|
|
912
|
+
'hpc7g',
|
|
913
|
+
'i2',
|
|
914
|
+
'i3',
|
|
915
|
+
'i3en',
|
|
916
|
+
'i4g',
|
|
917
|
+
'i4i',
|
|
918
|
+
'i7i',
|
|
919
|
+
'i7ie',
|
|
920
|
+
'i8g',
|
|
921
|
+
'im4gn',
|
|
922
|
+
'inf1',
|
|
923
|
+
'inf2',
|
|
924
|
+
'is4gen',
|
|
925
|
+
'm1',
|
|
926
|
+
'm2',
|
|
927
|
+
'm3',
|
|
928
|
+
'm4',
|
|
929
|
+
'm5',
|
|
930
|
+
'm5a',
|
|
931
|
+
'm5ad',
|
|
932
|
+
'm5d',
|
|
933
|
+
'm5dn',
|
|
934
|
+
'm5n',
|
|
935
|
+
'm5zn',
|
|
936
|
+
'm6a',
|
|
937
|
+
'm6g',
|
|
938
|
+
'm6gd',
|
|
939
|
+
'm6i',
|
|
940
|
+
'm6id',
|
|
941
|
+
'm6idn',
|
|
942
|
+
'm6in',
|
|
943
|
+
'm7a',
|
|
944
|
+
'm7g',
|
|
945
|
+
'm7gd',
|
|
946
|
+
'm7i',
|
|
947
|
+
'm7i-flex',
|
|
948
|
+
'm8g',
|
|
949
|
+
'm8gd',
|
|
950
|
+
'n1',
|
|
951
|
+
'n2',
|
|
952
|
+
'n2d',
|
|
953
|
+
'n4',
|
|
954
|
+
'p3',
|
|
955
|
+
'p3dn',
|
|
956
|
+
'p4d',
|
|
957
|
+
'p4de',
|
|
958
|
+
'p5',
|
|
959
|
+
'p5e',
|
|
960
|
+
'p5en',
|
|
961
|
+
'p6-b200',
|
|
962
|
+
'r3',
|
|
963
|
+
'r4',
|
|
964
|
+
'r5',
|
|
965
|
+
'r5a',
|
|
966
|
+
'r5ad',
|
|
967
|
+
'r5b',
|
|
968
|
+
'r5d',
|
|
969
|
+
'r5dn',
|
|
970
|
+
'r5n',
|
|
971
|
+
'r6a',
|
|
972
|
+
'r6g',
|
|
973
|
+
'r6gd',
|
|
974
|
+
'r6i',
|
|
975
|
+
'r6id',
|
|
976
|
+
'r6idn',
|
|
977
|
+
'r6in',
|
|
978
|
+
'r7a',
|
|
979
|
+
'r7g',
|
|
980
|
+
'r7gd',
|
|
981
|
+
'r7i',
|
|
982
|
+
'r7iz',
|
|
983
|
+
'r8g',
|
|
984
|
+
'r8gd',
|
|
985
|
+
't2',
|
|
986
|
+
't2a',
|
|
987
|
+
't2d',
|
|
988
|
+
't3',
|
|
989
|
+
't3a',
|
|
990
|
+
't4g',
|
|
991
|
+
'trn1',
|
|
992
|
+
'trn1n',
|
|
993
|
+
'u-3tb1',
|
|
994
|
+
'u-6tb1',
|
|
995
|
+
'u7i-12tb',
|
|
996
|
+
'u7i-6tb',
|
|
997
|
+
'u7i-8tb',
|
|
998
|
+
'u7in-16tb',
|
|
999
|
+
'u7in-24tb',
|
|
1000
|
+
'u7in-32tb',
|
|
1001
|
+
'vt1',
|
|
1002
|
+
'x1',
|
|
1003
|
+
'x1e',
|
|
1004
|
+
'x2gd',
|
|
1005
|
+
'x2idn',
|
|
1006
|
+
'x2iedn',
|
|
1007
|
+
'x2iezn',
|
|
1008
|
+
'x4',
|
|
1009
|
+
'x8g',
|
|
1010
|
+
'z1d',
|
|
1011
|
+
'z3'
|
|
1012
|
+
]
|
|
1013
|
+
},
|
|
1014
|
+
description: 'Allowed values for `cfke.io/instance-family`.'
|
|
1015
|
+
},
|
|
1016
|
+
'topology.kubernetes.io/region': {
|
|
1017
|
+
type: 'array',
|
|
1018
|
+
items: {
|
|
1019
|
+
type: 'string',
|
|
1020
|
+
enum: [
|
|
1021
|
+
'africa-south1',
|
|
1022
|
+
'ap-northeast-1',
|
|
1023
|
+
'ap-northeast-2',
|
|
1024
|
+
'ap-northeast-3',
|
|
1025
|
+
'ap-south-1',
|
|
1026
|
+
'ap-southeast-1',
|
|
1027
|
+
'ap-southeast-2',
|
|
1028
|
+
'ash',
|
|
1029
|
+
'asia-east1',
|
|
1030
|
+
'asia-east2',
|
|
1031
|
+
'asia-northeast1',
|
|
1032
|
+
'asia-northeast2',
|
|
1033
|
+
'asia-northeast3',
|
|
1034
|
+
'asia-south1',
|
|
1035
|
+
'asia-south2',
|
|
1036
|
+
'asia-southeast1',
|
|
1037
|
+
'asia-southeast2',
|
|
1038
|
+
'australia-southeast1',
|
|
1039
|
+
'australia-southeast2',
|
|
1040
|
+
'ca-central-1',
|
|
1041
|
+
'eu-central-1',
|
|
1042
|
+
'eu-central-2',
|
|
1043
|
+
'eu-north-1',
|
|
1044
|
+
'eu-west-1',
|
|
1045
|
+
'eu-west-2',
|
|
1046
|
+
'eu-west-3',
|
|
1047
|
+
'europe-central2',
|
|
1048
|
+
'europe-north1',
|
|
1049
|
+
'europe-southwest1',
|
|
1050
|
+
'europe-west1',
|
|
1051
|
+
'europe-west10',
|
|
1052
|
+
'europe-west12',
|
|
1053
|
+
'europe-west2',
|
|
1054
|
+
'europe-west3',
|
|
1055
|
+
'europe-west4',
|
|
1056
|
+
'europe-west6',
|
|
1057
|
+
'europe-west8',
|
|
1058
|
+
'europe-west9',
|
|
1059
|
+
'fsn1',
|
|
1060
|
+
'hel1',
|
|
1061
|
+
'hil',
|
|
1062
|
+
'me-central1',
|
|
1063
|
+
'me-central2',
|
|
1064
|
+
'me-west1',
|
|
1065
|
+
'nbg1',
|
|
1066
|
+
'northamerica-northeast1',
|
|
1067
|
+
'northamerica-northeast2',
|
|
1068
|
+
'sa-east-1',
|
|
1069
|
+
'sin',
|
|
1070
|
+
'southamerica-east1',
|
|
1071
|
+
'southamerica-west1',
|
|
1072
|
+
'us-central1',
|
|
1073
|
+
'us-east-1',
|
|
1074
|
+
'us-east-2',
|
|
1075
|
+
'us-east1',
|
|
1076
|
+
'us-east4',
|
|
1077
|
+
'us-east5',
|
|
1078
|
+
'us-south1',
|
|
1079
|
+
'us-west-1',
|
|
1080
|
+
'us-west-2',
|
|
1081
|
+
'us-west1',
|
|
1082
|
+
'us-west2',
|
|
1083
|
+
'us-west3',
|
|
1084
|
+
'us-west4'
|
|
1085
|
+
]
|
|
1086
|
+
},
|
|
1087
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.'
|
|
1088
|
+
}
|
|
1089
|
+
},
|
|
1090
|
+
additionalProperties: false,
|
|
1091
|
+
description: 'Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.'
|
|
1092
|
+
},
|
|
1093
|
+
scalingProfile: {
|
|
1094
|
+
type: 'string',
|
|
1095
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
|
|
1096
|
+
default: 'conservative',
|
|
1097
|
+
example: 'conservative',
|
|
1098
|
+
enum: [
|
|
1099
|
+
'aggressive',
|
|
1100
|
+
'conservative'
|
|
1101
|
+
]
|
|
1102
|
+
},
|
|
551
1103
|
id: {
|
|
552
1104
|
type: 'string',
|
|
553
1105
|
maxLength: 63,
|
|
@@ -557,7 +1109,9 @@ export const FleetCreateInputSchema = {
|
|
|
557
1109
|
example: 'new-clouds-fleet'
|
|
558
1110
|
}
|
|
559
1111
|
},
|
|
560
|
-
required: [
|
|
1112
|
+
required: [
|
|
1113
|
+
'id'
|
|
1114
|
+
],
|
|
561
1115
|
additionalProperties: false
|
|
562
1116
|
};
|
|
563
1117
|
export const FleetSchema = {
|
|
@@ -567,13 +1121,12 @@ export const FleetSchema = {
|
|
|
567
1121
|
type: 'object',
|
|
568
1122
|
properties: {
|
|
569
1123
|
cpu: {
|
|
570
|
-
type: '
|
|
571
|
-
format: 'float',
|
|
1124
|
+
type: 'integer',
|
|
572
1125
|
minimum: 0,
|
|
573
|
-
|
|
1126
|
+
maximum: 100000,
|
|
1127
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
574
1128
|
}
|
|
575
1129
|
},
|
|
576
|
-
required: ['cpu'],
|
|
577
1130
|
additionalProperties: false,
|
|
578
1131
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
579
1132
|
},
|
|
@@ -581,47 +1134,343 @@ export const FleetSchema = {
|
|
|
581
1134
|
type: 'object',
|
|
582
1135
|
properties: {
|
|
583
1136
|
enabled: {
|
|
584
|
-
type: 'boolean'
|
|
585
|
-
default: true
|
|
1137
|
+
type: 'boolean'
|
|
586
1138
|
},
|
|
587
1139
|
project: {
|
|
588
1140
|
type: 'string',
|
|
589
|
-
|
|
1141
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1142
|
+
description: 'GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.',
|
|
1143
|
+
example: 'my-cloudfleet-project'
|
|
590
1144
|
}
|
|
591
1145
|
},
|
|
592
|
-
required: [
|
|
1146
|
+
required: [
|
|
1147
|
+
'enabled'
|
|
1148
|
+
],
|
|
593
1149
|
additionalProperties: false
|
|
594
1150
|
},
|
|
595
1151
|
hetzner: {
|
|
596
1152
|
type: 'object',
|
|
597
1153
|
properties: {
|
|
598
1154
|
enabled: {
|
|
599
|
-
type: 'boolean'
|
|
600
|
-
default: true
|
|
1155
|
+
type: 'boolean'
|
|
601
1156
|
},
|
|
602
1157
|
apiKey: {
|
|
603
1158
|
type: 'string',
|
|
604
|
-
|
|
1159
|
+
pattern: '^\\*{64}$',
|
|
1160
|
+
description: 'Redacted Hetzner API token. Returned as 64 asterisks when a token is configured; omitted otherwise. The real value is never echoed by the API.'
|
|
605
1161
|
}
|
|
606
1162
|
},
|
|
607
|
-
required: [
|
|
1163
|
+
required: [
|
|
1164
|
+
'enabled'
|
|
1165
|
+
],
|
|
608
1166
|
additionalProperties: false
|
|
609
1167
|
},
|
|
610
1168
|
aws: {
|
|
611
1169
|
type: 'object',
|
|
612
1170
|
properties: {
|
|
613
1171
|
enabled: {
|
|
614
|
-
type: 'boolean'
|
|
615
|
-
default: true
|
|
1172
|
+
type: 'boolean'
|
|
616
1173
|
},
|
|
617
1174
|
controllerRoleArn: {
|
|
618
1175
|
type: 'string',
|
|
619
|
-
|
|
1176
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1177
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1178
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
620
1179
|
}
|
|
621
1180
|
},
|
|
622
|
-
required: [
|
|
1181
|
+
required: [
|
|
1182
|
+
'enabled'
|
|
1183
|
+
],
|
|
623
1184
|
additionalProperties: false
|
|
624
1185
|
},
|
|
1186
|
+
constraints: {
|
|
1187
|
+
type: 'object',
|
|
1188
|
+
properties: {
|
|
1189
|
+
'karpenter.sh/capacity-type': {
|
|
1190
|
+
type: 'array',
|
|
1191
|
+
items: {
|
|
1192
|
+
type: 'string',
|
|
1193
|
+
enum: [
|
|
1194
|
+
'on-demand',
|
|
1195
|
+
'spot'
|
|
1196
|
+
]
|
|
1197
|
+
},
|
|
1198
|
+
minItems: 1,
|
|
1199
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1200
|
+
default: [
|
|
1201
|
+
'on-demand',
|
|
1202
|
+
'spot'
|
|
1203
|
+
]
|
|
1204
|
+
},
|
|
1205
|
+
'kubernetes.io/arch': {
|
|
1206
|
+
type: 'array',
|
|
1207
|
+
items: {
|
|
1208
|
+
type: 'string',
|
|
1209
|
+
enum: [
|
|
1210
|
+
'amd64',
|
|
1211
|
+
'arm64'
|
|
1212
|
+
]
|
|
1213
|
+
},
|
|
1214
|
+
minItems: 1,
|
|
1215
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1216
|
+
default: [
|
|
1217
|
+
'amd64'
|
|
1218
|
+
]
|
|
1219
|
+
},
|
|
1220
|
+
'cfke.io/instance-family': {
|
|
1221
|
+
type: 'array',
|
|
1222
|
+
items: {
|
|
1223
|
+
type: 'string',
|
|
1224
|
+
enum: [
|
|
1225
|
+
'a1',
|
|
1226
|
+
'a2',
|
|
1227
|
+
'a3',
|
|
1228
|
+
'a4',
|
|
1229
|
+
'c1',
|
|
1230
|
+
'c2',
|
|
1231
|
+
'c2d',
|
|
1232
|
+
'c3',
|
|
1233
|
+
'c3d',
|
|
1234
|
+
'c4',
|
|
1235
|
+
'c4a',
|
|
1236
|
+
'c4d',
|
|
1237
|
+
'c5',
|
|
1238
|
+
'c5a',
|
|
1239
|
+
'c5ad',
|
|
1240
|
+
'c5d',
|
|
1241
|
+
'c5n',
|
|
1242
|
+
'c6a',
|
|
1243
|
+
'c6g',
|
|
1244
|
+
'c6gd',
|
|
1245
|
+
'c6gn',
|
|
1246
|
+
'c6i',
|
|
1247
|
+
'c6id',
|
|
1248
|
+
'c6in',
|
|
1249
|
+
'c7a',
|
|
1250
|
+
'c7g',
|
|
1251
|
+
'c7gd',
|
|
1252
|
+
'c7gn',
|
|
1253
|
+
'c7i',
|
|
1254
|
+
'c7i-flex',
|
|
1255
|
+
'c8g',
|
|
1256
|
+
'c8gd',
|
|
1257
|
+
'cax',
|
|
1258
|
+
'ccx',
|
|
1259
|
+
'cpx',
|
|
1260
|
+
'cx',
|
|
1261
|
+
'd2',
|
|
1262
|
+
'd3',
|
|
1263
|
+
'd3en',
|
|
1264
|
+
'dl1',
|
|
1265
|
+
'dl2q',
|
|
1266
|
+
'e2',
|
|
1267
|
+
'f1',
|
|
1268
|
+
'f2',
|
|
1269
|
+
'g1',
|
|
1270
|
+
'g2',
|
|
1271
|
+
'g4ad',
|
|
1272
|
+
'g4dn',
|
|
1273
|
+
'g5',
|
|
1274
|
+
'g5g',
|
|
1275
|
+
'g6',
|
|
1276
|
+
'g6e',
|
|
1277
|
+
'gr6',
|
|
1278
|
+
'h1',
|
|
1279
|
+
'h3',
|
|
1280
|
+
'hpc6a',
|
|
1281
|
+
'hpc6id',
|
|
1282
|
+
'hpc7a',
|
|
1283
|
+
'hpc7g',
|
|
1284
|
+
'i2',
|
|
1285
|
+
'i3',
|
|
1286
|
+
'i3en',
|
|
1287
|
+
'i4g',
|
|
1288
|
+
'i4i',
|
|
1289
|
+
'i7i',
|
|
1290
|
+
'i7ie',
|
|
1291
|
+
'i8g',
|
|
1292
|
+
'im4gn',
|
|
1293
|
+
'inf1',
|
|
1294
|
+
'inf2',
|
|
1295
|
+
'is4gen',
|
|
1296
|
+
'm1',
|
|
1297
|
+
'm2',
|
|
1298
|
+
'm3',
|
|
1299
|
+
'm4',
|
|
1300
|
+
'm5',
|
|
1301
|
+
'm5a',
|
|
1302
|
+
'm5ad',
|
|
1303
|
+
'm5d',
|
|
1304
|
+
'm5dn',
|
|
1305
|
+
'm5n',
|
|
1306
|
+
'm5zn',
|
|
1307
|
+
'm6a',
|
|
1308
|
+
'm6g',
|
|
1309
|
+
'm6gd',
|
|
1310
|
+
'm6i',
|
|
1311
|
+
'm6id',
|
|
1312
|
+
'm6idn',
|
|
1313
|
+
'm6in',
|
|
1314
|
+
'm7a',
|
|
1315
|
+
'm7g',
|
|
1316
|
+
'm7gd',
|
|
1317
|
+
'm7i',
|
|
1318
|
+
'm7i-flex',
|
|
1319
|
+
'm8g',
|
|
1320
|
+
'm8gd',
|
|
1321
|
+
'n1',
|
|
1322
|
+
'n2',
|
|
1323
|
+
'n2d',
|
|
1324
|
+
'n4',
|
|
1325
|
+
'p3',
|
|
1326
|
+
'p3dn',
|
|
1327
|
+
'p4d',
|
|
1328
|
+
'p4de',
|
|
1329
|
+
'p5',
|
|
1330
|
+
'p5e',
|
|
1331
|
+
'p5en',
|
|
1332
|
+
'p6-b200',
|
|
1333
|
+
'r3',
|
|
1334
|
+
'r4',
|
|
1335
|
+
'r5',
|
|
1336
|
+
'r5a',
|
|
1337
|
+
'r5ad',
|
|
1338
|
+
'r5b',
|
|
1339
|
+
'r5d',
|
|
1340
|
+
'r5dn',
|
|
1341
|
+
'r5n',
|
|
1342
|
+
'r6a',
|
|
1343
|
+
'r6g',
|
|
1344
|
+
'r6gd',
|
|
1345
|
+
'r6i',
|
|
1346
|
+
'r6id',
|
|
1347
|
+
'r6idn',
|
|
1348
|
+
'r6in',
|
|
1349
|
+
'r7a',
|
|
1350
|
+
'r7g',
|
|
1351
|
+
'r7gd',
|
|
1352
|
+
'r7i',
|
|
1353
|
+
'r7iz',
|
|
1354
|
+
'r8g',
|
|
1355
|
+
'r8gd',
|
|
1356
|
+
't2',
|
|
1357
|
+
't2a',
|
|
1358
|
+
't2d',
|
|
1359
|
+
't3',
|
|
1360
|
+
't3a',
|
|
1361
|
+
't4g',
|
|
1362
|
+
'trn1',
|
|
1363
|
+
'trn1n',
|
|
1364
|
+
'u-3tb1',
|
|
1365
|
+
'u-6tb1',
|
|
1366
|
+
'u7i-12tb',
|
|
1367
|
+
'u7i-6tb',
|
|
1368
|
+
'u7i-8tb',
|
|
1369
|
+
'u7in-16tb',
|
|
1370
|
+
'u7in-24tb',
|
|
1371
|
+
'u7in-32tb',
|
|
1372
|
+
'vt1',
|
|
1373
|
+
'x1',
|
|
1374
|
+
'x1e',
|
|
1375
|
+
'x2gd',
|
|
1376
|
+
'x2idn',
|
|
1377
|
+
'x2iedn',
|
|
1378
|
+
'x2iezn',
|
|
1379
|
+
'x4',
|
|
1380
|
+
'x8g',
|
|
1381
|
+
'z1d',
|
|
1382
|
+
'z3'
|
|
1383
|
+
]
|
|
1384
|
+
},
|
|
1385
|
+
description: 'Allowed values for `cfke.io/instance-family`.'
|
|
1386
|
+
},
|
|
1387
|
+
'topology.kubernetes.io/region': {
|
|
1388
|
+
type: 'array',
|
|
1389
|
+
items: {
|
|
1390
|
+
type: 'string',
|
|
1391
|
+
enum: [
|
|
1392
|
+
'africa-south1',
|
|
1393
|
+
'ap-northeast-1',
|
|
1394
|
+
'ap-northeast-2',
|
|
1395
|
+
'ap-northeast-3',
|
|
1396
|
+
'ap-south-1',
|
|
1397
|
+
'ap-southeast-1',
|
|
1398
|
+
'ap-southeast-2',
|
|
1399
|
+
'ash',
|
|
1400
|
+
'asia-east1',
|
|
1401
|
+
'asia-east2',
|
|
1402
|
+
'asia-northeast1',
|
|
1403
|
+
'asia-northeast2',
|
|
1404
|
+
'asia-northeast3',
|
|
1405
|
+
'asia-south1',
|
|
1406
|
+
'asia-south2',
|
|
1407
|
+
'asia-southeast1',
|
|
1408
|
+
'asia-southeast2',
|
|
1409
|
+
'australia-southeast1',
|
|
1410
|
+
'australia-southeast2',
|
|
1411
|
+
'ca-central-1',
|
|
1412
|
+
'eu-central-1',
|
|
1413
|
+
'eu-central-2',
|
|
1414
|
+
'eu-north-1',
|
|
1415
|
+
'eu-west-1',
|
|
1416
|
+
'eu-west-2',
|
|
1417
|
+
'eu-west-3',
|
|
1418
|
+
'europe-central2',
|
|
1419
|
+
'europe-north1',
|
|
1420
|
+
'europe-southwest1',
|
|
1421
|
+
'europe-west1',
|
|
1422
|
+
'europe-west10',
|
|
1423
|
+
'europe-west12',
|
|
1424
|
+
'europe-west2',
|
|
1425
|
+
'europe-west3',
|
|
1426
|
+
'europe-west4',
|
|
1427
|
+
'europe-west6',
|
|
1428
|
+
'europe-west8',
|
|
1429
|
+
'europe-west9',
|
|
1430
|
+
'fsn1',
|
|
1431
|
+
'hel1',
|
|
1432
|
+
'hil',
|
|
1433
|
+
'me-central1',
|
|
1434
|
+
'me-central2',
|
|
1435
|
+
'me-west1',
|
|
1436
|
+
'nbg1',
|
|
1437
|
+
'northamerica-northeast1',
|
|
1438
|
+
'northamerica-northeast2',
|
|
1439
|
+
'sa-east-1',
|
|
1440
|
+
'sin',
|
|
1441
|
+
'southamerica-east1',
|
|
1442
|
+
'southamerica-west1',
|
|
1443
|
+
'us-central1',
|
|
1444
|
+
'us-east-1',
|
|
1445
|
+
'us-east-2',
|
|
1446
|
+
'us-east1',
|
|
1447
|
+
'us-east4',
|
|
1448
|
+
'us-east5',
|
|
1449
|
+
'us-south1',
|
|
1450
|
+
'us-west-1',
|
|
1451
|
+
'us-west-2',
|
|
1452
|
+
'us-west1',
|
|
1453
|
+
'us-west2',
|
|
1454
|
+
'us-west3',
|
|
1455
|
+
'us-west4'
|
|
1456
|
+
]
|
|
1457
|
+
},
|
|
1458
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.'
|
|
1459
|
+
}
|
|
1460
|
+
},
|
|
1461
|
+
additionalProperties: false,
|
|
1462
|
+
description: 'Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.'
|
|
1463
|
+
},
|
|
1464
|
+
scalingProfile: {
|
|
1465
|
+
type: 'string',
|
|
1466
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
|
|
1467
|
+
default: 'conservative',
|
|
1468
|
+
example: 'conservative',
|
|
1469
|
+
enum: [
|
|
1470
|
+
'aggressive',
|
|
1471
|
+
'conservative'
|
|
1472
|
+
]
|
|
1473
|
+
},
|
|
625
1474
|
id: {
|
|
626
1475
|
type: 'string',
|
|
627
1476
|
maxLength: 63,
|
|
@@ -631,7 +1480,10 @@ export const FleetSchema = {
|
|
|
631
1480
|
example: 'new-clouds-fleet'
|
|
632
1481
|
}
|
|
633
1482
|
},
|
|
634
|
-
required: [
|
|
1483
|
+
required: [
|
|
1484
|
+
'scalingProfile',
|
|
1485
|
+
'id'
|
|
1486
|
+
],
|
|
635
1487
|
additionalProperties: false
|
|
636
1488
|
};
|
|
637
1489
|
export const FleetUpdateInputSchema = {
|
|
@@ -641,13 +1493,12 @@ export const FleetUpdateInputSchema = {
|
|
|
641
1493
|
type: 'object',
|
|
642
1494
|
properties: {
|
|
643
1495
|
cpu: {
|
|
644
|
-
type: '
|
|
645
|
-
format: 'float',
|
|
1496
|
+
type: 'integer',
|
|
646
1497
|
minimum: 0,
|
|
647
|
-
|
|
1498
|
+
maximum: 100000,
|
|
1499
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
648
1500
|
}
|
|
649
1501
|
},
|
|
650
|
-
required: ['cpu'],
|
|
651
1502
|
additionalProperties: false,
|
|
652
1503
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
653
1504
|
},
|
|
@@ -655,48 +1506,341 @@ export const FleetUpdateInputSchema = {
|
|
|
655
1506
|
type: 'object',
|
|
656
1507
|
properties: {
|
|
657
1508
|
enabled: {
|
|
658
|
-
type: 'boolean'
|
|
659
|
-
default: true
|
|
1509
|
+
type: 'boolean'
|
|
660
1510
|
},
|
|
661
1511
|
project: {
|
|
662
1512
|
type: 'string',
|
|
663
|
-
|
|
1513
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1514
|
+
description: 'GCP project ID to deploy instances into. 6-30 chars, lowercase letters/digits/hyphens, must start with a letter and not end with a hyphen. Omit when GCP is disabled.',
|
|
1515
|
+
example: 'my-cloudfleet-project'
|
|
664
1516
|
}
|
|
665
1517
|
},
|
|
666
|
-
required: [
|
|
1518
|
+
required: [
|
|
1519
|
+
'enabled'
|
|
1520
|
+
],
|
|
667
1521
|
additionalProperties: false
|
|
668
1522
|
},
|
|
669
1523
|
hetzner: {
|
|
670
1524
|
type: 'object',
|
|
671
1525
|
properties: {
|
|
672
1526
|
enabled: {
|
|
673
|
-
type: 'boolean'
|
|
674
|
-
default: true
|
|
1527
|
+
type: 'boolean'
|
|
675
1528
|
},
|
|
676
1529
|
apiKey: {
|
|
677
1530
|
type: 'string',
|
|
678
|
-
|
|
1531
|
+
maxLength: 64,
|
|
1532
|
+
minLength: 64,
|
|
1533
|
+
pattern: '^[A-Za-z0-9]+$',
|
|
1534
|
+
description: 'Hetzner Cloud API token with read / write access (64 alphanumeric characters). Omit this field to keep the existing value.'
|
|
679
1535
|
}
|
|
680
1536
|
},
|
|
681
|
-
required: [
|
|
1537
|
+
required: [
|
|
1538
|
+
'enabled'
|
|
1539
|
+
],
|
|
682
1540
|
additionalProperties: false
|
|
683
1541
|
},
|
|
684
1542
|
aws: {
|
|
685
1543
|
type: 'object',
|
|
686
1544
|
properties: {
|
|
687
1545
|
enabled: {
|
|
688
|
-
type: 'boolean'
|
|
689
|
-
default: true
|
|
1546
|
+
type: 'boolean'
|
|
690
1547
|
},
|
|
691
1548
|
controllerRoleArn: {
|
|
692
1549
|
type: 'string',
|
|
693
|
-
|
|
1550
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1551
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1552
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
694
1553
|
}
|
|
695
1554
|
},
|
|
696
|
-
required: [
|
|
1555
|
+
required: [
|
|
1556
|
+
'enabled'
|
|
1557
|
+
],
|
|
697
1558
|
additionalProperties: false
|
|
1559
|
+
},
|
|
1560
|
+
constraints: {
|
|
1561
|
+
type: 'object',
|
|
1562
|
+
properties: {
|
|
1563
|
+
'karpenter.sh/capacity-type': {
|
|
1564
|
+
type: 'array',
|
|
1565
|
+
items: {
|
|
1566
|
+
type: 'string',
|
|
1567
|
+
enum: [
|
|
1568
|
+
'on-demand',
|
|
1569
|
+
'spot'
|
|
1570
|
+
]
|
|
1571
|
+
},
|
|
1572
|
+
minItems: 1,
|
|
1573
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.'
|
|
1574
|
+
},
|
|
1575
|
+
'kubernetes.io/arch': {
|
|
1576
|
+
type: 'array',
|
|
1577
|
+
items: {
|
|
1578
|
+
type: 'string',
|
|
1579
|
+
enum: [
|
|
1580
|
+
'amd64',
|
|
1581
|
+
'arm64'
|
|
1582
|
+
]
|
|
1583
|
+
},
|
|
1584
|
+
minItems: 1,
|
|
1585
|
+
description: 'Allowed values for `kubernetes.io/arch`.'
|
|
1586
|
+
},
|
|
1587
|
+
'cfke.io/instance-family': {
|
|
1588
|
+
type: 'array',
|
|
1589
|
+
items: {
|
|
1590
|
+
type: 'string',
|
|
1591
|
+
enum: [
|
|
1592
|
+
'a1',
|
|
1593
|
+
'a2',
|
|
1594
|
+
'a3',
|
|
1595
|
+
'a4',
|
|
1596
|
+
'c1',
|
|
1597
|
+
'c2',
|
|
1598
|
+
'c2d',
|
|
1599
|
+
'c3',
|
|
1600
|
+
'c3d',
|
|
1601
|
+
'c4',
|
|
1602
|
+
'c4a',
|
|
1603
|
+
'c4d',
|
|
1604
|
+
'c5',
|
|
1605
|
+
'c5a',
|
|
1606
|
+
'c5ad',
|
|
1607
|
+
'c5d',
|
|
1608
|
+
'c5n',
|
|
1609
|
+
'c6a',
|
|
1610
|
+
'c6g',
|
|
1611
|
+
'c6gd',
|
|
1612
|
+
'c6gn',
|
|
1613
|
+
'c6i',
|
|
1614
|
+
'c6id',
|
|
1615
|
+
'c6in',
|
|
1616
|
+
'c7a',
|
|
1617
|
+
'c7g',
|
|
1618
|
+
'c7gd',
|
|
1619
|
+
'c7gn',
|
|
1620
|
+
'c7i',
|
|
1621
|
+
'c7i-flex',
|
|
1622
|
+
'c8g',
|
|
1623
|
+
'c8gd',
|
|
1624
|
+
'cax',
|
|
1625
|
+
'ccx',
|
|
1626
|
+
'cpx',
|
|
1627
|
+
'cx',
|
|
1628
|
+
'd2',
|
|
1629
|
+
'd3',
|
|
1630
|
+
'd3en',
|
|
1631
|
+
'dl1',
|
|
1632
|
+
'dl2q',
|
|
1633
|
+
'e2',
|
|
1634
|
+
'f1',
|
|
1635
|
+
'f2',
|
|
1636
|
+
'g1',
|
|
1637
|
+
'g2',
|
|
1638
|
+
'g4ad',
|
|
1639
|
+
'g4dn',
|
|
1640
|
+
'g5',
|
|
1641
|
+
'g5g',
|
|
1642
|
+
'g6',
|
|
1643
|
+
'g6e',
|
|
1644
|
+
'gr6',
|
|
1645
|
+
'h1',
|
|
1646
|
+
'h3',
|
|
1647
|
+
'hpc6a',
|
|
1648
|
+
'hpc6id',
|
|
1649
|
+
'hpc7a',
|
|
1650
|
+
'hpc7g',
|
|
1651
|
+
'i2',
|
|
1652
|
+
'i3',
|
|
1653
|
+
'i3en',
|
|
1654
|
+
'i4g',
|
|
1655
|
+
'i4i',
|
|
1656
|
+
'i7i',
|
|
1657
|
+
'i7ie',
|
|
1658
|
+
'i8g',
|
|
1659
|
+
'im4gn',
|
|
1660
|
+
'inf1',
|
|
1661
|
+
'inf2',
|
|
1662
|
+
'is4gen',
|
|
1663
|
+
'm1',
|
|
1664
|
+
'm2',
|
|
1665
|
+
'm3',
|
|
1666
|
+
'm4',
|
|
1667
|
+
'm5',
|
|
1668
|
+
'm5a',
|
|
1669
|
+
'm5ad',
|
|
1670
|
+
'm5d',
|
|
1671
|
+
'm5dn',
|
|
1672
|
+
'm5n',
|
|
1673
|
+
'm5zn',
|
|
1674
|
+
'm6a',
|
|
1675
|
+
'm6g',
|
|
1676
|
+
'm6gd',
|
|
1677
|
+
'm6i',
|
|
1678
|
+
'm6id',
|
|
1679
|
+
'm6idn',
|
|
1680
|
+
'm6in',
|
|
1681
|
+
'm7a',
|
|
1682
|
+
'm7g',
|
|
1683
|
+
'm7gd',
|
|
1684
|
+
'm7i',
|
|
1685
|
+
'm7i-flex',
|
|
1686
|
+
'm8g',
|
|
1687
|
+
'm8gd',
|
|
1688
|
+
'n1',
|
|
1689
|
+
'n2',
|
|
1690
|
+
'n2d',
|
|
1691
|
+
'n4',
|
|
1692
|
+
'p3',
|
|
1693
|
+
'p3dn',
|
|
1694
|
+
'p4d',
|
|
1695
|
+
'p4de',
|
|
1696
|
+
'p5',
|
|
1697
|
+
'p5e',
|
|
1698
|
+
'p5en',
|
|
1699
|
+
'p6-b200',
|
|
1700
|
+
'r3',
|
|
1701
|
+
'r4',
|
|
1702
|
+
'r5',
|
|
1703
|
+
'r5a',
|
|
1704
|
+
'r5ad',
|
|
1705
|
+
'r5b',
|
|
1706
|
+
'r5d',
|
|
1707
|
+
'r5dn',
|
|
1708
|
+
'r5n',
|
|
1709
|
+
'r6a',
|
|
1710
|
+
'r6g',
|
|
1711
|
+
'r6gd',
|
|
1712
|
+
'r6i',
|
|
1713
|
+
'r6id',
|
|
1714
|
+
'r6idn',
|
|
1715
|
+
'r6in',
|
|
1716
|
+
'r7a',
|
|
1717
|
+
'r7g',
|
|
1718
|
+
'r7gd',
|
|
1719
|
+
'r7i',
|
|
1720
|
+
'r7iz',
|
|
1721
|
+
'r8g',
|
|
1722
|
+
'r8gd',
|
|
1723
|
+
't2',
|
|
1724
|
+
't2a',
|
|
1725
|
+
't2d',
|
|
1726
|
+
't3',
|
|
1727
|
+
't3a',
|
|
1728
|
+
't4g',
|
|
1729
|
+
'trn1',
|
|
1730
|
+
'trn1n',
|
|
1731
|
+
'u-3tb1',
|
|
1732
|
+
'u-6tb1',
|
|
1733
|
+
'u7i-12tb',
|
|
1734
|
+
'u7i-6tb',
|
|
1735
|
+
'u7i-8tb',
|
|
1736
|
+
'u7in-16tb',
|
|
1737
|
+
'u7in-24tb',
|
|
1738
|
+
'u7in-32tb',
|
|
1739
|
+
'vt1',
|
|
1740
|
+
'x1',
|
|
1741
|
+
'x1e',
|
|
1742
|
+
'x2gd',
|
|
1743
|
+
'x2idn',
|
|
1744
|
+
'x2iedn',
|
|
1745
|
+
'x2iezn',
|
|
1746
|
+
'x4',
|
|
1747
|
+
'x8g',
|
|
1748
|
+
'z1d',
|
|
1749
|
+
'z3'
|
|
1750
|
+
]
|
|
1751
|
+
},
|
|
1752
|
+
description: 'Allowed values for `cfke.io/instance-family`.'
|
|
1753
|
+
},
|
|
1754
|
+
'topology.kubernetes.io/region': {
|
|
1755
|
+
type: 'array',
|
|
1756
|
+
items: {
|
|
1757
|
+
type: 'string',
|
|
1758
|
+
enum: [
|
|
1759
|
+
'africa-south1',
|
|
1760
|
+
'ap-northeast-1',
|
|
1761
|
+
'ap-northeast-2',
|
|
1762
|
+
'ap-northeast-3',
|
|
1763
|
+
'ap-south-1',
|
|
1764
|
+
'ap-southeast-1',
|
|
1765
|
+
'ap-southeast-2',
|
|
1766
|
+
'ash',
|
|
1767
|
+
'asia-east1',
|
|
1768
|
+
'asia-east2',
|
|
1769
|
+
'asia-northeast1',
|
|
1770
|
+
'asia-northeast2',
|
|
1771
|
+
'asia-northeast3',
|
|
1772
|
+
'asia-south1',
|
|
1773
|
+
'asia-south2',
|
|
1774
|
+
'asia-southeast1',
|
|
1775
|
+
'asia-southeast2',
|
|
1776
|
+
'australia-southeast1',
|
|
1777
|
+
'australia-southeast2',
|
|
1778
|
+
'ca-central-1',
|
|
1779
|
+
'eu-central-1',
|
|
1780
|
+
'eu-central-2',
|
|
1781
|
+
'eu-north-1',
|
|
1782
|
+
'eu-west-1',
|
|
1783
|
+
'eu-west-2',
|
|
1784
|
+
'eu-west-3',
|
|
1785
|
+
'europe-central2',
|
|
1786
|
+
'europe-north1',
|
|
1787
|
+
'europe-southwest1',
|
|
1788
|
+
'europe-west1',
|
|
1789
|
+
'europe-west10',
|
|
1790
|
+
'europe-west12',
|
|
1791
|
+
'europe-west2',
|
|
1792
|
+
'europe-west3',
|
|
1793
|
+
'europe-west4',
|
|
1794
|
+
'europe-west6',
|
|
1795
|
+
'europe-west8',
|
|
1796
|
+
'europe-west9',
|
|
1797
|
+
'fsn1',
|
|
1798
|
+
'hel1',
|
|
1799
|
+
'hil',
|
|
1800
|
+
'me-central1',
|
|
1801
|
+
'me-central2',
|
|
1802
|
+
'me-west1',
|
|
1803
|
+
'nbg1',
|
|
1804
|
+
'northamerica-northeast1',
|
|
1805
|
+
'northamerica-northeast2',
|
|
1806
|
+
'sa-east-1',
|
|
1807
|
+
'sin',
|
|
1808
|
+
'southamerica-east1',
|
|
1809
|
+
'southamerica-west1',
|
|
1810
|
+
'us-central1',
|
|
1811
|
+
'us-east-1',
|
|
1812
|
+
'us-east-2',
|
|
1813
|
+
'us-east1',
|
|
1814
|
+
'us-east4',
|
|
1815
|
+
'us-east5',
|
|
1816
|
+
'us-south1',
|
|
1817
|
+
'us-west-1',
|
|
1818
|
+
'us-west-2',
|
|
1819
|
+
'us-west1',
|
|
1820
|
+
'us-west2',
|
|
1821
|
+
'us-west3',
|
|
1822
|
+
'us-west4'
|
|
1823
|
+
]
|
|
1824
|
+
},
|
|
1825
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.'
|
|
1826
|
+
}
|
|
1827
|
+
},
|
|
1828
|
+
additionalProperties: false,
|
|
1829
|
+
description: 'Constraints define scheduling and provisioning requirements for the fleet. Each field restricts the values allowed for a given Kubernetes label key. Multiple constraints are ANDed together. Omit a field to place no restriction on that key.'
|
|
1830
|
+
},
|
|
1831
|
+
scalingProfile: {
|
|
1832
|
+
type: 'string',
|
|
1833
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet.',
|
|
1834
|
+
example: 'conservative',
|
|
1835
|
+
enum: [
|
|
1836
|
+
'aggressive',
|
|
1837
|
+
'conservative'
|
|
1838
|
+
]
|
|
698
1839
|
}
|
|
699
1840
|
},
|
|
1841
|
+
required: [
|
|
1842
|
+
'scalingProfile'
|
|
1843
|
+
],
|
|
700
1844
|
additionalProperties: false
|
|
701
1845
|
};
|
|
702
1846
|
export const InviteSchema = {
|
|
@@ -731,7 +1875,9 @@ export const InviteSchema = {
|
|
|
731
1875
|
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
732
1876
|
}
|
|
733
1877
|
},
|
|
734
|
-
required: [
|
|
1878
|
+
required: [
|
|
1879
|
+
'date_created'
|
|
1880
|
+
],
|
|
735
1881
|
additionalProperties: false
|
|
736
1882
|
};
|
|
737
1883
|
export const InvoiceSchema = {
|
|
@@ -739,9 +1885,8 @@ export const InvoiceSchema = {
|
|
|
739
1885
|
properties: {
|
|
740
1886
|
id: {
|
|
741
1887
|
type: 'string',
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
1888
|
+
description: 'Unique identifier of the invoice.',
|
|
1889
|
+
example: 'in_1234567890xCrwxghOTj1234'
|
|
745
1890
|
},
|
|
746
1891
|
number: {
|
|
747
1892
|
type: 'string'
|
|
@@ -784,90 +1929,165 @@ export const InvoiceSchema = {
|
|
|
784
1929
|
type: 'string'
|
|
785
1930
|
}
|
|
786
1931
|
},
|
|
787
|
-
required: [
|
|
1932
|
+
required: [
|
|
1933
|
+
'created',
|
|
1934
|
+
'period_start',
|
|
1935
|
+
'period_end'
|
|
1936
|
+
],
|
|
788
1937
|
additionalProperties: false
|
|
789
1938
|
};
|
|
790
|
-
export const
|
|
1939
|
+
export const MarketplaceListingFilesSchema = {
|
|
791
1940
|
type: 'object',
|
|
792
1941
|
properties: {
|
|
793
|
-
|
|
794
|
-
type: 'string',
|
|
795
|
-
maxLength: 63,
|
|
796
|
-
minLength: 1,
|
|
797
|
-
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
798
|
-
description: 'Id of the chart listing',
|
|
799
|
-
example: 'portworx-enterprise-disaster-recovery-baremetal'
|
|
800
|
-
},
|
|
801
|
-
name: {
|
|
802
|
-
type: 'string',
|
|
803
|
-
description: 'Name of the chart listing',
|
|
804
|
-
example: 'Portworx Enterprise + Disaster Recovery - Baremetal'
|
|
805
|
-
},
|
|
806
|
-
developer: {
|
|
1942
|
+
chartYaml: {
|
|
807
1943
|
type: 'string',
|
|
808
|
-
description: '
|
|
809
|
-
example: '
|
|
1944
|
+
description: 'Raw Chart.yaml content from the Helm chart',
|
|
1945
|
+
example: 'apiVersion: v2\nname: nginx-ingress\nversion: 1.18.2-cfke.45\nappVersion: 1.9.4'
|
|
810
1946
|
},
|
|
811
|
-
|
|
1947
|
+
valuesYaml: {
|
|
812
1948
|
type: 'string',
|
|
813
|
-
description: '
|
|
814
|
-
example: '
|
|
1949
|
+
description: 'Raw values.yaml content from the Helm chart',
|
|
1950
|
+
example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
|
|
815
1951
|
},
|
|
816
|
-
|
|
1952
|
+
valuesSchemaJson: {
|
|
817
1953
|
type: 'string',
|
|
818
|
-
description: '
|
|
819
|
-
example: '
|
|
820
|
-
}
|
|
821
|
-
|
|
1954
|
+
description: 'JSON schema for values.yaml as a string',
|
|
1955
|
+
example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
|
|
1956
|
+
}
|
|
1957
|
+
},
|
|
1958
|
+
additionalProperties: false
|
|
1959
|
+
};
|
|
1960
|
+
export const MarketplaceListingSchema = {
|
|
1961
|
+
type: 'object',
|
|
1962
|
+
properties: {
|
|
1963
|
+
name: {
|
|
822
1964
|
type: 'string',
|
|
823
|
-
description: '
|
|
824
|
-
example: '
|
|
1965
|
+
description: 'Name of the chart',
|
|
1966
|
+
example: 'nginx-ingress'
|
|
825
1967
|
},
|
|
826
|
-
|
|
1968
|
+
versions: {
|
|
827
1969
|
type: 'array',
|
|
828
1970
|
items: {
|
|
829
1971
|
type: 'string',
|
|
830
|
-
|
|
1972
|
+
pattern: '^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
1973
|
+
description: 'Specific version of the chart',
|
|
1974
|
+
example: '1.18.2-cfke.45'
|
|
831
1975
|
},
|
|
832
|
-
description: '
|
|
1976
|
+
description: 'Available versions of the chart'
|
|
833
1977
|
},
|
|
834
1978
|
version_channels: {
|
|
835
1979
|
type: 'array',
|
|
836
1980
|
items: {
|
|
837
1981
|
type: 'string',
|
|
838
1982
|
pattern: '^(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)\\.(x|X|0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?$',
|
|
839
|
-
description: 'Version
|
|
840
|
-
example: '
|
|
841
|
-
}
|
|
1983
|
+
description: 'Version channel pattern',
|
|
1984
|
+
example: '1.18.x-cfke.x'
|
|
1985
|
+
},
|
|
1986
|
+
description: 'Version channels for the chart'
|
|
842
1987
|
},
|
|
843
|
-
|
|
844
|
-
type: '
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
1988
|
+
latestVersion: {
|
|
1989
|
+
type: 'string',
|
|
1990
|
+
description: 'Latest version of the chart',
|
|
1991
|
+
example: '1.18.2-cfke.45'
|
|
1992
|
+
},
|
|
1993
|
+
metadata: {
|
|
1994
|
+
type: 'object',
|
|
1995
|
+
properties: {
|
|
1996
|
+
name: {
|
|
1997
|
+
type: 'string',
|
|
1998
|
+
description: 'Chart name from metadata',
|
|
1999
|
+
example: 'nginx-ingress'
|
|
2000
|
+
},
|
|
2001
|
+
version: {
|
|
2002
|
+
type: 'string',
|
|
2003
|
+
description: 'Chart version from metadata',
|
|
2004
|
+
example: '1.18.2-cfke.45'
|
|
2005
|
+
},
|
|
2006
|
+
description: {
|
|
2007
|
+
type: 'string',
|
|
2008
|
+
description: 'Chart description',
|
|
2009
|
+
example: 'NGINX Ingress Controller for Kubernetes'
|
|
2010
|
+
},
|
|
2011
|
+
appVersion: {
|
|
2012
|
+
type: 'string',
|
|
2013
|
+
description: 'Application version',
|
|
2014
|
+
example: '1.9.4'
|
|
2015
|
+
},
|
|
2016
|
+
apiVersion: {
|
|
2017
|
+
type: 'string',
|
|
2018
|
+
description: 'Helm API version',
|
|
2019
|
+
example: 'v2'
|
|
2020
|
+
},
|
|
2021
|
+
keywords: {
|
|
2022
|
+
type: 'array',
|
|
2023
|
+
items: {
|
|
2024
|
+
type: 'string'
|
|
853
2025
|
},
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
2026
|
+
description: 'Chart keywords',
|
|
2027
|
+
example: [
|
|
2028
|
+
'ingress',
|
|
2029
|
+
'nginx',
|
|
2030
|
+
'load-balancer'
|
|
2031
|
+
]
|
|
2032
|
+
},
|
|
2033
|
+
home: {
|
|
2034
|
+
type: 'string',
|
|
2035
|
+
description: 'Chart home URL',
|
|
2036
|
+
example: 'https://kubernetes.github.io/ingress-nginx/'
|
|
2037
|
+
},
|
|
2038
|
+
icon: {
|
|
2039
|
+
type: 'string',
|
|
2040
|
+
description: 'A URL to an SVG or PNG image to be used as an icon',
|
|
2041
|
+
example: 'https://cloudfleet.ai/images/marketplace/icons/ingress-nginx.png'
|
|
2042
|
+
},
|
|
2043
|
+
sources: {
|
|
2044
|
+
type: 'array',
|
|
2045
|
+
items: {
|
|
2046
|
+
type: 'string'
|
|
857
2047
|
},
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
|
|
861
|
-
|
|
862
|
-
bar: example`
|
|
863
|
-
}
|
|
2048
|
+
description: 'Chart source URLs',
|
|
2049
|
+
example: [
|
|
2050
|
+
'https://github.com/kubernetes/ingress-nginx'
|
|
2051
|
+
]
|
|
864
2052
|
},
|
|
865
|
-
|
|
866
|
-
|
|
867
|
-
|
|
2053
|
+
maintainers: {
|
|
2054
|
+
type: 'array',
|
|
2055
|
+
items: {
|
|
2056
|
+
type: 'object',
|
|
2057
|
+
properties: {
|
|
2058
|
+
name: {
|
|
2059
|
+
type: 'string',
|
|
2060
|
+
description: 'Maintainer name',
|
|
2061
|
+
example: 'NGINX Team'
|
|
2062
|
+
},
|
|
2063
|
+
email: {
|
|
2064
|
+
type: 'string',
|
|
2065
|
+
description: 'Maintainer email',
|
|
2066
|
+
example: 'support@nginx.org'
|
|
2067
|
+
}
|
|
2068
|
+
},
|
|
2069
|
+
required: [
|
|
2070
|
+
'name'
|
|
2071
|
+
],
|
|
2072
|
+
additionalProperties: false
|
|
2073
|
+
},
|
|
2074
|
+
description: 'Chart maintainers'
|
|
2075
|
+
}
|
|
2076
|
+
},
|
|
2077
|
+
required: [
|
|
2078
|
+
'name',
|
|
2079
|
+
'version'
|
|
2080
|
+
],
|
|
2081
|
+
additionalProperties: false,
|
|
2082
|
+
description: 'Chart metadata'
|
|
868
2083
|
}
|
|
869
2084
|
},
|
|
870
|
-
required: [
|
|
2085
|
+
required: [
|
|
2086
|
+
'name',
|
|
2087
|
+
'versions',
|
|
2088
|
+
'version_channels',
|
|
2089
|
+
'latestVersion'
|
|
2090
|
+
],
|
|
871
2091
|
additionalProperties: false
|
|
872
2092
|
};
|
|
873
2093
|
export const OrganizationCreateInputSchema = {
|
|
@@ -903,7 +2123,13 @@ export const OrganizationCreateInputSchema = {
|
|
|
903
2123
|
description: 'Password for the root account. Must be at least 8 characters long and contain at least one uppercase letter, one lowercase letter, one number and one special character.'
|
|
904
2124
|
}
|
|
905
2125
|
},
|
|
906
|
-
required: [
|
|
2126
|
+
required: [
|
|
2127
|
+
'email',
|
|
2128
|
+
'first_name',
|
|
2129
|
+
'last_name',
|
|
2130
|
+
'company_name',
|
|
2131
|
+
'password'
|
|
2132
|
+
],
|
|
907
2133
|
additionalProperties: false
|
|
908
2134
|
};
|
|
909
2135
|
export const OrganizationSchema = {
|
|
@@ -985,32 +2211,60 @@ export const OrganizationSchema = {
|
|
|
985
2211
|
id: {
|
|
986
2212
|
type: 'string',
|
|
987
2213
|
description: 'Id of the control plane version. Used in API calls.',
|
|
988
|
-
example: '1.
|
|
2214
|
+
example: '1.33.x-cfke.x'
|
|
989
2215
|
},
|
|
990
2216
|
label: {
|
|
991
2217
|
type: 'string',
|
|
992
2218
|
description: 'Label of the control plane version. Used in frontent UI.',
|
|
993
|
-
example: '1.
|
|
2219
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
994
2220
|
}
|
|
995
2221
|
},
|
|
996
|
-
required: [
|
|
2222
|
+
required: [
|
|
2223
|
+
'id',
|
|
2224
|
+
'label'
|
|
2225
|
+
],
|
|
997
2226
|
additionalProperties: false
|
|
998
2227
|
},
|
|
999
2228
|
minItems: 1,
|
|
1000
2229
|
description: 'List of CFKE control plane versions available for the organization.'
|
|
2230
|
+
},
|
|
2231
|
+
cfcr_storage_gb: {
|
|
2232
|
+
type: 'integer',
|
|
2233
|
+
minimum: -1,
|
|
2234
|
+
description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
|
|
2235
|
+
example: 500
|
|
1001
2236
|
}
|
|
1002
2237
|
},
|
|
1003
|
-
required: [
|
|
2238
|
+
required: [
|
|
2239
|
+
'basic_clusters_max',
|
|
2240
|
+
'basic_clusters_available',
|
|
2241
|
+
'pro_clusters_max',
|
|
2242
|
+
'pro_clusters_available',
|
|
2243
|
+
'fleets_max',
|
|
2244
|
+
'cluster_tiers',
|
|
2245
|
+
'regions',
|
|
2246
|
+
'versions',
|
|
2247
|
+
'cfcr_storage_gb'
|
|
2248
|
+
],
|
|
1004
2249
|
additionalProperties: false,
|
|
1005
2250
|
description: 'For security reasons, platform quota is controlled by Cloudfleet and can be updated only by Cloudfleet administrators. Please open a support ticket if you need to change the platform quota.'
|
|
1006
2251
|
},
|
|
1007
2252
|
status: {
|
|
1008
2253
|
type: 'string',
|
|
1009
2254
|
description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
|
|
1010
|
-
enum: [
|
|
2255
|
+
enum: [
|
|
2256
|
+
'active',
|
|
2257
|
+
'closed',
|
|
2258
|
+
'suspended'
|
|
2259
|
+
]
|
|
1011
2260
|
}
|
|
1012
2261
|
},
|
|
1013
|
-
required: [
|
|
2262
|
+
required: [
|
|
2263
|
+
'id',
|
|
2264
|
+
'date_created',
|
|
2265
|
+
'quota',
|
|
2266
|
+
'status'
|
|
2267
|
+
],
|
|
1014
2268
|
additionalProperties: false
|
|
1015
2269
|
};
|
|
1016
2270
|
export const PaymentMethodSchema = {
|
|
@@ -1032,7 +2286,9 @@ export const PaymentMethodSchema = {
|
|
|
1032
2286
|
nullable: true,
|
|
1033
2287
|
description: 'Payment method type type. Only `card` payments supported at the moment.',
|
|
1034
2288
|
example: 'card',
|
|
1035
|
-
enum: [
|
|
2289
|
+
enum: [
|
|
2290
|
+
'card'
|
|
2291
|
+
]
|
|
1036
2292
|
},
|
|
1037
2293
|
last4: {
|
|
1038
2294
|
type: 'string',
|
|
@@ -1045,14 +2301,14 @@ export const PaymentMethodSchema = {
|
|
|
1045
2301
|
minimum: 1,
|
|
1046
2302
|
maximum: 12,
|
|
1047
2303
|
nullable: true,
|
|
1048
|
-
description:
|
|
2304
|
+
description: 'Two-digit number representing the card\'s expiration month.',
|
|
1049
2305
|
example: '12'
|
|
1050
2306
|
},
|
|
1051
2307
|
exp_year: {
|
|
1052
2308
|
type: 'integer',
|
|
1053
2309
|
minimum: 2024,
|
|
1054
2310
|
nullable: true,
|
|
1055
|
-
description:
|
|
2311
|
+
description: 'Four-digit number representing the card\'s expiration year.',
|
|
1056
2312
|
example: '2028'
|
|
1057
2313
|
},
|
|
1058
2314
|
brand: {
|
|
@@ -1060,39 +2316,908 @@ export const PaymentMethodSchema = {
|
|
|
1060
2316
|
nullable: true,
|
|
1061
2317
|
description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
|
|
1062
2318
|
example: 'visa',
|
|
1063
|
-
enum: [
|
|
2319
|
+
enum: [
|
|
2320
|
+
'amex',
|
|
2321
|
+
'diners',
|
|
2322
|
+
'discover',
|
|
2323
|
+
'eftpos_au',
|
|
2324
|
+
'jcb',
|
|
2325
|
+
'mastercard',
|
|
2326
|
+
'unionpay',
|
|
2327
|
+
'visa',
|
|
2328
|
+
'unknown'
|
|
2329
|
+
]
|
|
1064
2330
|
}
|
|
1065
2331
|
},
|
|
1066
|
-
required: [
|
|
2332
|
+
required: [
|
|
2333
|
+
'id',
|
|
2334
|
+
'setup',
|
|
2335
|
+
'type',
|
|
2336
|
+
'last4',
|
|
2337
|
+
'exp_month',
|
|
2338
|
+
'exp_year',
|
|
2339
|
+
'brand'
|
|
2340
|
+
],
|
|
1067
2341
|
additionalProperties: false
|
|
1068
2342
|
};
|
|
1069
|
-
export const
|
|
2343
|
+
export const PlatformQuotaSchema = {
|
|
1070
2344
|
type: 'object',
|
|
1071
2345
|
properties: {
|
|
1072
|
-
|
|
1073
|
-
type: '
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
description: 'Human readable access token name.',
|
|
1078
|
-
example: 'deployment-token'
|
|
2346
|
+
basic_clusters_max: {
|
|
2347
|
+
type: 'integer',
|
|
2348
|
+
minimum: 0,
|
|
2349
|
+
description: 'Maximum number of Basic clusters that can be created.',
|
|
2350
|
+
example: 999
|
|
1079
2351
|
},
|
|
1080
|
-
|
|
1081
|
-
type: '
|
|
1082
|
-
description: '
|
|
1083
|
-
example:
|
|
1084
|
-
|
|
2352
|
+
basic_clusters_available: {
|
|
2353
|
+
type: 'integer',
|
|
2354
|
+
description: 'Available number of Basic clusters that can be created.',
|
|
2355
|
+
example: 999
|
|
2356
|
+
},
|
|
2357
|
+
pro_clusters_max: {
|
|
2358
|
+
type: 'integer',
|
|
2359
|
+
minimum: 0,
|
|
2360
|
+
description: 'Maximum number of Pro clusters that can be created.',
|
|
2361
|
+
example: 999
|
|
2362
|
+
},
|
|
2363
|
+
pro_clusters_available: {
|
|
2364
|
+
type: 'integer',
|
|
2365
|
+
description: 'Available number of Pro clusters that can be created.',
|
|
2366
|
+
example: 999
|
|
2367
|
+
},
|
|
2368
|
+
fleets_max: {
|
|
2369
|
+
type: 'integer',
|
|
2370
|
+
minimum: 0,
|
|
2371
|
+
description: 'Maximum number of fleets that can be created per cluster.',
|
|
2372
|
+
example: 999
|
|
2373
|
+
},
|
|
2374
|
+
cluster_tiers: {
|
|
2375
|
+
type: 'array',
|
|
2376
|
+
items: {
|
|
2377
|
+
type: 'string',
|
|
2378
|
+
example: 'basic'
|
|
2379
|
+
},
|
|
2380
|
+
minItems: 0,
|
|
2381
|
+
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
2382
|
+
},
|
|
2383
|
+
regions: {
|
|
2384
|
+
type: 'array',
|
|
2385
|
+
items: {
|
|
2386
|
+
type: 'string',
|
|
2387
|
+
example: 'northamerica-central-1'
|
|
2388
|
+
},
|
|
2389
|
+
minItems: 1,
|
|
2390
|
+
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
2391
|
+
},
|
|
2392
|
+
versions: {
|
|
2393
|
+
type: 'array',
|
|
2394
|
+
items: {
|
|
2395
|
+
type: 'object',
|
|
2396
|
+
properties: {
|
|
2397
|
+
id: {
|
|
2398
|
+
type: 'string',
|
|
2399
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2400
|
+
example: '1.33.x-cfke.x'
|
|
2401
|
+
},
|
|
2402
|
+
label: {
|
|
2403
|
+
type: 'string',
|
|
2404
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2405
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
2406
|
+
}
|
|
2407
|
+
},
|
|
2408
|
+
required: [
|
|
2409
|
+
'id',
|
|
2410
|
+
'label'
|
|
2411
|
+
],
|
|
2412
|
+
additionalProperties: false
|
|
2413
|
+
},
|
|
2414
|
+
minItems: 1,
|
|
2415
|
+
description: 'List of CFKE control plane versions available for the organization.'
|
|
2416
|
+
},
|
|
2417
|
+
cfcr_storage_gb: {
|
|
2418
|
+
type: 'integer',
|
|
2419
|
+
minimum: -1,
|
|
2420
|
+
description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
|
|
2421
|
+
example: 500
|
|
1085
2422
|
}
|
|
1086
2423
|
},
|
|
1087
|
-
required: [
|
|
2424
|
+
required: [
|
|
2425
|
+
'basic_clusters_max',
|
|
2426
|
+
'basic_clusters_available',
|
|
2427
|
+
'pro_clusters_max',
|
|
2428
|
+
'pro_clusters_available',
|
|
2429
|
+
'fleets_max',
|
|
2430
|
+
'cluster_tiers',
|
|
2431
|
+
'regions',
|
|
2432
|
+
'versions',
|
|
2433
|
+
'cfcr_storage_gb'
|
|
2434
|
+
],
|
|
1088
2435
|
additionalProperties: false
|
|
1089
2436
|
};
|
|
1090
|
-
export const
|
|
2437
|
+
export const RegistryRepositorySchema = {
|
|
1091
2438
|
type: 'object',
|
|
1092
2439
|
properties: {
|
|
1093
2440
|
name: {
|
|
1094
2441
|
type: 'string',
|
|
1095
|
-
|
|
2442
|
+
description: 'Repository name.',
|
|
2443
|
+
example: 'my-app'
|
|
2444
|
+
},
|
|
2445
|
+
region: {
|
|
2446
|
+
type: 'string',
|
|
2447
|
+
description: 'Registry region.',
|
|
2448
|
+
example: 'northamerica'
|
|
2449
|
+
},
|
|
2450
|
+
uri: {
|
|
2451
|
+
type: 'string',
|
|
2452
|
+
description: 'Full URI of the repository.',
|
|
2453
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
2454
|
+
}
|
|
2455
|
+
},
|
|
2456
|
+
required: [
|
|
2457
|
+
'name',
|
|
2458
|
+
'region',
|
|
2459
|
+
'uri'
|
|
2460
|
+
],
|
|
2461
|
+
additionalProperties: false
|
|
2462
|
+
};
|
|
2463
|
+
export const RegistryRepositoryWithTagsSchema = {
|
|
2464
|
+
type: 'object',
|
|
2465
|
+
properties: {
|
|
2466
|
+
name: {
|
|
2467
|
+
type: 'string',
|
|
2468
|
+
description: 'Repository name.',
|
|
2469
|
+
example: 'my-app'
|
|
2470
|
+
},
|
|
2471
|
+
region: {
|
|
2472
|
+
type: 'string',
|
|
2473
|
+
description: 'Registry region.',
|
|
2474
|
+
example: 'northamerica'
|
|
2475
|
+
},
|
|
2476
|
+
uri: {
|
|
2477
|
+
type: 'string',
|
|
2478
|
+
description: 'Full URI of the repository.',
|
|
2479
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
2480
|
+
},
|
|
2481
|
+
tags: {
|
|
2482
|
+
type: 'array',
|
|
2483
|
+
items: {
|
|
2484
|
+
type: 'object',
|
|
2485
|
+
properties: {
|
|
2486
|
+
name: {
|
|
2487
|
+
type: 'string',
|
|
2488
|
+
description: 'Tag name.',
|
|
2489
|
+
example: 'latest'
|
|
2490
|
+
},
|
|
2491
|
+
size: {
|
|
2492
|
+
type: 'number',
|
|
2493
|
+
format: 'float',
|
|
2494
|
+
description: 'Size of the tag in bytes.',
|
|
2495
|
+
example: 123456789
|
|
2496
|
+
},
|
|
2497
|
+
mediaType: {
|
|
2498
|
+
type: 'string',
|
|
2499
|
+
description: 'Media type of the manifest.',
|
|
2500
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
2501
|
+
},
|
|
2502
|
+
platforms: {
|
|
2503
|
+
type: 'array',
|
|
2504
|
+
items: {
|
|
2505
|
+
type: 'string'
|
|
2506
|
+
},
|
|
2507
|
+
description: 'Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).',
|
|
2508
|
+
example: [
|
|
2509
|
+
'linux/amd64',
|
|
2510
|
+
'linux/arm64'
|
|
2511
|
+
]
|
|
2512
|
+
}
|
|
2513
|
+
},
|
|
2514
|
+
required: [
|
|
2515
|
+
'name',
|
|
2516
|
+
'size'
|
|
2517
|
+
],
|
|
2518
|
+
additionalProperties: false
|
|
2519
|
+
},
|
|
2520
|
+
description: 'Array of tags in the repository.'
|
|
2521
|
+
},
|
|
2522
|
+
totalSize: {
|
|
2523
|
+
type: 'number',
|
|
2524
|
+
format: 'float',
|
|
2525
|
+
description: 'Total size of all tags in the repository in bytes.',
|
|
2526
|
+
example: 987654321
|
|
2527
|
+
}
|
|
2528
|
+
},
|
|
2529
|
+
required: [
|
|
2530
|
+
'name',
|
|
2531
|
+
'region',
|
|
2532
|
+
'uri',
|
|
2533
|
+
'tags',
|
|
2534
|
+
'totalSize'
|
|
2535
|
+
],
|
|
2536
|
+
additionalProperties: false
|
|
2537
|
+
};
|
|
2538
|
+
export const RegistryTagSchema = {
|
|
2539
|
+
type: 'object',
|
|
2540
|
+
properties: {
|
|
2541
|
+
name: {
|
|
2542
|
+
type: 'string',
|
|
2543
|
+
description: 'Tag name.',
|
|
2544
|
+
example: 'latest'
|
|
2545
|
+
},
|
|
2546
|
+
digest: {
|
|
2547
|
+
type: 'string',
|
|
2548
|
+
description: 'Manifest digest for pulling by digest.',
|
|
2549
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2550
|
+
},
|
|
2551
|
+
mediaType: {
|
|
2552
|
+
type: 'string',
|
|
2553
|
+
description: 'Media type of the manifest.',
|
|
2554
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
2555
|
+
},
|
|
2556
|
+
config: {
|
|
2557
|
+
type: 'object',
|
|
2558
|
+
properties: {
|
|
2559
|
+
size: {
|
|
2560
|
+
type: 'number',
|
|
2561
|
+
format: 'float',
|
|
2562
|
+
description: 'Size of the config in bytes.',
|
|
2563
|
+
example: 1234
|
|
2564
|
+
}
|
|
2565
|
+
},
|
|
2566
|
+
required: [
|
|
2567
|
+
'size'
|
|
2568
|
+
],
|
|
2569
|
+
additionalProperties: false,
|
|
2570
|
+
description: 'Manifest config metadata.'
|
|
2571
|
+
},
|
|
2572
|
+
layers: {
|
|
2573
|
+
type: 'array',
|
|
2574
|
+
items: {
|
|
2575
|
+
type: 'object',
|
|
2576
|
+
properties: {
|
|
2577
|
+
digest: {
|
|
2578
|
+
type: 'string',
|
|
2579
|
+
description: 'Digest of the layer.',
|
|
2580
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2581
|
+
},
|
|
2582
|
+
size: {
|
|
2583
|
+
type: 'number',
|
|
2584
|
+
format: 'float',
|
|
2585
|
+
description: 'Size of the layer in bytes.',
|
|
2586
|
+
example: 5678
|
|
2587
|
+
}
|
|
2588
|
+
},
|
|
2589
|
+
required: [
|
|
2590
|
+
'size'
|
|
2591
|
+
],
|
|
2592
|
+
additionalProperties: false
|
|
2593
|
+
},
|
|
2594
|
+
description: 'Array of layer metadata.'
|
|
2595
|
+
},
|
|
2596
|
+
manifests: {
|
|
2597
|
+
type: 'array',
|
|
2598
|
+
items: {
|
|
2599
|
+
type: 'object',
|
|
2600
|
+
properties: {
|
|
2601
|
+
digest: {
|
|
2602
|
+
type: 'string',
|
|
2603
|
+
description: 'Digest of the manifest.',
|
|
2604
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2605
|
+
},
|
|
2606
|
+
platform: {
|
|
2607
|
+
type: 'object',
|
|
2608
|
+
properties: {
|
|
2609
|
+
architecture: {
|
|
2610
|
+
type: 'string',
|
|
2611
|
+
description: 'Architecture of the platform.',
|
|
2612
|
+
example: 'amd64'
|
|
2613
|
+
},
|
|
2614
|
+
os: {
|
|
2615
|
+
type: 'string',
|
|
2616
|
+
description: 'Operating system of the platform.',
|
|
2617
|
+
example: 'linux'
|
|
2618
|
+
},
|
|
2619
|
+
variant: {
|
|
2620
|
+
type: 'string',
|
|
2621
|
+
description: 'Variant of the platform (e.g., v7, v8 for ARM).',
|
|
2622
|
+
example: 'v8'
|
|
2623
|
+
}
|
|
2624
|
+
},
|
|
2625
|
+
required: [
|
|
2626
|
+
'architecture',
|
|
2627
|
+
'os'
|
|
2628
|
+
],
|
|
2629
|
+
additionalProperties: false,
|
|
2630
|
+
description: 'Platform information for the manifest.'
|
|
2631
|
+
},
|
|
2632
|
+
layers: {
|
|
2633
|
+
type: 'array',
|
|
2634
|
+
items: {
|
|
2635
|
+
type: 'object',
|
|
2636
|
+
properties: {
|
|
2637
|
+
digest: {
|
|
2638
|
+
type: 'string',
|
|
2639
|
+
description: 'Digest of the layer.',
|
|
2640
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
2641
|
+
},
|
|
2642
|
+
size: {
|
|
2643
|
+
type: 'number',
|
|
2644
|
+
format: 'float',
|
|
2645
|
+
description: 'Size of the layer in bytes.',
|
|
2646
|
+
example: 5678
|
|
2647
|
+
}
|
|
2648
|
+
},
|
|
2649
|
+
required: [
|
|
2650
|
+
'size'
|
|
2651
|
+
],
|
|
2652
|
+
additionalProperties: false
|
|
2653
|
+
},
|
|
2654
|
+
description: 'Layers for this platform.'
|
|
2655
|
+
},
|
|
2656
|
+
size: {
|
|
2657
|
+
type: 'number',
|
|
2658
|
+
format: 'float',
|
|
2659
|
+
description: 'Total size of this platform manifest in bytes.',
|
|
2660
|
+
example: 12345678
|
|
2661
|
+
}
|
|
2662
|
+
},
|
|
2663
|
+
required: [
|
|
2664
|
+
'digest'
|
|
2665
|
+
],
|
|
2666
|
+
additionalProperties: false
|
|
2667
|
+
},
|
|
2668
|
+
description: 'Array of manifests for multi-arch images.'
|
|
2669
|
+
},
|
|
2670
|
+
size: {
|
|
2671
|
+
type: 'number',
|
|
2672
|
+
format: 'float',
|
|
2673
|
+
description: 'Total size of the tag in bytes.',
|
|
2674
|
+
example: 123456789
|
|
2675
|
+
},
|
|
2676
|
+
region: {
|
|
2677
|
+
type: 'string',
|
|
2678
|
+
description: 'Registry region.',
|
|
2679
|
+
example: 'northamerica'
|
|
2680
|
+
},
|
|
2681
|
+
repository: {
|
|
2682
|
+
type: 'string',
|
|
2683
|
+
description: 'Repository name.',
|
|
2684
|
+
example: 'my-app'
|
|
2685
|
+
},
|
|
2686
|
+
uri: {
|
|
2687
|
+
type: 'string',
|
|
2688
|
+
description: 'Full URI of the tag.',
|
|
2689
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
|
|
2690
|
+
}
|
|
2691
|
+
},
|
|
2692
|
+
required: [
|
|
2693
|
+
'name',
|
|
2694
|
+
'digest',
|
|
2695
|
+
'size',
|
|
2696
|
+
'region',
|
|
2697
|
+
'repository',
|
|
2698
|
+
'uri'
|
|
2699
|
+
],
|
|
2700
|
+
additionalProperties: false
|
|
2701
|
+
};
|
|
2702
|
+
export const TicketAttachmentSchema = {
|
|
2703
|
+
type: 'object',
|
|
2704
|
+
properties: {
|
|
2705
|
+
id: {
|
|
2706
|
+
type: 'string',
|
|
2707
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2708
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
2709
|
+
},
|
|
2710
|
+
filename: {
|
|
2711
|
+
type: 'string',
|
|
2712
|
+
description: 'Original filename as uploaded.',
|
|
2713
|
+
example: 'debug.log'
|
|
2714
|
+
},
|
|
2715
|
+
content_type: {
|
|
2716
|
+
type: 'string',
|
|
2717
|
+
description: 'MIME content type of the attachment.',
|
|
2718
|
+
example: 'text/plain'
|
|
2719
|
+
},
|
|
2720
|
+
size: {
|
|
2721
|
+
type: 'integer',
|
|
2722
|
+
description: 'Size of the attachment in bytes.',
|
|
2723
|
+
example: 12345
|
|
2724
|
+
}
|
|
2725
|
+
},
|
|
2726
|
+
required: [
|
|
2727
|
+
'id',
|
|
2728
|
+
'filename',
|
|
2729
|
+
'content_type',
|
|
2730
|
+
'size'
|
|
2731
|
+
],
|
|
2732
|
+
additionalProperties: false
|
|
2733
|
+
};
|
|
2734
|
+
export const TicketCreateInputSchema = {
|
|
2735
|
+
type: 'object',
|
|
2736
|
+
properties: {
|
|
2737
|
+
category: {
|
|
2738
|
+
type: 'string',
|
|
2739
|
+
description: 'Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.',
|
|
2740
|
+
example: 'technical',
|
|
2741
|
+
enum: [
|
|
2742
|
+
'billing',
|
|
2743
|
+
'technical',
|
|
2744
|
+
'general'
|
|
2745
|
+
]
|
|
2746
|
+
},
|
|
2747
|
+
body: {
|
|
2748
|
+
type: 'string',
|
|
2749
|
+
maxLength: 50000,
|
|
2750
|
+
minLength: 1,
|
|
2751
|
+
pattern: '\\S',
|
|
2752
|
+
description: 'Initial message body in markdown. There is no separate subject — the first message body is the description.',
|
|
2753
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
2754
|
+
},
|
|
2755
|
+
properties: {
|
|
2756
|
+
type: 'object',
|
|
2757
|
+
additionalProperties: true,
|
|
2758
|
+
description: 'Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).',
|
|
2759
|
+
example: {
|
|
2760
|
+
subcategory: 'cluster-question',
|
|
2761
|
+
cluster_id: '60c72b2f9f1b2c001f8e4d3a'
|
|
2762
|
+
}
|
|
2763
|
+
}
|
|
2764
|
+
},
|
|
2765
|
+
required: [
|
|
2766
|
+
'category',
|
|
2767
|
+
'body'
|
|
2768
|
+
],
|
|
2769
|
+
additionalProperties: false
|
|
2770
|
+
};
|
|
2771
|
+
export const TicketListResponseSchema = {
|
|
2772
|
+
type: 'object',
|
|
2773
|
+
properties: {
|
|
2774
|
+
items: {
|
|
2775
|
+
type: 'array',
|
|
2776
|
+
items: {
|
|
2777
|
+
type: 'object',
|
|
2778
|
+
properties: {
|
|
2779
|
+
id: {
|
|
2780
|
+
type: 'string',
|
|
2781
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
2782
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
2783
|
+
},
|
|
2784
|
+
status: {
|
|
2785
|
+
type: 'string',
|
|
2786
|
+
description: 'Current state of the ticket.',
|
|
2787
|
+
example: 'waiting_on_us',
|
|
2788
|
+
enum: [
|
|
2789
|
+
'waiting_on_us',
|
|
2790
|
+
'waiting_on_user',
|
|
2791
|
+
'closed'
|
|
2792
|
+
]
|
|
2793
|
+
},
|
|
2794
|
+
category: {
|
|
2795
|
+
type: 'string',
|
|
2796
|
+
description: 'Ticket category.',
|
|
2797
|
+
example: 'technical',
|
|
2798
|
+
enum: [
|
|
2799
|
+
'billing',
|
|
2800
|
+
'technical',
|
|
2801
|
+
'general'
|
|
2802
|
+
]
|
|
2803
|
+
},
|
|
2804
|
+
summary: {
|
|
2805
|
+
type: 'string',
|
|
2806
|
+
description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
|
|
2807
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
2808
|
+
},
|
|
2809
|
+
closed_at: {
|
|
2810
|
+
type: 'string',
|
|
2811
|
+
format: 'date-time',
|
|
2812
|
+
nullable: true,
|
|
2813
|
+
description: 'Closure timestamp. Null while the ticket is open.',
|
|
2814
|
+
example: '2026-05-18T16:08:14.338Z'
|
|
2815
|
+
},
|
|
2816
|
+
date_created: {
|
|
2817
|
+
type: 'string',
|
|
2818
|
+
format: 'date-time',
|
|
2819
|
+
description: 'Creation date of the ticket. ISO 8601 UTC.',
|
|
2820
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
2821
|
+
},
|
|
2822
|
+
date_updated: {
|
|
2823
|
+
type: 'string',
|
|
2824
|
+
format: 'date-time',
|
|
2825
|
+
description: 'Last update date of the ticket. ISO 8601 UTC.',
|
|
2826
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
2827
|
+
},
|
|
2828
|
+
messages: {
|
|
2829
|
+
type: 'array',
|
|
2830
|
+
items: {
|
|
2831
|
+
type: 'object',
|
|
2832
|
+
properties: {
|
|
2833
|
+
id: {
|
|
2834
|
+
type: 'string',
|
|
2835
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
2836
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
2837
|
+
},
|
|
2838
|
+
type: {
|
|
2839
|
+
type: 'string',
|
|
2840
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
2841
|
+
example: 'customer_reply',
|
|
2842
|
+
enum: [
|
|
2843
|
+
'customer_reply',
|
|
2844
|
+
'agent_reply'
|
|
2845
|
+
]
|
|
2846
|
+
},
|
|
2847
|
+
body: {
|
|
2848
|
+
type: 'string',
|
|
2849
|
+
description: 'Message body in markdown.',
|
|
2850
|
+
example: 'Thanks — that resolved it on my side.'
|
|
2851
|
+
},
|
|
2852
|
+
author_first_name: {
|
|
2853
|
+
type: 'string',
|
|
2854
|
+
nullable: true,
|
|
2855
|
+
description: 'First name of the author. Null when not provided.',
|
|
2856
|
+
example: 'Jane'
|
|
2857
|
+
},
|
|
2858
|
+
author_last_name: {
|
|
2859
|
+
type: 'string',
|
|
2860
|
+
nullable: true,
|
|
2861
|
+
description: 'Last name of the author. Null when not provided.',
|
|
2862
|
+
example: 'Doe'
|
|
2863
|
+
},
|
|
2864
|
+
attachments: {
|
|
2865
|
+
type: 'array',
|
|
2866
|
+
items: {
|
|
2867
|
+
type: 'object',
|
|
2868
|
+
properties: {
|
|
2869
|
+
id: {
|
|
2870
|
+
type: 'string',
|
|
2871
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2872
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
2873
|
+
},
|
|
2874
|
+
filename: {
|
|
2875
|
+
type: 'string',
|
|
2876
|
+
description: 'Original filename as uploaded.',
|
|
2877
|
+
example: 'debug.log'
|
|
2878
|
+
},
|
|
2879
|
+
content_type: {
|
|
2880
|
+
type: 'string',
|
|
2881
|
+
description: 'MIME content type of the attachment.',
|
|
2882
|
+
example: 'text/plain'
|
|
2883
|
+
},
|
|
2884
|
+
size: {
|
|
2885
|
+
type: 'integer',
|
|
2886
|
+
description: 'Size of the attachment in bytes.',
|
|
2887
|
+
example: 12345
|
|
2888
|
+
}
|
|
2889
|
+
},
|
|
2890
|
+
required: [
|
|
2891
|
+
'id',
|
|
2892
|
+
'filename',
|
|
2893
|
+
'content_type',
|
|
2894
|
+
'size'
|
|
2895
|
+
],
|
|
2896
|
+
additionalProperties: false
|
|
2897
|
+
},
|
|
2898
|
+
description: 'Attachments associated with this message.',
|
|
2899
|
+
example: []
|
|
2900
|
+
},
|
|
2901
|
+
date_created: {
|
|
2902
|
+
type: 'string',
|
|
2903
|
+
format: 'date-time',
|
|
2904
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
2905
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
2906
|
+
}
|
|
2907
|
+
},
|
|
2908
|
+
required: [
|
|
2909
|
+
'id',
|
|
2910
|
+
'type',
|
|
2911
|
+
'body',
|
|
2912
|
+
'date_created'
|
|
2913
|
+
],
|
|
2914
|
+
additionalProperties: false
|
|
2915
|
+
},
|
|
2916
|
+
description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
|
|
2917
|
+
}
|
|
2918
|
+
},
|
|
2919
|
+
required: [
|
|
2920
|
+
'id',
|
|
2921
|
+
'status',
|
|
2922
|
+
'category',
|
|
2923
|
+
'summary',
|
|
2924
|
+
'date_created',
|
|
2925
|
+
'date_updated'
|
|
2926
|
+
],
|
|
2927
|
+
additionalProperties: false
|
|
2928
|
+
},
|
|
2929
|
+
description: 'Tickets for the organization, ordered newest first. Messages are omitted from list responses.'
|
|
2930
|
+
}
|
|
2931
|
+
},
|
|
2932
|
+
required: [
|
|
2933
|
+
'items'
|
|
2934
|
+
],
|
|
2935
|
+
additionalProperties: false
|
|
2936
|
+
};
|
|
2937
|
+
export const TicketMessageInputSchema = {
|
|
2938
|
+
type: 'object',
|
|
2939
|
+
properties: {
|
|
2940
|
+
body: {
|
|
2941
|
+
type: 'string',
|
|
2942
|
+
maxLength: 50000,
|
|
2943
|
+
minLength: 1,
|
|
2944
|
+
pattern: '\\S',
|
|
2945
|
+
description: 'Reply body in markdown.',
|
|
2946
|
+
example: 'Thanks — that resolved it on my side.'
|
|
2947
|
+
}
|
|
2948
|
+
},
|
|
2949
|
+
required: [
|
|
2950
|
+
'body'
|
|
2951
|
+
],
|
|
2952
|
+
additionalProperties: false
|
|
2953
|
+
};
|
|
2954
|
+
export const TicketMessageSchema = {
|
|
2955
|
+
type: 'object',
|
|
2956
|
+
properties: {
|
|
2957
|
+
id: {
|
|
2958
|
+
type: 'string',
|
|
2959
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
2960
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
2961
|
+
},
|
|
2962
|
+
type: {
|
|
2963
|
+
type: 'string',
|
|
2964
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
2965
|
+
example: 'customer_reply',
|
|
2966
|
+
enum: [
|
|
2967
|
+
'customer_reply',
|
|
2968
|
+
'agent_reply'
|
|
2969
|
+
]
|
|
2970
|
+
},
|
|
2971
|
+
body: {
|
|
2972
|
+
type: 'string',
|
|
2973
|
+
description: 'Message body in markdown.',
|
|
2974
|
+
example: 'Thanks — that resolved it on my side.'
|
|
2975
|
+
},
|
|
2976
|
+
author_first_name: {
|
|
2977
|
+
type: 'string',
|
|
2978
|
+
description: 'First name of the author. Null when not provided.',
|
|
2979
|
+
example: 'Jane'
|
|
2980
|
+
},
|
|
2981
|
+
author_last_name: {
|
|
2982
|
+
type: 'string',
|
|
2983
|
+
description: 'Last name of the author. Null when not provided.',
|
|
2984
|
+
example: 'Doe'
|
|
2985
|
+
},
|
|
2986
|
+
attachments: {
|
|
2987
|
+
type: 'array',
|
|
2988
|
+
items: {
|
|
2989
|
+
type: 'object',
|
|
2990
|
+
properties: {
|
|
2991
|
+
id: {
|
|
2992
|
+
type: 'string',
|
|
2993
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
2994
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
2995
|
+
},
|
|
2996
|
+
filename: {
|
|
2997
|
+
type: 'string',
|
|
2998
|
+
description: 'Original filename as uploaded.',
|
|
2999
|
+
example: 'debug.log'
|
|
3000
|
+
},
|
|
3001
|
+
content_type: {
|
|
3002
|
+
type: 'string',
|
|
3003
|
+
description: 'MIME content type of the attachment.',
|
|
3004
|
+
example: 'text/plain'
|
|
3005
|
+
},
|
|
3006
|
+
size: {
|
|
3007
|
+
type: 'integer',
|
|
3008
|
+
description: 'Size of the attachment in bytes.',
|
|
3009
|
+
example: 12345
|
|
3010
|
+
}
|
|
3011
|
+
},
|
|
3012
|
+
required: [
|
|
3013
|
+
'id',
|
|
3014
|
+
'filename',
|
|
3015
|
+
'content_type',
|
|
3016
|
+
'size'
|
|
3017
|
+
],
|
|
3018
|
+
additionalProperties: false
|
|
3019
|
+
},
|
|
3020
|
+
description: 'Attachments associated with this message.',
|
|
3021
|
+
example: []
|
|
3022
|
+
},
|
|
3023
|
+
date_created: {
|
|
3024
|
+
type: 'string',
|
|
3025
|
+
format: 'date-time',
|
|
3026
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3027
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3028
|
+
}
|
|
3029
|
+
},
|
|
3030
|
+
required: [
|
|
3031
|
+
'id',
|
|
3032
|
+
'type',
|
|
3033
|
+
'body',
|
|
3034
|
+
'date_created'
|
|
3035
|
+
],
|
|
3036
|
+
additionalProperties: false
|
|
3037
|
+
};
|
|
3038
|
+
export const TicketSchema = {
|
|
3039
|
+
type: 'object',
|
|
3040
|
+
properties: {
|
|
3041
|
+
id: {
|
|
3042
|
+
type: 'string',
|
|
3043
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
3044
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
3045
|
+
},
|
|
3046
|
+
status: {
|
|
3047
|
+
type: 'string',
|
|
3048
|
+
description: 'Current state of the ticket.',
|
|
3049
|
+
example: 'waiting_on_us',
|
|
3050
|
+
enum: [
|
|
3051
|
+
'waiting_on_us',
|
|
3052
|
+
'waiting_on_user',
|
|
3053
|
+
'closed'
|
|
3054
|
+
]
|
|
3055
|
+
},
|
|
3056
|
+
category: {
|
|
3057
|
+
type: 'string',
|
|
3058
|
+
description: 'Ticket category.',
|
|
3059
|
+
example: 'technical',
|
|
3060
|
+
enum: [
|
|
3061
|
+
'billing',
|
|
3062
|
+
'technical',
|
|
3063
|
+
'general'
|
|
3064
|
+
]
|
|
3065
|
+
},
|
|
3066
|
+
summary: {
|
|
3067
|
+
type: 'string',
|
|
3068
|
+
description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
|
|
3069
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
3070
|
+
},
|
|
3071
|
+
closed_at: {
|
|
3072
|
+
type: 'string',
|
|
3073
|
+
format: 'date-time',
|
|
3074
|
+
description: 'Closure timestamp. Null while the ticket is open.',
|
|
3075
|
+
example: '2026-05-18T16:08:14.338Z'
|
|
3076
|
+
},
|
|
3077
|
+
date_created: {
|
|
3078
|
+
type: 'string',
|
|
3079
|
+
format: 'date-time',
|
|
3080
|
+
description: 'Creation date of the ticket. ISO 8601 UTC.',
|
|
3081
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3082
|
+
},
|
|
3083
|
+
date_updated: {
|
|
3084
|
+
type: 'string',
|
|
3085
|
+
format: 'date-time',
|
|
3086
|
+
description: 'Last update date of the ticket. ISO 8601 UTC.',
|
|
3087
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3088
|
+
},
|
|
3089
|
+
messages: {
|
|
3090
|
+
type: 'array',
|
|
3091
|
+
items: {
|
|
3092
|
+
type: 'object',
|
|
3093
|
+
properties: {
|
|
3094
|
+
id: {
|
|
3095
|
+
type: 'string',
|
|
3096
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
3097
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
3098
|
+
},
|
|
3099
|
+
type: {
|
|
3100
|
+
type: 'string',
|
|
3101
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
3102
|
+
example: 'customer_reply',
|
|
3103
|
+
enum: [
|
|
3104
|
+
'customer_reply',
|
|
3105
|
+
'agent_reply'
|
|
3106
|
+
]
|
|
3107
|
+
},
|
|
3108
|
+
body: {
|
|
3109
|
+
type: 'string',
|
|
3110
|
+
description: 'Message body in markdown.',
|
|
3111
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3112
|
+
},
|
|
3113
|
+
author_first_name: {
|
|
3114
|
+
type: 'string',
|
|
3115
|
+
description: 'First name of the author. Null when not provided.',
|
|
3116
|
+
example: 'Jane'
|
|
3117
|
+
},
|
|
3118
|
+
author_last_name: {
|
|
3119
|
+
type: 'string',
|
|
3120
|
+
description: 'Last name of the author. Null when not provided.',
|
|
3121
|
+
example: 'Doe'
|
|
3122
|
+
},
|
|
3123
|
+
attachments: {
|
|
3124
|
+
type: 'array',
|
|
3125
|
+
items: {
|
|
3126
|
+
type: 'object',
|
|
3127
|
+
properties: {
|
|
3128
|
+
id: {
|
|
3129
|
+
type: 'string',
|
|
3130
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3131
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3132
|
+
},
|
|
3133
|
+
filename: {
|
|
3134
|
+
type: 'string',
|
|
3135
|
+
description: 'Original filename as uploaded.',
|
|
3136
|
+
example: 'debug.log'
|
|
3137
|
+
},
|
|
3138
|
+
content_type: {
|
|
3139
|
+
type: 'string',
|
|
3140
|
+
description: 'MIME content type of the attachment.',
|
|
3141
|
+
example: 'text/plain'
|
|
3142
|
+
},
|
|
3143
|
+
size: {
|
|
3144
|
+
type: 'integer',
|
|
3145
|
+
description: 'Size of the attachment in bytes.',
|
|
3146
|
+
example: 12345
|
|
3147
|
+
}
|
|
3148
|
+
},
|
|
3149
|
+
required: [
|
|
3150
|
+
'id',
|
|
3151
|
+
'filename',
|
|
3152
|
+
'content_type',
|
|
3153
|
+
'size'
|
|
3154
|
+
],
|
|
3155
|
+
additionalProperties: false
|
|
3156
|
+
},
|
|
3157
|
+
description: 'Attachments associated with this message.',
|
|
3158
|
+
example: []
|
|
3159
|
+
},
|
|
3160
|
+
date_created: {
|
|
3161
|
+
type: 'string',
|
|
3162
|
+
format: 'date-time',
|
|
3163
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3164
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3165
|
+
}
|
|
3166
|
+
},
|
|
3167
|
+
required: [
|
|
3168
|
+
'id',
|
|
3169
|
+
'type',
|
|
3170
|
+
'body',
|
|
3171
|
+
'date_created'
|
|
3172
|
+
],
|
|
3173
|
+
additionalProperties: false
|
|
3174
|
+
},
|
|
3175
|
+
description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
|
|
3176
|
+
}
|
|
3177
|
+
},
|
|
3178
|
+
required: [
|
|
3179
|
+
'id',
|
|
3180
|
+
'status',
|
|
3181
|
+
'category',
|
|
3182
|
+
'summary',
|
|
3183
|
+
'date_created',
|
|
3184
|
+
'date_updated'
|
|
3185
|
+
],
|
|
3186
|
+
additionalProperties: false
|
|
3187
|
+
};
|
|
3188
|
+
export const TokenCreateInputSchema = {
|
|
3189
|
+
type: 'object',
|
|
3190
|
+
properties: {
|
|
3191
|
+
name: {
|
|
3192
|
+
type: 'string',
|
|
3193
|
+
maxLength: 63,
|
|
3194
|
+
minLength: 1,
|
|
3195
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
3196
|
+
description: 'Human readable access token name.',
|
|
3197
|
+
example: 'deployment-token'
|
|
3198
|
+
},
|
|
3199
|
+
role: {
|
|
3200
|
+
type: 'string',
|
|
3201
|
+
description: 'Role assumed by the token.',
|
|
3202
|
+
example: 'User',
|
|
3203
|
+
enum: [
|
|
3204
|
+
'Administrator',
|
|
3205
|
+
'User'
|
|
3206
|
+
]
|
|
3207
|
+
}
|
|
3208
|
+
},
|
|
3209
|
+
required: [
|
|
3210
|
+
'name',
|
|
3211
|
+
'role'
|
|
3212
|
+
],
|
|
3213
|
+
additionalProperties: false
|
|
3214
|
+
};
|
|
3215
|
+
export const TokenSchema = {
|
|
3216
|
+
type: 'object',
|
|
3217
|
+
properties: {
|
|
3218
|
+
name: {
|
|
3219
|
+
type: 'string',
|
|
3220
|
+
maxLength: 63,
|
|
1096
3221
|
minLength: 1,
|
|
1097
3222
|
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
1098
3223
|
description: 'Human readable access token name.',
|
|
@@ -1102,7 +3227,10 @@ export const TokenSchema = {
|
|
|
1102
3227
|
type: 'string',
|
|
1103
3228
|
description: 'Role assumed by the token.',
|
|
1104
3229
|
example: 'User',
|
|
1105
|
-
enum: [
|
|
3230
|
+
enum: [
|
|
3231
|
+
'Administrator',
|
|
3232
|
+
'User'
|
|
3233
|
+
]
|
|
1106
3234
|
},
|
|
1107
3235
|
id: {
|
|
1108
3236
|
type: 'string',
|
|
@@ -1121,7 +3249,11 @@ export const TokenSchema = {
|
|
|
1121
3249
|
example: '2023-12-20T13:53:32.000Z'
|
|
1122
3250
|
}
|
|
1123
3251
|
},
|
|
1124
|
-
required: [
|
|
3252
|
+
required: [
|
|
3253
|
+
'name',
|
|
3254
|
+
'role',
|
|
3255
|
+
'date_created'
|
|
3256
|
+
],
|
|
1125
3257
|
additionalProperties: false
|
|
1126
3258
|
};
|
|
1127
3259
|
export const TokenUpdateInputSchema = {
|
|
@@ -1139,11 +3271,129 @@ export const TokenUpdateInputSchema = {
|
|
|
1139
3271
|
type: 'string',
|
|
1140
3272
|
description: 'Role assumed by the token.',
|
|
1141
3273
|
example: 'User',
|
|
1142
|
-
enum: [
|
|
3274
|
+
enum: [
|
|
3275
|
+
'Administrator',
|
|
3276
|
+
'User'
|
|
3277
|
+
]
|
|
1143
3278
|
}
|
|
1144
3279
|
},
|
|
1145
3280
|
additionalProperties: false
|
|
1146
3281
|
};
|
|
3282
|
+
export const UsageFacetsSchema = {
|
|
3283
|
+
type: 'object',
|
|
3284
|
+
properties: {
|
|
3285
|
+
cluster_id: {
|
|
3286
|
+
type: 'array',
|
|
3287
|
+
items: {
|
|
3288
|
+
type: 'string'
|
|
3289
|
+
},
|
|
3290
|
+
description: 'List of unique cluster IDs',
|
|
3291
|
+
example: [
|
|
3292
|
+
'6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3293
|
+
]
|
|
3294
|
+
},
|
|
3295
|
+
product: {
|
|
3296
|
+
type: 'array',
|
|
3297
|
+
items: {
|
|
3298
|
+
type: 'string'
|
|
3299
|
+
},
|
|
3300
|
+
description: 'List of unique products',
|
|
3301
|
+
example: [
|
|
3302
|
+
'cfke_controlplane',
|
|
3303
|
+
'cfke_connected_nodes'
|
|
3304
|
+
]
|
|
3305
|
+
}
|
|
3306
|
+
},
|
|
3307
|
+
additionalProperties: false
|
|
3308
|
+
};
|
|
3309
|
+
export const UsageResponseSchema = {
|
|
3310
|
+
type: 'object',
|
|
3311
|
+
properties: {
|
|
3312
|
+
data: {
|
|
3313
|
+
type: 'array',
|
|
3314
|
+
items: {
|
|
3315
|
+
type: 'object',
|
|
3316
|
+
properties: {
|
|
3317
|
+
hour: {
|
|
3318
|
+
type: 'string',
|
|
3319
|
+
description: 'Hour of the usage',
|
|
3320
|
+
example: '2019-01-01T00:00:00.000Z'
|
|
3321
|
+
},
|
|
3322
|
+
cluster_id: {
|
|
3323
|
+
type: 'string',
|
|
3324
|
+
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
3325
|
+
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3326
|
+
},
|
|
3327
|
+
product: {
|
|
3328
|
+
type: 'string',
|
|
3329
|
+
description: 'The product the usage is associated with',
|
|
3330
|
+
example: 'cfke_controlplane'
|
|
3331
|
+
},
|
|
3332
|
+
value: {
|
|
3333
|
+
type: 'number',
|
|
3334
|
+
format: 'float',
|
|
3335
|
+
description: 'Consumption',
|
|
3336
|
+
example: 4
|
|
3337
|
+
},
|
|
3338
|
+
price: {
|
|
3339
|
+
type: 'number',
|
|
3340
|
+
format: 'float',
|
|
3341
|
+
description: 'Price per unit',
|
|
3342
|
+
example: 0.01
|
|
3343
|
+
},
|
|
3344
|
+
total: {
|
|
3345
|
+
type: 'number',
|
|
3346
|
+
format: 'float',
|
|
3347
|
+
description: 'Total cost'
|
|
3348
|
+
}
|
|
3349
|
+
},
|
|
3350
|
+
required: [
|
|
3351
|
+
'hour',
|
|
3352
|
+
'cluster_id',
|
|
3353
|
+
'product',
|
|
3354
|
+
'value',
|
|
3355
|
+
'price',
|
|
3356
|
+
'total'
|
|
3357
|
+
],
|
|
3358
|
+
additionalProperties: false
|
|
3359
|
+
},
|
|
3360
|
+
description: 'Usage data'
|
|
3361
|
+
},
|
|
3362
|
+
facets: {
|
|
3363
|
+
type: 'object',
|
|
3364
|
+
properties: {
|
|
3365
|
+
cluster_id: {
|
|
3366
|
+
type: 'array',
|
|
3367
|
+
items: {
|
|
3368
|
+
type: 'string'
|
|
3369
|
+
},
|
|
3370
|
+
description: 'List of unique cluster IDs',
|
|
3371
|
+
example: [
|
|
3372
|
+
'6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3373
|
+
]
|
|
3374
|
+
},
|
|
3375
|
+
product: {
|
|
3376
|
+
type: 'array',
|
|
3377
|
+
items: {
|
|
3378
|
+
type: 'string'
|
|
3379
|
+
},
|
|
3380
|
+
description: 'List of unique products',
|
|
3381
|
+
example: [
|
|
3382
|
+
'cfke_controlplane',
|
|
3383
|
+
'cfke_connected_nodes'
|
|
3384
|
+
]
|
|
3385
|
+
}
|
|
3386
|
+
},
|
|
3387
|
+
additionalProperties: false,
|
|
3388
|
+
description: 'Facets for filtering'
|
|
3389
|
+
}
|
|
3390
|
+
},
|
|
3391
|
+
required: [
|
|
3392
|
+
'data',
|
|
3393
|
+
'facets'
|
|
3394
|
+
],
|
|
3395
|
+
additionalProperties: false
|
|
3396
|
+
};
|
|
1147
3397
|
export const UsageSchema = {
|
|
1148
3398
|
type: 'object',
|
|
1149
3399
|
properties: {
|
|
@@ -1154,90 +3404,40 @@ export const UsageSchema = {
|
|
|
1154
3404
|
},
|
|
1155
3405
|
cluster_id: {
|
|
1156
3406
|
type: 'string',
|
|
1157
|
-
format: 'uuid',
|
|
1158
3407
|
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
1159
3408
|
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
1160
3409
|
},
|
|
1161
|
-
cluster_tier: {
|
|
1162
|
-
type: 'string',
|
|
1163
|
-
description: 'Tier of the cluster.',
|
|
1164
|
-
example: 'pro',
|
|
1165
|
-
enum: ['basic', 'pro', '']
|
|
1166
|
-
},
|
|
1167
3410
|
product: {
|
|
1168
3411
|
type: 'string',
|
|
1169
3412
|
description: 'The product the usage is associated with',
|
|
1170
|
-
example: 'cfke_controlplane'
|
|
1171
|
-
enum: ['cfke_controlplane', 'cfke_connected_nodes', 'infra_compute', 'infra_storage', 'infra_loadbalancing', 'infra_traffic', 'cfcr_storage']
|
|
3413
|
+
example: 'cfke_controlplane'
|
|
1172
3414
|
},
|
|
1173
|
-
|
|
1174
|
-
type: '
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
sku: {
|
|
1179
|
-
type: 'string',
|
|
1180
|
-
description: 'SKU of the Kubernetes node',
|
|
1181
|
-
example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
|
|
1182
|
-
},
|
|
1183
|
-
cpu: {
|
|
1184
|
-
anyOf: [
|
|
1185
|
-
{
|
|
1186
|
-
type: 'number',
|
|
1187
|
-
format: 'float',
|
|
1188
|
-
description: 'CPU core count of the node',
|
|
1189
|
-
example: 4
|
|
1190
|
-
},
|
|
1191
|
-
{
|
|
1192
|
-
type: 'string',
|
|
1193
|
-
enum: ['']
|
|
1194
|
-
}
|
|
1195
|
-
]
|
|
3415
|
+
value: {
|
|
3416
|
+
type: 'number',
|
|
3417
|
+
format: 'float',
|
|
3418
|
+
description: 'Consumption',
|
|
3419
|
+
example: 4
|
|
1196
3420
|
},
|
|
1197
3421
|
price: {
|
|
1198
|
-
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
description: 'Price',
|
|
1203
|
-
example: 4
|
|
1204
|
-
},
|
|
1205
|
-
{
|
|
1206
|
-
type: 'string',
|
|
1207
|
-
enum: ['']
|
|
1208
|
-
}
|
|
1209
|
-
]
|
|
1210
|
-
},
|
|
1211
|
-
value: {
|
|
1212
|
-
anyOf: [
|
|
1213
|
-
{
|
|
1214
|
-
type: 'number',
|
|
1215
|
-
format: 'float',
|
|
1216
|
-
description: 'Value',
|
|
1217
|
-
example: 4
|
|
1218
|
-
},
|
|
1219
|
-
{
|
|
1220
|
-
type: 'string',
|
|
1221
|
-
enum: ['']
|
|
1222
|
-
}
|
|
1223
|
-
]
|
|
3422
|
+
type: 'number',
|
|
3423
|
+
format: 'float',
|
|
3424
|
+
description: 'Price per unit',
|
|
3425
|
+
example: 0.01
|
|
1224
3426
|
},
|
|
1225
3427
|
total: {
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
format: 'float',
|
|
1230
|
-
description: 'Total',
|
|
1231
|
-
example: 4
|
|
1232
|
-
},
|
|
1233
|
-
{
|
|
1234
|
-
type: 'string',
|
|
1235
|
-
enum: ['']
|
|
1236
|
-
}
|
|
1237
|
-
]
|
|
3428
|
+
type: 'number',
|
|
3429
|
+
format: 'float',
|
|
3430
|
+
description: 'Total cost'
|
|
1238
3431
|
}
|
|
1239
3432
|
},
|
|
1240
|
-
required: [
|
|
3433
|
+
required: [
|
|
3434
|
+
'hour',
|
|
3435
|
+
'cluster_id',
|
|
3436
|
+
'product',
|
|
3437
|
+
'value',
|
|
3438
|
+
'price',
|
|
3439
|
+
'total'
|
|
3440
|
+
],
|
|
1241
3441
|
additionalProperties: false
|
|
1242
3442
|
};
|
|
1243
3443
|
export const UserCreateInputSchema = {
|
|
@@ -1278,16 +3478,28 @@ export const UserCreateInputSchema = {
|
|
|
1278
3478
|
type: 'string',
|
|
1279
3479
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1280
3480
|
example: 'active',
|
|
1281
|
-
enum: [
|
|
3481
|
+
enum: [
|
|
3482
|
+
'active',
|
|
3483
|
+
'inactive'
|
|
3484
|
+
]
|
|
1282
3485
|
},
|
|
1283
3486
|
role: {
|
|
1284
3487
|
type: 'string',
|
|
1285
|
-
description:
|
|
3488
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1286
3489
|
example: 'User',
|
|
1287
|
-
enum: [
|
|
3490
|
+
enum: [
|
|
3491
|
+
'Administrator',
|
|
3492
|
+
'User'
|
|
3493
|
+
]
|
|
1288
3494
|
}
|
|
1289
3495
|
},
|
|
1290
|
-
required: [
|
|
3496
|
+
required: [
|
|
3497
|
+
'email',
|
|
3498
|
+
'first_name',
|
|
3499
|
+
'last_name',
|
|
3500
|
+
'code',
|
|
3501
|
+
'password'
|
|
3502
|
+
],
|
|
1291
3503
|
additionalProperties: false
|
|
1292
3504
|
};
|
|
1293
3505
|
export const UserSchema = {
|
|
@@ -1315,15 +3527,21 @@ export const UserSchema = {
|
|
|
1315
3527
|
},
|
|
1316
3528
|
role: {
|
|
1317
3529
|
type: 'string',
|
|
1318
|
-
description:
|
|
3530
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1319
3531
|
example: 'User',
|
|
1320
|
-
enum: [
|
|
3532
|
+
enum: [
|
|
3533
|
+
'Administrator',
|
|
3534
|
+
'User'
|
|
3535
|
+
]
|
|
1321
3536
|
},
|
|
1322
3537
|
status: {
|
|
1323
3538
|
type: 'string',
|
|
1324
3539
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1325
3540
|
example: 'active',
|
|
1326
|
-
enum: [
|
|
3541
|
+
enum: [
|
|
3542
|
+
'active',
|
|
3543
|
+
'inactive'
|
|
3544
|
+
]
|
|
1327
3545
|
},
|
|
1328
3546
|
id: {
|
|
1329
3547
|
type: 'string',
|
|
@@ -1338,7 +3556,15 @@ export const UserSchema = {
|
|
|
1338
3556
|
example: '2023-11-02T16:08:14.338Z'
|
|
1339
3557
|
}
|
|
1340
3558
|
},
|
|
1341
|
-
required: [
|
|
3559
|
+
required: [
|
|
3560
|
+
'email',
|
|
3561
|
+
'first_name',
|
|
3562
|
+
'last_name',
|
|
3563
|
+
'role',
|
|
3564
|
+
'status',
|
|
3565
|
+
'id',
|
|
3566
|
+
'date_created'
|
|
3567
|
+
],
|
|
1342
3568
|
additionalProperties: false
|
|
1343
3569
|
};
|
|
1344
3570
|
export const UserUpdateInputSchema = {
|
|
@@ -1366,15 +3592,21 @@ export const UserUpdateInputSchema = {
|
|
|
1366
3592
|
},
|
|
1367
3593
|
role: {
|
|
1368
3594
|
type: 'string',
|
|
1369
|
-
description:
|
|
3595
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1370
3596
|
example: 'User',
|
|
1371
|
-
enum: [
|
|
3597
|
+
enum: [
|
|
3598
|
+
'Administrator',
|
|
3599
|
+
'User'
|
|
3600
|
+
]
|
|
1372
3601
|
},
|
|
1373
3602
|
status: {
|
|
1374
3603
|
type: 'string',
|
|
1375
3604
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1376
3605
|
example: 'active',
|
|
1377
|
-
enum: [
|
|
3606
|
+
enum: [
|
|
3607
|
+
'active',
|
|
3608
|
+
'inactive'
|
|
3609
|
+
]
|
|
1378
3610
|
}
|
|
1379
3611
|
},
|
|
1380
3612
|
additionalProperties: false
|