@cloudfleet/sdk 0.0.1-76e2a56 → 0.0.1-79703f6
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 +3 -0
- package/dist/client/client.gen.d.ts.map +1 -0
- package/dist/client/client.gen.js +220 -0
- package/dist/client/client.gen.js.map +1 -0
- package/dist/client/index.d.ts +9 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +7 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/types.gen.d.ts +121 -0
- package/dist/client/types.gen.d.ts.map +1 -0
- package/dist/client/types.gen.js +3 -0
- package/dist/client/types.gen.js.map +1 -0
- package/dist/client/utils.gen.d.ts +38 -0
- package/dist/client/utils.gen.d.ts.map +1 -0
- package/dist/client/utils.gen.js +229 -0
- package/dist/client/utils.gen.js.map +1 -0
- package/dist/client.gen.d.ts +4 -4
- package/dist/client.gen.d.ts.map +1 -1
- package/dist/client.gen.js +2 -4
- package/dist/client.gen.js.map +1 -1
- package/dist/core/auth.gen.d.ts +19 -0
- package/dist/core/auth.gen.d.ts.map +1 -0
- package/dist/core/auth.gen.js +15 -0
- package/dist/core/auth.gen.js.map +1 -0
- package/dist/core/bodySerializer.gen.d.ts +26 -0
- package/dist/core/bodySerializer.gen.d.ts.map +1 -0
- package/dist/core/bodySerializer.gen.js +58 -0
- package/dist/core/bodySerializer.gen.js.map +1 -0
- package/dist/core/params.gen.d.ts +44 -0
- package/dist/core/params.gen.d.ts.map +1 -0
- package/dist/core/params.gen.js +101 -0
- package/dist/core/params.gen.js.map +1 -0
- package/dist/core/pathSerializer.gen.d.ts +34 -0
- package/dist/core/pathSerializer.gen.d.ts.map +1 -0
- package/dist/core/pathSerializer.gen.js +107 -0
- package/dist/core/pathSerializer.gen.js.map +1 -0
- package/dist/core/queryKeySerializer.gen.d.ts +19 -0
- package/dist/core/queryKeySerializer.gen.d.ts.map +1 -0
- package/dist/core/queryKeySerializer.gen.js +93 -0
- package/dist/core/queryKeySerializer.gen.js.map +1 -0
- package/dist/core/serverSentEvents.gen.d.ts +72 -0
- package/dist/core/serverSentEvents.gen.d.ts.map +1 -0
- package/dist/core/serverSentEvents.gen.js +133 -0
- package/dist/core/serverSentEvents.gen.js.map +1 -0
- package/dist/core/types.gen.d.ts +79 -0
- package/dist/core/types.gen.d.ts.map +1 -0
- package/dist/core/types.gen.js +3 -0
- package/dist/core/types.gen.js.map +1 -0
- package/dist/core/utils.gen.d.ts +20 -0
- package/dist/core/utils.gen.d.ts.map +1 -0
- package/dist/core/utils.gen.js +88 -0
- package/dist/core/utils.gen.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/schemas.gen.d.ts +1505 -866
- package/dist/schemas.gen.d.ts.map +1 -1
- package/dist/schemas.gen.js +2809 -953
- package/dist/schemas.gen.js.map +1 -1
- package/dist/sdk.gen.d.ts +242 -142
- package/dist/sdk.gen.d.ts.map +1 -1
- package/dist/sdk.gen.js +336 -225
- package/dist/sdk.gen.js.map +1 -1
- package/dist/services/kubernetes/api.d.ts +196 -0
- package/dist/services/kubernetes/api.d.ts.map +1 -0
- package/dist/services/kubernetes/api.js +140 -0
- package/dist/services/kubernetes/api.js.map +1 -0
- package/dist/services/kubernetes/index.d.ts +44 -0
- package/dist/services/kubernetes/index.d.ts.map +1 -0
- package/dist/services/kubernetes/index.js +68 -0
- package/dist/services/kubernetes/index.js.map +1 -0
- package/dist/services/kubernetes/types.d.ts +1335 -0
- package/dist/services/kubernetes/types.d.ts.map +1 -0
- package/dist/services/kubernetes/types.js +2 -0
- package/dist/services/kubernetes/types.js.map +1 -0
- package/dist/types.gen.d.ts +1373 -830
- package/dist/types.gen.d.ts.map +1 -1
- package/dist/zod.gen.d.ts +3687 -2423
- package/dist/zod.gen.d.ts.map +1 -1
- package/dist/zod.gen.js +1523 -857
- package/dist/zod.gen.js.map +1 -1
- package/package.json +31 -5
package/dist/schemas.gen.js
CHANGED
|
@@ -58,18 +58,378 @@ export const BillingContactSchema = {
|
|
|
58
58
|
description: 'Email address used for billing as a string.',
|
|
59
59
|
example: 'email@example.com'
|
|
60
60
|
},
|
|
61
|
-
|
|
61
|
+
individual_name: {
|
|
62
62
|
type: 'string',
|
|
63
|
-
description: '
|
|
64
|
-
example: 'John'
|
|
63
|
+
description: 'Name of the billing contact person.',
|
|
64
|
+
example: 'John Doe'
|
|
65
65
|
},
|
|
66
|
-
|
|
66
|
+
tax_id: {
|
|
67
67
|
type: 'string',
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
nullable: true,
|
|
69
|
+
description: 'Tax ID of the organization.',
|
|
70
|
+
example: 'DE123456789'
|
|
71
|
+
},
|
|
72
|
+
tax_id_type: {
|
|
73
|
+
type: 'string',
|
|
74
|
+
nullable: true,
|
|
75
|
+
description: 'Type of the tax ID.',
|
|
76
|
+
example: 'de_vat',
|
|
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
|
+
]
|
|
207
|
+
}
|
|
208
|
+
},
|
|
209
|
+
required: [
|
|
210
|
+
'email',
|
|
211
|
+
'individual_name'
|
|
212
|
+
],
|
|
213
|
+
additionalProperties: false
|
|
214
|
+
};
|
|
215
|
+
export const BillingCreditsSchema = {
|
|
216
|
+
type: 'object',
|
|
217
|
+
properties: {
|
|
218
|
+
id: {
|
|
219
|
+
type: 'string',
|
|
220
|
+
description: 'Generated unique identifier of the promotional code.',
|
|
221
|
+
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
222
|
+
},
|
|
223
|
+
type: {
|
|
224
|
+
type: 'string',
|
|
225
|
+
description: 'Type of the promotional code.',
|
|
226
|
+
example: 'credit',
|
|
227
|
+
enum: [
|
|
228
|
+
'credit',
|
|
229
|
+
'discount'
|
|
230
|
+
]
|
|
231
|
+
},
|
|
232
|
+
date_start: {
|
|
233
|
+
type: 'string',
|
|
234
|
+
format: 'date-time',
|
|
235
|
+
description: 'Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.',
|
|
236
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
237
|
+
},
|
|
238
|
+
date_end: {
|
|
239
|
+
type: 'string',
|
|
240
|
+
format: 'date-time',
|
|
241
|
+
description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
|
|
242
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
243
|
+
},
|
|
244
|
+
code: {
|
|
245
|
+
type: 'string',
|
|
246
|
+
description: 'Promotional code used by the customer.',
|
|
247
|
+
example: 'VQ4SCMB'
|
|
248
|
+
},
|
|
249
|
+
description: {
|
|
250
|
+
type: 'string',
|
|
251
|
+
description: 'Description of the promotional code.',
|
|
252
|
+
example: '10% off on all products'
|
|
253
|
+
},
|
|
254
|
+
value_total: {
|
|
255
|
+
type: 'number',
|
|
256
|
+
format: 'float',
|
|
257
|
+
description: 'Total value of the promotional code.',
|
|
258
|
+
example: 10
|
|
259
|
+
},
|
|
260
|
+
value_remaining: {
|
|
261
|
+
type: 'number',
|
|
262
|
+
format: 'float',
|
|
263
|
+
description: 'Remaining value of the promotional code.',
|
|
264
|
+
example: 8
|
|
265
|
+
}
|
|
266
|
+
},
|
|
267
|
+
required: [
|
|
268
|
+
'type',
|
|
269
|
+
'date_start',
|
|
270
|
+
'code',
|
|
271
|
+
'value_total'
|
|
272
|
+
],
|
|
273
|
+
additionalProperties: false
|
|
274
|
+
};
|
|
275
|
+
export const ChartCreateInputSchema = {
|
|
276
|
+
type: 'object',
|
|
277
|
+
properties: {
|
|
278
|
+
values: {
|
|
279
|
+
type: 'string',
|
|
280
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
281
|
+
},
|
|
282
|
+
version_channel: {
|
|
283
|
+
type: 'string',
|
|
284
|
+
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-]+)*))?$',
|
|
285
|
+
description: 'Desired version range or channel for the chart.',
|
|
286
|
+
example: '2.x.x-cfke.x'
|
|
287
|
+
},
|
|
288
|
+
name: {
|
|
289
|
+
type: 'string',
|
|
290
|
+
maxLength: 63,
|
|
291
|
+
minLength: 1,
|
|
292
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
293
|
+
description: 'Unique identifier of the chart deployment aka name of the helm release.',
|
|
294
|
+
example: 'postgresql-0'
|
|
295
|
+
},
|
|
296
|
+
namespace: {
|
|
297
|
+
type: 'string',
|
|
298
|
+
maxLength: 63,
|
|
299
|
+
minLength: 1,
|
|
300
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
301
|
+
description: 'Namespace of the chart deployment',
|
|
302
|
+
example: 'default'
|
|
303
|
+
},
|
|
304
|
+
chart: {
|
|
305
|
+
type: 'string',
|
|
306
|
+
maxLength: 63,
|
|
307
|
+
minLength: 1,
|
|
308
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
309
|
+
description: 'Name of the chart listing',
|
|
310
|
+
example: 'postgresql'
|
|
311
|
+
}
|
|
312
|
+
},
|
|
313
|
+
required: [
|
|
314
|
+
'values',
|
|
315
|
+
'version_channel',
|
|
316
|
+
'name',
|
|
317
|
+
'namespace',
|
|
318
|
+
'chart'
|
|
319
|
+
],
|
|
320
|
+
additionalProperties: false
|
|
321
|
+
};
|
|
322
|
+
export const ChartSchema = {
|
|
323
|
+
type: 'object',
|
|
324
|
+
properties: {
|
|
325
|
+
values: {
|
|
326
|
+
type: 'string',
|
|
327
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
328
|
+
},
|
|
329
|
+
version_channel: {
|
|
330
|
+
type: 'string',
|
|
331
|
+
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-]+)*))?$',
|
|
332
|
+
description: 'Desired version range or channel for the chart.',
|
|
333
|
+
example: '2.x.x-cfke.x'
|
|
334
|
+
},
|
|
335
|
+
name: {
|
|
336
|
+
type: 'string',
|
|
337
|
+
maxLength: 63,
|
|
338
|
+
minLength: 1,
|
|
339
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
340
|
+
description: 'Unique identifier of the chart deployment aka name of the helm release.',
|
|
341
|
+
example: 'postgresql-0'
|
|
342
|
+
},
|
|
343
|
+
namespace: {
|
|
344
|
+
type: 'string',
|
|
345
|
+
maxLength: 63,
|
|
346
|
+
minLength: 1,
|
|
347
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
348
|
+
description: 'Namespace of the chart deployment',
|
|
349
|
+
example: 'default'
|
|
350
|
+
},
|
|
351
|
+
chart: {
|
|
352
|
+
type: 'string',
|
|
353
|
+
maxLength: 63,
|
|
354
|
+
minLength: 1,
|
|
355
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
356
|
+
description: 'Name of the chart listing',
|
|
357
|
+
example: 'postgresql'
|
|
358
|
+
},
|
|
359
|
+
status: {
|
|
360
|
+
type: 'string',
|
|
361
|
+
description: 'Status of the chart deployment.',
|
|
362
|
+
example: 'active',
|
|
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
|
+
]
|
|
379
|
+
},
|
|
380
|
+
version_current: {
|
|
381
|
+
type: 'string',
|
|
382
|
+
description: 'Current version of the chart deployment.',
|
|
383
|
+
example: '2.1.33-cfke.11'
|
|
384
|
+
},
|
|
385
|
+
created_at: {
|
|
386
|
+
type: 'string',
|
|
387
|
+
description: 'Creation date and time of the chart deployment.',
|
|
388
|
+
example: '2024-09-12T09:11:27Z'
|
|
389
|
+
},
|
|
390
|
+
updated_at: {
|
|
391
|
+
type: 'string',
|
|
392
|
+
description: 'Last update date and time of the chart deployment.',
|
|
393
|
+
example: '2024-09-12T09:11:27Z'
|
|
394
|
+
},
|
|
395
|
+
ready: {
|
|
396
|
+
type: 'boolean',
|
|
397
|
+
description: 'Indicates if the chart deployment is ready to be used.',
|
|
398
|
+
example: true
|
|
399
|
+
}
|
|
400
|
+
},
|
|
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
|
+
],
|
|
413
|
+
additionalProperties: false
|
|
414
|
+
};
|
|
415
|
+
export const ChartUpdateInputSchema = {
|
|
416
|
+
type: 'object',
|
|
417
|
+
properties: {
|
|
418
|
+
values: {
|
|
419
|
+
type: 'string',
|
|
420
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
421
|
+
},
|
|
422
|
+
version_channel: {
|
|
423
|
+
type: 'string',
|
|
424
|
+
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-]+)*))?$',
|
|
425
|
+
description: 'Desired version range or channel for the chart.',
|
|
426
|
+
example: '2.x.x-cfke.x'
|
|
70
427
|
}
|
|
71
428
|
},
|
|
72
|
-
required: [
|
|
429
|
+
required: [
|
|
430
|
+
'values',
|
|
431
|
+
'version_channel'
|
|
432
|
+
],
|
|
73
433
|
additionalProperties: false
|
|
74
434
|
};
|
|
75
435
|
export const ClusterCreateInputSchema = {
|
|
@@ -83,28 +443,45 @@ export const ClusterCreateInputSchema = {
|
|
|
83
443
|
description: 'Name of the cluster.',
|
|
84
444
|
example: 'production-cluster'
|
|
85
445
|
},
|
|
86
|
-
region: {
|
|
87
|
-
type: 'string',
|
|
88
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
|
|
89
|
-
default: 'staging',
|
|
90
|
-
example: 'northamerica-central-1',
|
|
91
|
-
enum: ['staging', 'northamerica-central-1']
|
|
92
|
-
},
|
|
93
446
|
tier: {
|
|
94
447
|
type: 'string',
|
|
95
448
|
description: 'Tier of the cluster.',
|
|
96
449
|
example: 'pro',
|
|
97
|
-
enum: [
|
|
450
|
+
enum: [
|
|
451
|
+
'basic',
|
|
452
|
+
'pro'
|
|
453
|
+
]
|
|
454
|
+
},
|
|
455
|
+
region: {
|
|
456
|
+
type: 'string',
|
|
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',
|
|
459
|
+
example: 'northamerica-central-1a',
|
|
460
|
+
enum: [
|
|
461
|
+
'staging-1a',
|
|
462
|
+
'northamerica-central-1',
|
|
463
|
+
'europe-central-1a',
|
|
464
|
+
'northamerica-central-1a'
|
|
465
|
+
]
|
|
98
466
|
},
|
|
99
467
|
version_channel: {
|
|
100
468
|
type: 'string',
|
|
101
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-]+)*))?$',
|
|
102
470
|
description: 'Version of the kubernetes cluster.',
|
|
103
471
|
default: '1.x.x-cfke.x',
|
|
104
|
-
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
|
+
]
|
|
105
479
|
}
|
|
106
480
|
},
|
|
107
|
-
required: [
|
|
481
|
+
required: [
|
|
482
|
+
'name',
|
|
483
|
+
'tier'
|
|
484
|
+
],
|
|
108
485
|
additionalProperties: false
|
|
109
486
|
};
|
|
110
487
|
export const ClusterJoinInformationSchema = {
|
|
@@ -113,8 +490,7 @@ export const ClusterJoinInformationSchema = {
|
|
|
113
490
|
certificate_authority: {
|
|
114
491
|
type: 'string',
|
|
115
492
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
116
|
-
example:
|
|
117
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
493
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
118
494
|
},
|
|
119
495
|
endpoint: {
|
|
120
496
|
type: 'string',
|
|
@@ -122,6 +498,11 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
122
498
|
description: 'Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.',
|
|
123
499
|
example: 'https://10.31.64.7:6443'
|
|
124
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
|
+
},
|
|
125
506
|
auth_key: {
|
|
126
507
|
type: 'string',
|
|
127
508
|
description: 'Authentication key for the cluster.',
|
|
@@ -138,7 +519,7 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
138
519
|
kubernetes: {
|
|
139
520
|
type: 'string',
|
|
140
521
|
description: 'Kubernetes version of the cluster.',
|
|
141
|
-
example: '1.
|
|
522
|
+
example: '1.33.7'
|
|
142
523
|
},
|
|
143
524
|
tailscale: {
|
|
144
525
|
type: 'string',
|
|
@@ -149,9 +530,19 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
149
530
|
type: 'string',
|
|
150
531
|
description: 'Containerd version of the cluster.',
|
|
151
532
|
example: '1.7.19'
|
|
533
|
+
},
|
|
534
|
+
nvidia_driver: {
|
|
535
|
+
type: 'string',
|
|
536
|
+
description: 'NVIDIA driver version of the cluster.',
|
|
537
|
+
example: '565.0.0'
|
|
152
538
|
}
|
|
153
539
|
},
|
|
154
|
-
required: [
|
|
540
|
+
required: [
|
|
541
|
+
'kubernetes',
|
|
542
|
+
'tailscale',
|
|
543
|
+
'containerd',
|
|
544
|
+
'nvidia_driver'
|
|
545
|
+
],
|
|
155
546
|
additionalProperties: false,
|
|
156
547
|
description: 'Versions of the different components of the cluster.'
|
|
157
548
|
},
|
|
@@ -174,12 +565,24 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
174
565
|
example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
|
|
175
566
|
}
|
|
176
567
|
},
|
|
177
|
-
required: [
|
|
568
|
+
required: [
|
|
569
|
+
'metadata_url',
|
|
570
|
+
'aws_role_arn',
|
|
571
|
+
'gcp_workload_identity_provider'
|
|
572
|
+
],
|
|
178
573
|
additionalProperties: false,
|
|
179
|
-
description:
|
|
574
|
+
description: 'OIDC Information for hosts to access to third party API\'s.'
|
|
180
575
|
}
|
|
181
576
|
},
|
|
182
|
-
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
|
+
],
|
|
183
586
|
additionalProperties: false
|
|
184
587
|
};
|
|
185
588
|
export const ClusterSchema = {
|
|
@@ -193,25 +596,26 @@ export const ClusterSchema = {
|
|
|
193
596
|
description: 'Name of the cluster.',
|
|
194
597
|
example: 'production-cluster'
|
|
195
598
|
},
|
|
196
|
-
region: {
|
|
197
|
-
type: 'string',
|
|
198
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
|
|
199
|
-
default: 'staging',
|
|
200
|
-
example: 'northamerica-central-1',
|
|
201
|
-
enum: ['staging', 'northamerica-central-1']
|
|
202
|
-
},
|
|
203
599
|
tier: {
|
|
204
600
|
type: 'string',
|
|
205
601
|
description: 'Tier of the cluster.',
|
|
206
602
|
example: 'pro',
|
|
207
|
-
enum: [
|
|
603
|
+
enum: [
|
|
604
|
+
'basic',
|
|
605
|
+
'pro'
|
|
606
|
+
]
|
|
208
607
|
},
|
|
209
|
-
|
|
608
|
+
region: {
|
|
210
609
|
type: 'string',
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
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',
|
|
612
|
+
example: 'northamerica-central-1a',
|
|
613
|
+
enum: [
|
|
614
|
+
'staging-1a',
|
|
615
|
+
'northamerica-central-1',
|
|
616
|
+
'europe-central-1a',
|
|
617
|
+
'northamerica-central-1a'
|
|
618
|
+
]
|
|
215
619
|
},
|
|
216
620
|
id: {
|
|
217
621
|
type: 'string',
|
|
@@ -223,32 +627,57 @@ export const ClusterSchema = {
|
|
|
223
627
|
type: 'string',
|
|
224
628
|
description: 'Status of the cluster. When creating a new cluster, set to `active`. When deleting a clusters, set to `deleted`.',
|
|
225
629
|
example: 'active',
|
|
226
|
-
enum: [
|
|
630
|
+
enum: [
|
|
631
|
+
'active',
|
|
632
|
+
'disabled',
|
|
633
|
+
'deleted',
|
|
634
|
+
'creating',
|
|
635
|
+
'deployed',
|
|
636
|
+
'failed',
|
|
637
|
+
'updating'
|
|
638
|
+
]
|
|
227
639
|
},
|
|
228
640
|
endpoint: {
|
|
229
641
|
anyOf: [
|
|
230
642
|
{
|
|
231
643
|
type: 'string',
|
|
232
644
|
format: 'uri',
|
|
233
|
-
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)',
|
|
234
646
|
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.cloudfleet.dev:6443'
|
|
235
647
|
},
|
|
236
648
|
{
|
|
237
649
|
type: 'string',
|
|
238
|
-
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
|
+
]
|
|
239
669
|
}
|
|
240
670
|
]
|
|
241
671
|
},
|
|
242
672
|
certificate_ca: {
|
|
243
673
|
type: 'string',
|
|
244
674
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
245
|
-
example:
|
|
246
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
675
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
247
676
|
},
|
|
248
677
|
version_current: {
|
|
249
678
|
type: 'string',
|
|
250
679
|
description: 'Current version of the cluster.',
|
|
251
|
-
example: '1.
|
|
680
|
+
example: '1.33.7-cfke.264'
|
|
252
681
|
},
|
|
253
682
|
created_at: {
|
|
254
683
|
type: 'string',
|
|
@@ -264,9 +693,20 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
264
693
|
type: 'boolean',
|
|
265
694
|
description: 'Indicates if the cluster is ready to be used.',
|
|
266
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'
|
|
267
702
|
}
|
|
268
703
|
},
|
|
269
|
-
required: [
|
|
704
|
+
required: [
|
|
705
|
+
'name',
|
|
706
|
+
'tier',
|
|
707
|
+
'id',
|
|
708
|
+
'status'
|
|
709
|
+
],
|
|
270
710
|
additionalProperties: false
|
|
271
711
|
};
|
|
272
712
|
export const ClusterUpdateInputSchema = {
|
|
@@ -280,13 +720,25 @@ export const ClusterUpdateInputSchema = {
|
|
|
280
720
|
description: 'Name of the cluster.',
|
|
281
721
|
example: 'production-cluster'
|
|
282
722
|
},
|
|
723
|
+
tier: {
|
|
724
|
+
type: 'string',
|
|
725
|
+
description: 'Tier of the cluster.',
|
|
726
|
+
example: 'pro',
|
|
727
|
+
enum: [
|
|
728
|
+
'basic',
|
|
729
|
+
'pro'
|
|
730
|
+
]
|
|
731
|
+
},
|
|
283
732
|
version_channel: {
|
|
284
733
|
type: 'string',
|
|
285
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-]+)*))?$',
|
|
286
735
|
description: 'Version of the kubernetes cluster.',
|
|
287
|
-
example: '1.
|
|
736
|
+
example: '1.x.x-cfke.x'
|
|
288
737
|
}
|
|
289
738
|
},
|
|
739
|
+
required: [
|
|
740
|
+
'tier'
|
|
741
|
+
],
|
|
290
742
|
additionalProperties: false
|
|
291
743
|
};
|
|
292
744
|
export const FleetCreateInputSchema = {
|
|
@@ -296,13 +748,12 @@ export const FleetCreateInputSchema = {
|
|
|
296
748
|
type: 'object',
|
|
297
749
|
properties: {
|
|
298
750
|
cpu: {
|
|
299
|
-
type: '
|
|
300
|
-
format: 'float',
|
|
751
|
+
type: 'integer',
|
|
301
752
|
minimum: 0,
|
|
302
|
-
|
|
753
|
+
maximum: 100000,
|
|
754
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
303
755
|
}
|
|
304
756
|
},
|
|
305
|
-
required: ['cpu'],
|
|
306
757
|
additionalProperties: false,
|
|
307
758
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
308
759
|
},
|
|
@@ -310,62 +761,345 @@ export const FleetCreateInputSchema = {
|
|
|
310
761
|
type: 'object',
|
|
311
762
|
properties: {
|
|
312
763
|
enabled: {
|
|
313
|
-
type: 'boolean'
|
|
314
|
-
default: true
|
|
764
|
+
type: 'boolean'
|
|
315
765
|
},
|
|
316
766
|
project: {
|
|
317
767
|
type: 'string',
|
|
318
|
-
|
|
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'
|
|
319
771
|
}
|
|
320
772
|
},
|
|
321
|
-
required: [
|
|
773
|
+
required: [
|
|
774
|
+
'enabled'
|
|
775
|
+
],
|
|
322
776
|
additionalProperties: false
|
|
323
777
|
},
|
|
324
778
|
hetzner: {
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
enabled: {
|
|
330
|
-
type: 'boolean',
|
|
331
|
-
default: true
|
|
332
|
-
},
|
|
333
|
-
apiKey: {
|
|
334
|
-
type: 'string'
|
|
335
|
-
}
|
|
336
|
-
},
|
|
337
|
-
additionalProperties: false
|
|
779
|
+
type: 'object',
|
|
780
|
+
properties: {
|
|
781
|
+
enabled: {
|
|
782
|
+
type: 'boolean'
|
|
338
783
|
},
|
|
339
|
-
{
|
|
340
|
-
type: '
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
enabled: {
|
|
346
|
-
type: 'boolean',
|
|
347
|
-
default: true
|
|
348
|
-
}
|
|
349
|
-
},
|
|
350
|
-
additionalProperties: false
|
|
784
|
+
apiKey: {
|
|
785
|
+
type: 'string',
|
|
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.'
|
|
351
790
|
}
|
|
352
|
-
|
|
791
|
+
},
|
|
792
|
+
required: [
|
|
793
|
+
'enabled'
|
|
794
|
+
],
|
|
795
|
+
additionalProperties: false
|
|
353
796
|
},
|
|
354
797
|
aws: {
|
|
355
798
|
type: 'object',
|
|
356
799
|
properties: {
|
|
357
800
|
enabled: {
|
|
358
|
-
type: 'boolean'
|
|
359
|
-
default: true
|
|
801
|
+
type: 'boolean'
|
|
360
802
|
},
|
|
361
803
|
controllerRoleArn: {
|
|
362
804
|
type: 'string',
|
|
363
|
-
|
|
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'
|
|
364
808
|
}
|
|
365
809
|
},
|
|
366
|
-
required: [
|
|
810
|
+
required: [
|
|
811
|
+
'enabled'
|
|
812
|
+
],
|
|
367
813
|
additionalProperties: false
|
|
368
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
|
+
},
|
|
369
1103
|
id: {
|
|
370
1104
|
type: 'string',
|
|
371
1105
|
maxLength: 63,
|
|
@@ -373,14 +1107,11 @@ export const FleetCreateInputSchema = {
|
|
|
373
1107
|
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
374
1108
|
description: 'Unique identifier of the kubernetes fleet.',
|
|
375
1109
|
example: 'new-clouds-fleet'
|
|
376
|
-
},
|
|
377
|
-
type: {
|
|
378
|
-
type: 'string',
|
|
379
|
-
description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
|
|
380
|
-
enum: ['managed', 'connected']
|
|
381
1110
|
}
|
|
382
1111
|
},
|
|
383
|
-
required: [
|
|
1112
|
+
required: [
|
|
1113
|
+
'id'
|
|
1114
|
+
],
|
|
384
1115
|
additionalProperties: false
|
|
385
1116
|
};
|
|
386
1117
|
export const FleetSchema = {
|
|
@@ -390,13 +1121,12 @@ export const FleetSchema = {
|
|
|
390
1121
|
type: 'object',
|
|
391
1122
|
properties: {
|
|
392
1123
|
cpu: {
|
|
393
|
-
type: '
|
|
394
|
-
format: 'float',
|
|
1124
|
+
type: 'integer',
|
|
395
1125
|
minimum: 0,
|
|
396
|
-
|
|
1126
|
+
maximum: 100000,
|
|
1127
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
397
1128
|
}
|
|
398
1129
|
},
|
|
399
|
-
required: ['cpu'],
|
|
400
1130
|
additionalProperties: false,
|
|
401
1131
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
402
1132
|
},
|
|
@@ -404,77 +1134,356 @@ export const FleetSchema = {
|
|
|
404
1134
|
type: 'object',
|
|
405
1135
|
properties: {
|
|
406
1136
|
enabled: {
|
|
407
|
-
type: 'boolean'
|
|
408
|
-
default: true
|
|
1137
|
+
type: 'boolean'
|
|
409
1138
|
},
|
|
410
1139
|
project: {
|
|
411
1140
|
type: 'string',
|
|
412
|
-
|
|
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'
|
|
413
1144
|
}
|
|
414
1145
|
},
|
|
415
|
-
required: [
|
|
1146
|
+
required: [
|
|
1147
|
+
'enabled'
|
|
1148
|
+
],
|
|
416
1149
|
additionalProperties: false
|
|
417
1150
|
},
|
|
418
1151
|
hetzner: {
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
enabled: {
|
|
424
|
-
type: 'boolean',
|
|
425
|
-
default: true
|
|
426
|
-
},
|
|
427
|
-
apiKey: {
|
|
428
|
-
type: 'string'
|
|
429
|
-
}
|
|
430
|
-
},
|
|
431
|
-
additionalProperties: false
|
|
1152
|
+
type: 'object',
|
|
1153
|
+
properties: {
|
|
1154
|
+
enabled: {
|
|
1155
|
+
type: 'boolean'
|
|
432
1156
|
},
|
|
433
|
-
{
|
|
434
|
-
type: '
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
type: 'string'
|
|
438
|
-
},
|
|
439
|
-
enabled: {
|
|
440
|
-
type: 'boolean',
|
|
441
|
-
default: true
|
|
442
|
-
}
|
|
443
|
-
},
|
|
444
|
-
additionalProperties: false
|
|
1157
|
+
apiKey: {
|
|
1158
|
+
type: 'string',
|
|
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.'
|
|
445
1161
|
}
|
|
446
|
-
|
|
1162
|
+
},
|
|
1163
|
+
required: [
|
|
1164
|
+
'enabled'
|
|
1165
|
+
],
|
|
1166
|
+
additionalProperties: false
|
|
447
1167
|
},
|
|
448
1168
|
aws: {
|
|
449
1169
|
type: 'object',
|
|
450
1170
|
properties: {
|
|
451
1171
|
enabled: {
|
|
452
|
-
type: 'boolean'
|
|
453
|
-
default: true
|
|
1172
|
+
type: 'boolean'
|
|
454
1173
|
},
|
|
455
1174
|
controllerRoleArn: {
|
|
456
1175
|
type: 'string',
|
|
457
|
-
|
|
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'
|
|
458
1179
|
}
|
|
459
1180
|
},
|
|
460
|
-
required: [
|
|
1181
|
+
required: [
|
|
1182
|
+
'enabled'
|
|
1183
|
+
],
|
|
461
1184
|
additionalProperties: false
|
|
462
1185
|
},
|
|
463
|
-
|
|
464
|
-
type: '
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
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
|
+
},
|
|
1474
|
+
id: {
|
|
1475
|
+
type: 'string',
|
|
1476
|
+
maxLength: 63,
|
|
1477
|
+
minLength: 1,
|
|
1478
|
+
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
1479
|
+
description: 'Unique identifier of the kubernetes fleet.',
|
|
1480
|
+
example: 'new-clouds-fleet'
|
|
1481
|
+
}
|
|
1482
|
+
},
|
|
1483
|
+
required: [
|
|
1484
|
+
'scalingProfile',
|
|
1485
|
+
'id'
|
|
1486
|
+
],
|
|
478
1487
|
additionalProperties: false
|
|
479
1488
|
};
|
|
480
1489
|
export const FleetUpdateInputSchema = {
|
|
@@ -484,13 +1493,12 @@ export const FleetUpdateInputSchema = {
|
|
|
484
1493
|
type: 'object',
|
|
485
1494
|
properties: {
|
|
486
1495
|
cpu: {
|
|
487
|
-
type: '
|
|
488
|
-
format: 'float',
|
|
1496
|
+
type: 'integer',
|
|
489
1497
|
minimum: 0,
|
|
490
|
-
|
|
1498
|
+
maximum: 100000,
|
|
1499
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
491
1500
|
}
|
|
492
1501
|
},
|
|
493
|
-
required: ['cpu'],
|
|
494
1502
|
additionalProperties: false,
|
|
495
1503
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
496
1504
|
},
|
|
@@ -498,333 +1506,341 @@ export const FleetUpdateInputSchema = {
|
|
|
498
1506
|
type: 'object',
|
|
499
1507
|
properties: {
|
|
500
1508
|
enabled: {
|
|
501
|
-
type: 'boolean'
|
|
502
|
-
default: true
|
|
1509
|
+
type: 'boolean'
|
|
503
1510
|
},
|
|
504
1511
|
project: {
|
|
505
1512
|
type: 'string',
|
|
506
|
-
|
|
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'
|
|
507
1516
|
}
|
|
508
1517
|
},
|
|
509
|
-
required: [
|
|
1518
|
+
required: [
|
|
1519
|
+
'enabled'
|
|
1520
|
+
],
|
|
510
1521
|
additionalProperties: false
|
|
511
1522
|
},
|
|
512
1523
|
hetzner: {
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
enabled: {
|
|
518
|
-
type: 'boolean',
|
|
519
|
-
default: true
|
|
520
|
-
},
|
|
521
|
-
apiKey: {
|
|
522
|
-
type: 'string'
|
|
523
|
-
}
|
|
524
|
-
},
|
|
525
|
-
additionalProperties: false
|
|
1524
|
+
type: 'object',
|
|
1525
|
+
properties: {
|
|
1526
|
+
enabled: {
|
|
1527
|
+
type: 'boolean'
|
|
526
1528
|
},
|
|
527
|
-
{
|
|
528
|
-
type: '
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
enabled: {
|
|
534
|
-
type: 'boolean',
|
|
535
|
-
default: true
|
|
536
|
-
}
|
|
537
|
-
},
|
|
538
|
-
additionalProperties: false
|
|
1529
|
+
apiKey: {
|
|
1530
|
+
type: 'string',
|
|
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.'
|
|
539
1535
|
}
|
|
540
|
-
|
|
1536
|
+
},
|
|
1537
|
+
required: [
|
|
1538
|
+
'enabled'
|
|
1539
|
+
],
|
|
1540
|
+
additionalProperties: false
|
|
541
1541
|
},
|
|
542
1542
|
aws: {
|
|
543
1543
|
type: 'object',
|
|
544
1544
|
properties: {
|
|
545
1545
|
enabled: {
|
|
546
|
-
type: 'boolean'
|
|
547
|
-
default: true
|
|
1546
|
+
type: 'boolean'
|
|
548
1547
|
},
|
|
549
1548
|
controllerRoleArn: {
|
|
550
1549
|
type: 'string',
|
|
551
|
-
|
|
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'
|
|
552
1553
|
}
|
|
553
1554
|
},
|
|
554
|
-
required: [
|
|
1555
|
+
required: [
|
|
1556
|
+
'enabled'
|
|
1557
|
+
],
|
|
555
1558
|
additionalProperties: false
|
|
556
|
-
}
|
|
557
|
-
},
|
|
558
|
-
additionalProperties: false
|
|
559
|
-
};
|
|
560
|
-
export const InfrastructureFilterSchema = {
|
|
561
|
-
type: 'object',
|
|
562
|
-
properties: {
|
|
563
|
-
version: {
|
|
564
|
-
type: 'integer',
|
|
565
|
-
description: 'Version of the infrastructure filter definition. Currently only version 1 is supported.',
|
|
566
|
-
default: 1,
|
|
567
|
-
example: 1,
|
|
568
|
-
enum: [1]
|
|
569
1559
|
},
|
|
570
|
-
|
|
571
|
-
type: '
|
|
572
|
-
|
|
573
|
-
type:
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
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
|
+
}
|
|
622
1827
|
},
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
},
|
|
626
|
-
accelerator_count_min: {
|
|
627
|
-
type: 'integer',
|
|
628
|
-
minimum: 0,
|
|
629
|
-
description: 'Minimum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
|
|
630
|
-
example: 1
|
|
631
|
-
},
|
|
632
|
-
accelerator_count_max: {
|
|
633
|
-
type: 'integer',
|
|
634
|
-
minimum: 0,
|
|
635
|
-
description: 'Maximum number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
|
|
636
|
-
example: 8
|
|
637
|
-
},
|
|
638
|
-
accelerator_memory_min: {
|
|
639
|
-
type: 'number',
|
|
640
|
-
format: 'float',
|
|
641
|
-
description: "Minimum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
|
|
642
|
-
example: 40
|
|
643
|
-
},
|
|
644
|
-
accelerator_memory_max: {
|
|
645
|
-
type: 'number',
|
|
646
|
-
format: 'float',
|
|
647
|
-
description: "Maximum amount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
|
|
648
|
-
example: 80
|
|
649
|
-
},
|
|
650
|
-
memory_min: {
|
|
651
|
-
type: 'integer',
|
|
652
|
-
minimum: 0,
|
|
653
|
-
description: 'Minimum amount of RAM in gibibytes (GiB)',
|
|
654
|
-
example: 32
|
|
655
|
-
},
|
|
656
|
-
memory_max: {
|
|
657
|
-
type: 'integer',
|
|
658
|
-
minimum: 0,
|
|
659
|
-
description: 'Maximum amount of RAM in gibibytes (GiB)',
|
|
660
|
-
example: 64
|
|
661
|
-
},
|
|
662
|
-
vcpu_min: {
|
|
663
|
-
type: 'integer',
|
|
664
|
-
minimum: 1,
|
|
665
|
-
description: 'Minimum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
|
|
666
|
-
example: 32
|
|
667
|
-
},
|
|
668
|
-
vcpu_max: {
|
|
669
|
-
type: 'integer',
|
|
670
|
-
minimum: 1,
|
|
671
|
-
description: 'Maximum number of vCPUs as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
|
|
672
|
-
example: 128
|
|
673
|
-
},
|
|
674
|
-
storage_total_min: {
|
|
675
|
-
type: 'number',
|
|
676
|
-
format: 'float',
|
|
677
|
-
minimum: 10,
|
|
678
|
-
description: 'Minimum total storage in GiB (attached and local)',
|
|
679
|
-
example: 128
|
|
680
|
-
},
|
|
681
|
-
storage_total_max: {
|
|
682
|
-
type: 'number',
|
|
683
|
-
format: 'float',
|
|
684
|
-
minimum: 10,
|
|
685
|
-
description: 'Maximum total storage in GiB (attached and local)',
|
|
686
|
-
example: 256
|
|
687
|
-
},
|
|
688
|
-
storage_local_min: {
|
|
689
|
-
type: 'number',
|
|
690
|
-
format: 'float',
|
|
691
|
-
description: 'Minimum volume of directly attached, block-device local storage in gibibytes (GiB)',
|
|
692
|
-
example: 24
|
|
693
|
-
},
|
|
694
|
-
storage_local_max: {
|
|
695
|
-
type: 'number',
|
|
696
|
-
format: 'float',
|
|
697
|
-
description: 'Maximum volume of directly attached, block-device local storage in gibibytes (GiB)',
|
|
698
|
-
example: 128
|
|
699
|
-
},
|
|
700
|
-
price_min: {
|
|
701
|
-
type: 'number',
|
|
702
|
-
format: 'float',
|
|
703
|
-
description: 'Minimum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
|
|
704
|
-
example: 10
|
|
705
|
-
},
|
|
706
|
-
price_max: {
|
|
707
|
-
type: 'number',
|
|
708
|
-
format: 'float',
|
|
709
|
-
description: 'Maximum price of running the inctance per hour in USD as defined by the cloud service provider. The cheapest instance will be selected.',
|
|
710
|
-
example: 50
|
|
711
|
-
}
|
|
712
|
-
},
|
|
713
|
-
additionalProperties: false
|
|
714
|
-
};
|
|
715
|
-
export const InfrastructureInstanceSchema = {
|
|
716
|
-
type: 'object',
|
|
717
|
-
properties: {
|
|
718
|
-
sku: {
|
|
719
|
-
type: 'string',
|
|
720
|
-
description: 'Cloudfleet instance SKU. Has a format of <provider>-<csp_region>-<instance_type>.',
|
|
721
|
-
example: 'AWS-EU-WEST-1C-P4D.24XLARGE'
|
|
722
|
-
},
|
|
723
|
-
provider: {
|
|
724
|
-
type: 'string',
|
|
725
|
-
description: 'Normalized cloud service provider name. For the full list of supported providers, see [Providers](https://cloudfleet.ai/docs/cloud-infrastructure/providers/)',
|
|
726
|
-
example: 'AWS'
|
|
727
|
-
},
|
|
728
|
-
region: {
|
|
729
|
-
type: 'string',
|
|
730
|
-
description: 'Normalized region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
|
|
731
|
-
example: 'europe'
|
|
732
|
-
},
|
|
733
|
-
sub_region: {
|
|
734
|
-
type: 'string',
|
|
735
|
-
description: 'Normalized sub-region. For the full list of normalized regions and their mapping to CSP regions, see [Regions](https://cloudfleet.ai/docs/cloud-infrastructure/node-regions/)',
|
|
736
|
-
example: 'west'
|
|
737
|
-
},
|
|
738
|
-
csp_region: {
|
|
739
|
-
type: 'string',
|
|
740
|
-
description: 'Region as defined by the cloud service provider',
|
|
741
|
-
example: 'eu-west-1'
|
|
742
|
-
},
|
|
743
|
-
csp_zone: {
|
|
744
|
-
type: 'string',
|
|
745
|
-
description: 'Availability zone as defined by the cloud service provider',
|
|
746
|
-
example: 'eu-west-1a'
|
|
747
|
-
},
|
|
748
|
-
instance_type: {
|
|
749
|
-
type: 'string',
|
|
750
|
-
description: 'Instance / VM type as defined by the cloud service provider',
|
|
751
|
-
example: 'p4d.24xlarge'
|
|
752
|
-
},
|
|
753
|
-
architecture: {
|
|
754
|
-
type: 'string',
|
|
755
|
-
description: 'Instance CPU architecture',
|
|
756
|
-
example: 'amd64'
|
|
757
|
-
},
|
|
758
|
-
os: {
|
|
759
|
-
type: 'string',
|
|
760
|
-
description: 'Instance operating system',
|
|
761
|
-
example: 'linux'
|
|
762
|
-
},
|
|
763
|
-
vcpu: {
|
|
764
|
-
type: 'number',
|
|
765
|
-
format: 'float',
|
|
766
|
-
minimum: 1,
|
|
767
|
-
description: 'CPU count as defined by the cloud service provider. Some cloud providers use hyperthreading, so the number of vCPUs may be twice as high as the number of physical cores.',
|
|
768
|
-
example: 96
|
|
769
|
-
},
|
|
770
|
-
memory: {
|
|
771
|
-
type: 'number',
|
|
772
|
-
format: 'float',
|
|
773
|
-
minimum: 1,
|
|
774
|
-
description: 'Total amount of RAM in gibibytes (GiB)',
|
|
775
|
-
example: 1152
|
|
776
|
-
},
|
|
777
|
-
local_storage: {
|
|
778
|
-
type: 'number',
|
|
779
|
-
format: 'float',
|
|
780
|
-
description: 'Volume of directly attached, block-device local storage in gibibytes (GiB)',
|
|
781
|
-
example: 8000
|
|
782
|
-
},
|
|
783
|
-
accelerator_name: {
|
|
784
|
-
type: 'string',
|
|
785
|
-
description: "Normalized model name of accelerator. For example, all variations of Nvidia A100 GPUs will have 'A100' as accelerator name with various memory configurations set in accelerator_memory field",
|
|
786
|
-
example: 'A100'
|
|
787
|
-
},
|
|
788
|
-
accelerator_manufacturer: {
|
|
789
|
-
type: 'string',
|
|
790
|
-
description: "Normalized manufacturer name of accelerator. For example, all Nvidia GPUs will have 'NVIDIA' as accelerator manufacturer",
|
|
791
|
-
example: 'NVIDIA'
|
|
792
|
-
},
|
|
793
|
-
accelerator_count: {
|
|
794
|
-
type: 'integer',
|
|
795
|
-
description: 'Number of accelerators available on the instance. Some cloud providers support shared accelerators, so the number of accelerators may be a fraction of the number of physical accelerators.',
|
|
796
|
-
example: 8
|
|
797
|
-
},
|
|
798
|
-
accelerator_memory: {
|
|
799
|
-
type: 'number',
|
|
800
|
-
format: 'float',
|
|
801
|
-
description: "Ammount of accelerator memory available to each accelerator. For example, Nvidia A100 GPUs will typically have '40.0' gibibytes (GiB) of memory, while A100 GPUs with HBM2E memory will have '80.0' gibibytes (GiB) of memory",
|
|
802
|
-
example: 40
|
|
803
|
-
},
|
|
804
|
-
pods_capacity: {
|
|
805
|
-
type: 'number',
|
|
806
|
-
format: 'float',
|
|
807
|
-
description: 'Maximum number of pods that can be run on this instance type.',
|
|
808
|
-
example: 110
|
|
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.'
|
|
809
1830
|
},
|
|
810
|
-
|
|
1831
|
+
scalingProfile: {
|
|
811
1832
|
type: 'string',
|
|
812
|
-
description: '
|
|
813
|
-
example: '
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
description: 'Price of running the inctance per hour in USD as defined by the cloud service provider',
|
|
819
|
-
example: 35.39655
|
|
820
|
-
},
|
|
821
|
-
available: {
|
|
822
|
-
type: 'boolean',
|
|
823
|
-
description: 'Whether this instance type is available.',
|
|
824
|
-
example: true
|
|
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
|
+
]
|
|
825
1839
|
}
|
|
826
1840
|
},
|
|
827
|
-
required: [
|
|
1841
|
+
required: [
|
|
1842
|
+
'scalingProfile'
|
|
1843
|
+
],
|
|
828
1844
|
additionalProperties: false
|
|
829
1845
|
};
|
|
830
1846
|
export const InviteSchema = {
|
|
@@ -859,7 +1875,9 @@ export const InviteSchema = {
|
|
|
859
1875
|
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
860
1876
|
}
|
|
861
1877
|
},
|
|
862
|
-
required: [
|
|
1878
|
+
required: [
|
|
1879
|
+
'date_created'
|
|
1880
|
+
],
|
|
863
1881
|
additionalProperties: false
|
|
864
1882
|
};
|
|
865
1883
|
export const InvoiceSchema = {
|
|
@@ -867,23 +1885,18 @@ export const InvoiceSchema = {
|
|
|
867
1885
|
properties: {
|
|
868
1886
|
id: {
|
|
869
1887
|
type: 'string',
|
|
870
|
-
|
|
871
|
-
|
|
872
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
1888
|
+
description: 'Unique identifier of the invoice.',
|
|
1889
|
+
example: 'in_1234567890xCrwxghOTj1234'
|
|
873
1890
|
},
|
|
874
|
-
|
|
875
|
-
type: 'string'
|
|
876
|
-
format: 'uuid',
|
|
877
|
-
description: 'Unique identifier of the organization. UUID v4 string in canonical form',
|
|
878
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
1891
|
+
number: {
|
|
1892
|
+
type: 'string'
|
|
879
1893
|
},
|
|
880
1894
|
status: {
|
|
881
1895
|
type: 'string',
|
|
882
1896
|
description: 'Status of the invoice',
|
|
883
|
-
example: '
|
|
884
|
-
enum: ['DRAFT', 'COMMITTED', 'VOID']
|
|
1897
|
+
example: 'paid'
|
|
885
1898
|
},
|
|
886
|
-
|
|
1899
|
+
total: {
|
|
887
1900
|
type: 'number',
|
|
888
1901
|
format: 'float',
|
|
889
1902
|
description: 'Total amount of the invoice',
|
|
@@ -892,330 +1905,189 @@ export const InvoiceSchema = {
|
|
|
892
1905
|
currency: {
|
|
893
1906
|
type: 'string',
|
|
894
1907
|
description: 'Currency of the invoice',
|
|
895
|
-
example: '
|
|
896
|
-
enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
|
|
897
|
-
},
|
|
898
|
-
creditAdj: {
|
|
899
|
-
type: 'number',
|
|
900
|
-
format: 'float',
|
|
901
|
-
description: 'Total amount of credit adjustments',
|
|
902
|
-
example: 0
|
|
1908
|
+
example: 'usd'
|
|
903
1909
|
},
|
|
904
|
-
|
|
905
|
-
type: 'number',
|
|
906
|
-
format: 'float',
|
|
907
|
-
description: 'Total amount of refund adjustments',
|
|
908
|
-
example: 0
|
|
909
|
-
},
|
|
910
|
-
invoiceDate: {
|
|
1910
|
+
created: {
|
|
911
1911
|
type: 'string',
|
|
912
|
-
|
|
913
|
-
|
|
1912
|
+
format: 'date-time',
|
|
1913
|
+
description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
|
|
1914
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
914
1915
|
},
|
|
915
|
-
|
|
1916
|
+
period_start: {
|
|
916
1917
|
type: 'string',
|
|
917
|
-
|
|
918
|
-
|
|
1918
|
+
format: 'date-time',
|
|
1919
|
+
description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
|
|
1920
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
919
1921
|
},
|
|
920
|
-
|
|
1922
|
+
period_end: {
|
|
921
1923
|
type: 'string',
|
|
922
|
-
|
|
923
|
-
|
|
1924
|
+
format: 'date-time',
|
|
1925
|
+
description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
|
|
1926
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
924
1927
|
},
|
|
925
|
-
|
|
926
|
-
type: '
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
1928
|
+
invoice_pdf: {
|
|
1929
|
+
type: 'string'
|
|
1930
|
+
}
|
|
1931
|
+
},
|
|
1932
|
+
required: [
|
|
1933
|
+
'created',
|
|
1934
|
+
'period_start',
|
|
1935
|
+
'period_end'
|
|
1936
|
+
],
|
|
1937
|
+
additionalProperties: false
|
|
1938
|
+
};
|
|
1939
|
+
export const MarketplaceListingFilesSchema = {
|
|
1940
|
+
type: 'object',
|
|
1941
|
+
properties: {
|
|
1942
|
+
chartYaml: {
|
|
1943
|
+
type: 'string',
|
|
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'
|
|
930
1946
|
},
|
|
931
|
-
|
|
1947
|
+
valuesYaml: {
|
|
932
1948
|
type: 'string',
|
|
933
|
-
description: '
|
|
934
|
-
example: '
|
|
1949
|
+
description: 'Raw values.yaml content from the Helm chart',
|
|
1950
|
+
example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
|
|
935
1951
|
},
|
|
936
|
-
|
|
937
|
-
type: '
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
|
|
950
|
-
|
|
951
|
-
|
|
952
|
-
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
type: 'string',
|
|
960
|
-
description: 'Name of the plan',
|
|
961
|
-
example: 'Plan A'
|
|
962
|
-
},
|
|
963
|
-
phaseName: {
|
|
964
|
-
type: 'string',
|
|
965
|
-
description: 'Name of the phase',
|
|
966
|
-
example: 'Phase A'
|
|
967
|
-
},
|
|
968
|
-
usageName: {
|
|
969
|
-
type: 'string',
|
|
970
|
-
description: 'Name of the usage',
|
|
971
|
-
example: 'Usage A'
|
|
972
|
-
},
|
|
973
|
-
prettyProductName: {
|
|
974
|
-
type: 'string',
|
|
975
|
-
description: 'Pretty name of the product',
|
|
976
|
-
example: 'Research team'
|
|
977
|
-
},
|
|
978
|
-
prettyPlanName: {
|
|
979
|
-
type: 'string',
|
|
980
|
-
description: 'Pretty name of the plan',
|
|
981
|
-
example: 'Plan A'
|
|
982
|
-
},
|
|
983
|
-
prettyPhaseName: {
|
|
984
|
-
type: 'string',
|
|
985
|
-
description: 'Pretty name of the phase',
|
|
986
|
-
example: 'Phase A'
|
|
987
|
-
},
|
|
988
|
-
prettyUsageName: {
|
|
989
|
-
type: 'string',
|
|
990
|
-
description: 'Pretty name of the usage',
|
|
991
|
-
example: 'Usage A'
|
|
992
|
-
},
|
|
993
|
-
itemType: {
|
|
994
|
-
type: 'string',
|
|
995
|
-
description: 'Type of the invoice item',
|
|
996
|
-
example: 'EXTERNAL_CHARGE',
|
|
997
|
-
enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
|
|
998
|
-
},
|
|
999
|
-
description: {
|
|
1000
|
-
type: 'string',
|
|
1001
|
-
description: 'Description of the invoice item',
|
|
1002
|
-
example: 'Description of the invoice item'
|
|
1003
|
-
},
|
|
1004
|
-
startDate: {
|
|
1005
|
-
type: 'string',
|
|
1006
|
-
description: 'Start date of the invoice item',
|
|
1007
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1008
|
-
},
|
|
1009
|
-
endDate: {
|
|
1010
|
-
type: 'string',
|
|
1011
|
-
description: 'End date of the invoice item',
|
|
1012
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1013
|
-
},
|
|
1014
|
-
amount: {
|
|
1015
|
-
type: 'number',
|
|
1016
|
-
format: 'float',
|
|
1017
|
-
description: 'Amount of the invoice item',
|
|
1018
|
-
example: 100
|
|
1019
|
-
},
|
|
1020
|
-
rate: {
|
|
1021
|
-
type: 'number',
|
|
1022
|
-
format: 'float',
|
|
1023
|
-
description: 'Rate of the invoice item',
|
|
1024
|
-
example: 100
|
|
1025
|
-
},
|
|
1026
|
-
currency: {
|
|
1027
|
-
type: 'string',
|
|
1028
|
-
description: 'Currency of the invoice item',
|
|
1029
|
-
example: 'USD',
|
|
1030
|
-
enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
|
|
1031
|
-
},
|
|
1032
|
-
quantity: {
|
|
1033
|
-
type: 'number',
|
|
1034
|
-
format: 'float',
|
|
1035
|
-
description: 'Quantity of the invoice item',
|
|
1036
|
-
example: 1
|
|
1037
|
-
},
|
|
1038
|
-
itemDetails: {
|
|
1039
|
-
type: 'string',
|
|
1040
|
-
description: 'Details of the invoice item',
|
|
1041
|
-
example: 'Details of the invoice item'
|
|
1042
|
-
},
|
|
1043
|
-
catalogEffectiveDate: {
|
|
1044
|
-
type: 'string',
|
|
1045
|
-
description: 'Effective date of the catalog',
|
|
1046
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1047
|
-
},
|
|
1048
|
-
childItems: {
|
|
1049
|
-
type: 'array',
|
|
1050
|
-
items: {
|
|
1051
|
-
oneOf: [
|
|
1052
|
-
{
|
|
1053
|
-
type: 'array'
|
|
1054
|
-
},
|
|
1055
|
-
{
|
|
1056
|
-
type: 'boolean'
|
|
1057
|
-
},
|
|
1058
|
-
{
|
|
1059
|
-
type: 'number'
|
|
1060
|
-
},
|
|
1061
|
-
{
|
|
1062
|
-
type: 'object',
|
|
1063
|
-
additionalProperties: true
|
|
1064
|
-
},
|
|
1065
|
-
{
|
|
1066
|
-
type: 'string'
|
|
1067
|
-
}
|
|
1068
|
-
]
|
|
1069
|
-
},
|
|
1070
|
-
description: 'Child items of the invoice item'
|
|
1071
|
-
}
|
|
1072
|
-
},
|
|
1073
|
-
additionalProperties: false
|
|
1952
|
+
valuesSchemaJson: {
|
|
1953
|
+
type: 'string',
|
|
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: {
|
|
1964
|
+
type: 'string',
|
|
1965
|
+
description: 'Name of the chart',
|
|
1966
|
+
example: 'nginx-ingress'
|
|
1967
|
+
},
|
|
1968
|
+
versions: {
|
|
1969
|
+
type: 'array',
|
|
1970
|
+
items: {
|
|
1971
|
+
type: 'string',
|
|
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'
|
|
1074
1975
|
},
|
|
1075
|
-
description: '
|
|
1976
|
+
description: 'Available versions of the chart'
|
|
1076
1977
|
},
|
|
1077
|
-
|
|
1978
|
+
version_channels: {
|
|
1078
1979
|
type: 'array',
|
|
1079
1980
|
items: {
|
|
1080
|
-
type: '
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
1085
|
-
|
|
1086
|
-
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
|
|
1099
|
-
|
|
1100
|
-
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
1106
|
-
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
prettyPhaseName: {
|
|
1125
|
-
type: 'string',
|
|
1126
|
-
description: 'Pretty name of the phase',
|
|
1127
|
-
example: 'Phase A'
|
|
1128
|
-
},
|
|
1129
|
-
prettyUsageName: {
|
|
1130
|
-
type: 'string',
|
|
1131
|
-
description: 'Pretty name of the usage',
|
|
1132
|
-
example: 'Usage A'
|
|
1133
|
-
},
|
|
1134
|
-
itemType: {
|
|
1135
|
-
type: 'string',
|
|
1136
|
-
description: 'Type of the invoice item',
|
|
1137
|
-
example: 'EXTERNAL_CHARGE',
|
|
1138
|
-
enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
|
|
1139
|
-
},
|
|
1140
|
-
description: {
|
|
1141
|
-
type: 'string',
|
|
1142
|
-
description: 'Description of the invoice item',
|
|
1143
|
-
example: 'Description of the invoice item'
|
|
1144
|
-
},
|
|
1145
|
-
startDate: {
|
|
1146
|
-
type: 'string',
|
|
1147
|
-
description: 'Start date of the invoice item',
|
|
1148
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1149
|
-
},
|
|
1150
|
-
endDate: {
|
|
1151
|
-
type: 'string',
|
|
1152
|
-
description: 'End date of the invoice item',
|
|
1153
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1154
|
-
},
|
|
1155
|
-
amount: {
|
|
1156
|
-
type: 'number',
|
|
1157
|
-
format: 'float',
|
|
1158
|
-
description: 'Amount of the invoice item',
|
|
1159
|
-
example: 100
|
|
1160
|
-
},
|
|
1161
|
-
rate: {
|
|
1162
|
-
type: 'number',
|
|
1163
|
-
format: 'float',
|
|
1164
|
-
description: 'Rate of the invoice item',
|
|
1165
|
-
example: 100
|
|
1166
|
-
},
|
|
1167
|
-
currency: {
|
|
1168
|
-
type: 'string',
|
|
1169
|
-
description: 'Currency of the invoice item',
|
|
1170
|
-
example: 'USD',
|
|
1171
|
-
enum: ['AED', 'AFN', 'ALL', 'AMD', 'ANG', 'AOA', 'ARS', 'AUD', 'AWG', 'AZN', 'BAM', 'BBD', 'BDT', 'BGN', 'BHD', 'BIF', 'BMD', 'BND', 'BOB', 'BRL', 'BSD', 'BTN', 'BWP', 'BYR', 'BZD', 'CAD', 'CDF', 'CHF', 'CLP', 'CNY', 'COP', 'CRC', 'CUC', 'CUP', 'CVE', 'CZK', 'DJF', 'DKK', 'DOP', 'DZD', 'EGP', 'ERN', 'ETB', 'EUR', 'FJD', 'FKP', 'GBP', 'GEL', 'GGP', 'GHS', 'GIP', 'GMD', 'GNF', 'GTQ', 'GYD', 'HKD', 'HNL', 'HRK', 'HTG', 'HUF', 'IDR', 'ILS', 'IMP', 'INR', 'IQD', 'IRR', 'ISK', 'JEP', 'JMD', 'JOD', 'JPY', 'KES', 'KGS', 'KHR', 'KMF', 'KPW', 'KRW', 'KWD', 'KYD', 'KZT', 'LAK', 'LBP', 'LKR', 'LRD', 'LSL', 'LTL', 'LVL', 'LYD', 'MAD', 'MDL', 'MGA', 'MKD', 'MMK', 'MNT', 'MOP', 'MRO', 'MUR', 'MVR', 'MWK', 'MXN', 'MYR', 'MZN', 'NAD', 'NGN', 'NIO', 'NOK', 'NPR', 'NZD', 'OMR', 'PAB', 'PEN', 'PGK', 'PHP', 'PKR', 'PLN', 'PYG', 'QAR', 'RON', 'RSD', 'RUB', 'RWF', 'SAR', 'SBD', 'SCR', 'SDG', 'SEK', 'SGD', 'SHP', 'SLL', 'SOS', 'SPL', 'SRD', 'STD', 'SVC', 'SYP', 'SZL', 'THB', 'TJS', 'TMT', 'TND', 'TOP', 'TRY', 'TTD', 'TVD', 'TWD', 'TZS', 'UAH', 'UGX', 'USD', 'UYU', 'UZS', 'VEF', 'VND', 'VUV', 'WST', 'XAF', 'XCD', 'XDR', 'XOF', 'XPF', 'YER', 'ZAR', 'ZMW', 'ZWD', 'BTC']
|
|
1172
|
-
},
|
|
1173
|
-
quantity: {
|
|
1174
|
-
type: 'number',
|
|
1175
|
-
format: 'float',
|
|
1176
|
-
description: 'Quantity of the invoice item',
|
|
1177
|
-
example: 1
|
|
1178
|
-
},
|
|
1179
|
-
itemDetails: {
|
|
1180
|
-
type: 'string',
|
|
1181
|
-
description: 'Details of the invoice item',
|
|
1182
|
-
example: 'Details of the invoice item'
|
|
1981
|
+
type: 'string',
|
|
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-]+)*))?$',
|
|
1983
|
+
description: 'Version channel pattern',
|
|
1984
|
+
example: '1.18.x-cfke.x'
|
|
1985
|
+
},
|
|
1986
|
+
description: 'Version channels for the chart'
|
|
1987
|
+
},
|
|
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'
|
|
1183
2025
|
},
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
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'
|
|
1188
2047
|
},
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
{
|
|
1194
|
-
type: 'array'
|
|
1195
|
-
},
|
|
1196
|
-
{
|
|
1197
|
-
type: 'boolean'
|
|
1198
|
-
},
|
|
1199
|
-
{
|
|
1200
|
-
type: 'number'
|
|
1201
|
-
},
|
|
1202
|
-
{
|
|
1203
|
-
type: 'object',
|
|
1204
|
-
additionalProperties: true
|
|
1205
|
-
},
|
|
1206
|
-
{
|
|
1207
|
-
type: 'string'
|
|
1208
|
-
}
|
|
1209
|
-
]
|
|
1210
|
-
},
|
|
1211
|
-
description: 'Child items of the invoice item'
|
|
1212
|
-
}
|
|
2048
|
+
description: 'Chart source URLs',
|
|
2049
|
+
example: [
|
|
2050
|
+
'https://github.com/kubernetes/ingress-nginx'
|
|
2051
|
+
]
|
|
1213
2052
|
},
|
|
1214
|
-
|
|
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
|
+
}
|
|
1215
2076
|
},
|
|
1216
|
-
|
|
2077
|
+
required: [
|
|
2078
|
+
'name',
|
|
2079
|
+
'version'
|
|
2080
|
+
],
|
|
2081
|
+
additionalProperties: false,
|
|
2082
|
+
description: 'Chart metadata'
|
|
1217
2083
|
}
|
|
1218
2084
|
},
|
|
2085
|
+
required: [
|
|
2086
|
+
'name',
|
|
2087
|
+
'versions',
|
|
2088
|
+
'version_channels',
|
|
2089
|
+
'latestVersion'
|
|
2090
|
+
],
|
|
1219
2091
|
additionalProperties: false
|
|
1220
2092
|
};
|
|
1221
2093
|
export const OrganizationCreateInputSchema = {
|
|
@@ -1251,7 +2123,13 @@ export const OrganizationCreateInputSchema = {
|
|
|
1251
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.'
|
|
1252
2124
|
}
|
|
1253
2125
|
},
|
|
1254
|
-
required: [
|
|
2126
|
+
required: [
|
|
2127
|
+
'email',
|
|
2128
|
+
'first_name',
|
|
2129
|
+
'last_name',
|
|
2130
|
+
'company_name',
|
|
2131
|
+
'password'
|
|
2132
|
+
],
|
|
1255
2133
|
additionalProperties: false
|
|
1256
2134
|
};
|
|
1257
2135
|
export const OrganizationSchema = {
|
|
@@ -1307,117 +2185,1004 @@ export const OrganizationSchema = {
|
|
|
1307
2185
|
description: 'Maximum number of fleets that can be created per cluster.',
|
|
1308
2186
|
example: 999
|
|
1309
2187
|
},
|
|
1310
|
-
managed_fleets_cpu_max: {
|
|
1311
|
-
type: 'integer',
|
|
1312
|
-
minimum: 0,
|
|
1313
|
-
description: 'Maximum number of CPU cores per managed fleet.',
|
|
1314
|
-
example: 999
|
|
1315
|
-
},
|
|
1316
2188
|
cluster_tiers: {
|
|
1317
2189
|
type: 'array',
|
|
1318
2190
|
items: {
|
|
1319
2191
|
type: 'string',
|
|
1320
|
-
example: 'basic'
|
|
2192
|
+
example: 'basic'
|
|
2193
|
+
},
|
|
2194
|
+
minItems: 0,
|
|
2195
|
+
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
2196
|
+
},
|
|
2197
|
+
regions: {
|
|
2198
|
+
type: 'array',
|
|
2199
|
+
items: {
|
|
2200
|
+
type: 'string',
|
|
2201
|
+
example: 'northamerica-central-1'
|
|
2202
|
+
},
|
|
2203
|
+
minItems: 1,
|
|
2204
|
+
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
2205
|
+
},
|
|
2206
|
+
versions: {
|
|
2207
|
+
type: 'array',
|
|
2208
|
+
items: {
|
|
2209
|
+
type: 'object',
|
|
2210
|
+
properties: {
|
|
2211
|
+
id: {
|
|
2212
|
+
type: 'string',
|
|
2213
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2214
|
+
example: '1.33.x-cfke.x'
|
|
2215
|
+
},
|
|
2216
|
+
label: {
|
|
2217
|
+
type: 'string',
|
|
2218
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2219
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
2220
|
+
}
|
|
2221
|
+
},
|
|
2222
|
+
required: [
|
|
2223
|
+
'id',
|
|
2224
|
+
'label'
|
|
2225
|
+
],
|
|
2226
|
+
additionalProperties: false
|
|
2227
|
+
},
|
|
2228
|
+
minItems: 1,
|
|
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
|
|
2236
|
+
}
|
|
2237
|
+
},
|
|
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
|
+
],
|
|
2249
|
+
additionalProperties: false,
|
|
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.'
|
|
2251
|
+
},
|
|
2252
|
+
status: {
|
|
2253
|
+
type: 'string',
|
|
2254
|
+
description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
|
|
2255
|
+
enum: [
|
|
2256
|
+
'active',
|
|
2257
|
+
'closed',
|
|
2258
|
+
'suspended'
|
|
2259
|
+
]
|
|
2260
|
+
}
|
|
2261
|
+
},
|
|
2262
|
+
required: [
|
|
2263
|
+
'id',
|
|
2264
|
+
'date_created',
|
|
2265
|
+
'quota',
|
|
2266
|
+
'status'
|
|
2267
|
+
],
|
|
2268
|
+
additionalProperties: false
|
|
2269
|
+
};
|
|
2270
|
+
export const PaymentMethodSchema = {
|
|
2271
|
+
type: 'object',
|
|
2272
|
+
properties: {
|
|
2273
|
+
id: {
|
|
2274
|
+
type: 'string',
|
|
2275
|
+
format: 'uuid',
|
|
2276
|
+
description: 'Unique identifier of the organization. UUID v4 string in canonical form.',
|
|
2277
|
+
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
2278
|
+
},
|
|
2279
|
+
setup: {
|
|
2280
|
+
type: 'boolean',
|
|
2281
|
+
description: 'Whether organization payment method was set up and ready to use for payments.',
|
|
2282
|
+
example: true
|
|
2283
|
+
},
|
|
2284
|
+
type: {
|
|
2285
|
+
type: 'string',
|
|
2286
|
+
nullable: true,
|
|
2287
|
+
description: 'Payment method type type. Only `card` payments supported at the moment.',
|
|
2288
|
+
example: 'card',
|
|
2289
|
+
enum: [
|
|
2290
|
+
'card'
|
|
2291
|
+
]
|
|
2292
|
+
},
|
|
2293
|
+
last4: {
|
|
2294
|
+
type: 'string',
|
|
2295
|
+
nullable: true,
|
|
2296
|
+
description: 'Last 4 digits of the payment card number.',
|
|
2297
|
+
example: '4242'
|
|
2298
|
+
},
|
|
2299
|
+
exp_month: {
|
|
2300
|
+
type: 'integer',
|
|
2301
|
+
minimum: 1,
|
|
2302
|
+
maximum: 12,
|
|
2303
|
+
nullable: true,
|
|
2304
|
+
description: 'Two-digit number representing the card\'s expiration month.',
|
|
2305
|
+
example: '12'
|
|
2306
|
+
},
|
|
2307
|
+
exp_year: {
|
|
2308
|
+
type: 'integer',
|
|
2309
|
+
minimum: 2024,
|
|
2310
|
+
nullable: true,
|
|
2311
|
+
description: 'Four-digit number representing the card\'s expiration year.',
|
|
2312
|
+
example: '2028'
|
|
2313
|
+
},
|
|
2314
|
+
brand: {
|
|
2315
|
+
type: 'string',
|
|
2316
|
+
nullable: true,
|
|
2317
|
+
description: 'Payment card brand. Can be `amex`, `diners`, `discover`, `eftpos_au`, `jcb`, `mastercard`, `unionpay`, `visa`, or `unknown`.',
|
|
2318
|
+
example: 'visa',
|
|
2319
|
+
enum: [
|
|
2320
|
+
'amex',
|
|
2321
|
+
'diners',
|
|
2322
|
+
'discover',
|
|
2323
|
+
'eftpos_au',
|
|
2324
|
+
'jcb',
|
|
2325
|
+
'mastercard',
|
|
2326
|
+
'unionpay',
|
|
2327
|
+
'visa',
|
|
2328
|
+
'unknown'
|
|
2329
|
+
]
|
|
2330
|
+
}
|
|
2331
|
+
},
|
|
2332
|
+
required: [
|
|
2333
|
+
'id',
|
|
2334
|
+
'setup',
|
|
2335
|
+
'type',
|
|
2336
|
+
'last4',
|
|
2337
|
+
'exp_month',
|
|
2338
|
+
'exp_year',
|
|
2339
|
+
'brand'
|
|
2340
|
+
],
|
|
2341
|
+
additionalProperties: false
|
|
2342
|
+
};
|
|
2343
|
+
export const PlatformQuotaSchema = {
|
|
2344
|
+
type: 'object',
|
|
2345
|
+
properties: {
|
|
2346
|
+
basic_clusters_max: {
|
|
2347
|
+
type: 'integer',
|
|
2348
|
+
minimum: 0,
|
|
2349
|
+
description: 'Maximum number of Basic clusters that can be created.',
|
|
2350
|
+
example: 999
|
|
2351
|
+
},
|
|
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
|
|
2422
|
+
}
|
|
2423
|
+
},
|
|
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
|
+
],
|
|
2435
|
+
additionalProperties: false
|
|
2436
|
+
};
|
|
2437
|
+
export const RegistryRepositorySchema = {
|
|
2438
|
+
type: 'object',
|
|
2439
|
+
properties: {
|
|
2440
|
+
name: {
|
|
2441
|
+
type: 'string',
|
|
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'
|
|
1321
2995
|
},
|
|
1322
|
-
|
|
1323
|
-
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
1324
|
-
},
|
|
1325
|
-
regions: {
|
|
1326
|
-
type: 'array',
|
|
1327
|
-
items: {
|
|
2996
|
+
filename: {
|
|
1328
2997
|
type: 'string',
|
|
1329
|
-
|
|
2998
|
+
description: 'Original filename as uploaded.',
|
|
2999
|
+
example: 'debug.log'
|
|
1330
3000
|
},
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
type: 'array',
|
|
1336
|
-
items: {
|
|
1337
|
-
type: 'object',
|
|
1338
|
-
properties: {
|
|
1339
|
-
id: {
|
|
1340
|
-
type: 'string',
|
|
1341
|
-
description: 'Id of the control plane version. Used in API calls.',
|
|
1342
|
-
example: '1.29.x-cfke.x'
|
|
1343
|
-
},
|
|
1344
|
-
label: {
|
|
1345
|
-
type: 'string',
|
|
1346
|
-
description: 'Label of the control plane version. Used in frontent UI.',
|
|
1347
|
-
example: '1.29.x (Always latest 1.29 patch version)'
|
|
1348
|
-
}
|
|
1349
|
-
},
|
|
1350
|
-
required: ['id', 'label'],
|
|
1351
|
-
additionalProperties: false
|
|
3001
|
+
content_type: {
|
|
3002
|
+
type: 'string',
|
|
3003
|
+
description: 'MIME content type of the attachment.',
|
|
3004
|
+
example: 'text/plain'
|
|
1352
3005
|
},
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
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
|
|
1356
3019
|
},
|
|
1357
|
-
|
|
1358
|
-
|
|
1359
|
-
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.'
|
|
3020
|
+
description: 'Attachments associated with this message.',
|
|
3021
|
+
example: []
|
|
1360
3022
|
},
|
|
1361
|
-
|
|
3023
|
+
date_created: {
|
|
1362
3024
|
type: 'string',
|
|
1363
|
-
|
|
1364
|
-
|
|
3025
|
+
format: 'date-time',
|
|
3026
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3027
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
1365
3028
|
}
|
|
1366
3029
|
},
|
|
1367
|
-
required: [
|
|
3030
|
+
required: [
|
|
3031
|
+
'id',
|
|
3032
|
+
'type',
|
|
3033
|
+
'body',
|
|
3034
|
+
'date_created'
|
|
3035
|
+
],
|
|
1368
3036
|
additionalProperties: false
|
|
1369
3037
|
};
|
|
1370
|
-
export const
|
|
3038
|
+
export const TicketSchema = {
|
|
1371
3039
|
type: 'object',
|
|
1372
3040
|
properties: {
|
|
1373
3041
|
id: {
|
|
1374
3042
|
type: 'string',
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
3043
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
3044
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
1378
3045
|
},
|
|
1379
|
-
|
|
1380
|
-
type: '
|
|
1381
|
-
description: '
|
|
1382
|
-
example:
|
|
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
|
+
]
|
|
1383
3055
|
},
|
|
1384
|
-
|
|
3056
|
+
category: {
|
|
1385
3057
|
type: 'string',
|
|
1386
|
-
|
|
1387
|
-
|
|
1388
|
-
|
|
1389
|
-
|
|
3058
|
+
description: 'Ticket category.',
|
|
3059
|
+
example: 'technical',
|
|
3060
|
+
enum: [
|
|
3061
|
+
'billing',
|
|
3062
|
+
'technical',
|
|
3063
|
+
'general'
|
|
3064
|
+
]
|
|
1390
3065
|
},
|
|
1391
|
-
|
|
3066
|
+
summary: {
|
|
1392
3067
|
type: 'string',
|
|
1393
|
-
|
|
1394
|
-
|
|
1395
|
-
example: '4242'
|
|
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.'
|
|
1396
3070
|
},
|
|
1397
|
-
|
|
1398
|
-
type: '
|
|
1399
|
-
|
|
1400
|
-
|
|
1401
|
-
|
|
1402
|
-
description: "Two-digit number representing the card's expiration month.",
|
|
1403
|
-
example: '12'
|
|
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'
|
|
1404
3076
|
},
|
|
1405
|
-
|
|
1406
|
-
type: '
|
|
1407
|
-
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
example: '2028'
|
|
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'
|
|
1411
3082
|
},
|
|
1412
|
-
|
|
3083
|
+
date_updated: {
|
|
1413
3084
|
type: 'string',
|
|
1414
|
-
|
|
1415
|
-
description: '
|
|
1416
|
-
example: '
|
|
1417
|
-
|
|
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.'
|
|
1418
3176
|
}
|
|
1419
3177
|
},
|
|
1420
|
-
required: [
|
|
3178
|
+
required: [
|
|
3179
|
+
'id',
|
|
3180
|
+
'status',
|
|
3181
|
+
'category',
|
|
3182
|
+
'summary',
|
|
3183
|
+
'date_created',
|
|
3184
|
+
'date_updated'
|
|
3185
|
+
],
|
|
1421
3186
|
additionalProperties: false
|
|
1422
3187
|
};
|
|
1423
3188
|
export const TokenCreateInputSchema = {
|
|
@@ -1435,10 +3200,16 @@ export const TokenCreateInputSchema = {
|
|
|
1435
3200
|
type: 'string',
|
|
1436
3201
|
description: 'Role assumed by the token.',
|
|
1437
3202
|
example: 'User',
|
|
1438
|
-
enum: [
|
|
3203
|
+
enum: [
|
|
3204
|
+
'Administrator',
|
|
3205
|
+
'User'
|
|
3206
|
+
]
|
|
1439
3207
|
}
|
|
1440
3208
|
},
|
|
1441
|
-
required: [
|
|
3209
|
+
required: [
|
|
3210
|
+
'name',
|
|
3211
|
+
'role'
|
|
3212
|
+
],
|
|
1442
3213
|
additionalProperties: false
|
|
1443
3214
|
};
|
|
1444
3215
|
export const TokenSchema = {
|
|
@@ -1456,7 +3227,10 @@ export const TokenSchema = {
|
|
|
1456
3227
|
type: 'string',
|
|
1457
3228
|
description: 'Role assumed by the token.',
|
|
1458
3229
|
example: 'User',
|
|
1459
|
-
enum: [
|
|
3230
|
+
enum: [
|
|
3231
|
+
'Administrator',
|
|
3232
|
+
'User'
|
|
3233
|
+
]
|
|
1460
3234
|
},
|
|
1461
3235
|
id: {
|
|
1462
3236
|
type: 'string',
|
|
@@ -1475,7 +3249,11 @@ export const TokenSchema = {
|
|
|
1475
3249
|
example: '2023-12-20T13:53:32.000Z'
|
|
1476
3250
|
}
|
|
1477
3251
|
},
|
|
1478
|
-
required: [
|
|
3252
|
+
required: [
|
|
3253
|
+
'name',
|
|
3254
|
+
'role',
|
|
3255
|
+
'date_created'
|
|
3256
|
+
],
|
|
1479
3257
|
additionalProperties: false
|
|
1480
3258
|
};
|
|
1481
3259
|
export const TokenUpdateInputSchema = {
|
|
@@ -1493,9 +3271,127 @@ export const TokenUpdateInputSchema = {
|
|
|
1493
3271
|
type: 'string',
|
|
1494
3272
|
description: 'Role assumed by the token.',
|
|
1495
3273
|
example: 'User',
|
|
1496
|
-
enum: [
|
|
3274
|
+
enum: [
|
|
3275
|
+
'Administrator',
|
|
3276
|
+
'User'
|
|
3277
|
+
]
|
|
3278
|
+
}
|
|
3279
|
+
},
|
|
3280
|
+
additionalProperties: false
|
|
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'
|
|
1497
3389
|
}
|
|
1498
3390
|
},
|
|
3391
|
+
required: [
|
|
3392
|
+
'data',
|
|
3393
|
+
'facets'
|
|
3394
|
+
],
|
|
1499
3395
|
additionalProperties: false
|
|
1500
3396
|
};
|
|
1501
3397
|
export const UsageSchema = {
|
|
@@ -1508,90 +3404,40 @@ export const UsageSchema = {
|
|
|
1508
3404
|
},
|
|
1509
3405
|
cluster_id: {
|
|
1510
3406
|
type: 'string',
|
|
1511
|
-
format: 'uuid',
|
|
1512
3407
|
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
1513
3408
|
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
1514
3409
|
},
|
|
1515
|
-
cluster_tier: {
|
|
1516
|
-
type: 'string',
|
|
1517
|
-
description: 'Tier of the cluster.',
|
|
1518
|
-
example: 'pro',
|
|
1519
|
-
enum: ['']
|
|
1520
|
-
},
|
|
1521
3410
|
product: {
|
|
1522
3411
|
type: 'string',
|
|
1523
3412
|
description: 'The product the usage is associated with',
|
|
1524
|
-
example: '
|
|
1525
|
-
enum: ['cfke_infra_compute', 'cfke_nodes', 'cfke_controlplane']
|
|
1526
|
-
},
|
|
1527
|
-
node_name: {
|
|
1528
|
-
type: 'string',
|
|
1529
|
-
description: 'Name of the Kubernetes node',
|
|
1530
|
-
example: 'flexible-moth-956037384'
|
|
1531
|
-
},
|
|
1532
|
-
sku: {
|
|
1533
|
-
type: 'string',
|
|
1534
|
-
description: 'SKU of the Kubernetes node',
|
|
1535
|
-
example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
|
|
3413
|
+
example: 'cfke_controlplane'
|
|
1536
3414
|
},
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
description: 'CPU core count of the node',
|
|
1543
|
-
example: 4
|
|
1544
|
-
},
|
|
1545
|
-
{
|
|
1546
|
-
type: 'string',
|
|
1547
|
-
enum: ['']
|
|
1548
|
-
}
|
|
1549
|
-
]
|
|
3415
|
+
value: {
|
|
3416
|
+
type: 'number',
|
|
3417
|
+
format: 'float',
|
|
3418
|
+
description: 'Consumption',
|
|
3419
|
+
example: 4
|
|
1550
3420
|
},
|
|
1551
3421
|
price: {
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
description: 'Price',
|
|
1557
|
-
example: 4
|
|
1558
|
-
},
|
|
1559
|
-
{
|
|
1560
|
-
type: 'string',
|
|
1561
|
-
enum: ['']
|
|
1562
|
-
}
|
|
1563
|
-
]
|
|
1564
|
-
},
|
|
1565
|
-
value: {
|
|
1566
|
-
anyOf: [
|
|
1567
|
-
{
|
|
1568
|
-
type: 'number',
|
|
1569
|
-
format: 'float',
|
|
1570
|
-
description: 'Value',
|
|
1571
|
-
example: 4
|
|
1572
|
-
},
|
|
1573
|
-
{
|
|
1574
|
-
type: 'string',
|
|
1575
|
-
enum: ['']
|
|
1576
|
-
}
|
|
1577
|
-
]
|
|
3422
|
+
type: 'number',
|
|
3423
|
+
format: 'float',
|
|
3424
|
+
description: 'Price per unit',
|
|
3425
|
+
example: 0.01
|
|
1578
3426
|
},
|
|
1579
3427
|
total: {
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
format: 'float',
|
|
1584
|
-
description: 'Total',
|
|
1585
|
-
example: 4
|
|
1586
|
-
},
|
|
1587
|
-
{
|
|
1588
|
-
type: 'string',
|
|
1589
|
-
enum: ['']
|
|
1590
|
-
}
|
|
1591
|
-
]
|
|
3428
|
+
type: 'number',
|
|
3429
|
+
format: 'float',
|
|
3430
|
+
description: 'Total cost'
|
|
1592
3431
|
}
|
|
1593
3432
|
},
|
|
1594
|
-
required: [
|
|
3433
|
+
required: [
|
|
3434
|
+
'hour',
|
|
3435
|
+
'cluster_id',
|
|
3436
|
+
'product',
|
|
3437
|
+
'value',
|
|
3438
|
+
'price',
|
|
3439
|
+
'total'
|
|
3440
|
+
],
|
|
1595
3441
|
additionalProperties: false
|
|
1596
3442
|
};
|
|
1597
3443
|
export const UserCreateInputSchema = {
|
|
@@ -1632,16 +3478,28 @@ export const UserCreateInputSchema = {
|
|
|
1632
3478
|
type: 'string',
|
|
1633
3479
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1634
3480
|
example: 'active',
|
|
1635
|
-
enum: [
|
|
3481
|
+
enum: [
|
|
3482
|
+
'active',
|
|
3483
|
+
'inactive'
|
|
3484
|
+
]
|
|
1636
3485
|
},
|
|
1637
3486
|
role: {
|
|
1638
3487
|
type: 'string',
|
|
1639
|
-
description:
|
|
3488
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1640
3489
|
example: 'User',
|
|
1641
|
-
enum: [
|
|
3490
|
+
enum: [
|
|
3491
|
+
'Administrator',
|
|
3492
|
+
'User'
|
|
3493
|
+
]
|
|
1642
3494
|
}
|
|
1643
3495
|
},
|
|
1644
|
-
required: [
|
|
3496
|
+
required: [
|
|
3497
|
+
'email',
|
|
3498
|
+
'first_name',
|
|
3499
|
+
'last_name',
|
|
3500
|
+
'code',
|
|
3501
|
+
'password'
|
|
3502
|
+
],
|
|
1645
3503
|
additionalProperties: false
|
|
1646
3504
|
};
|
|
1647
3505
|
export const UserSchema = {
|
|
@@ -1669,15 +3527,21 @@ export const UserSchema = {
|
|
|
1669
3527
|
},
|
|
1670
3528
|
role: {
|
|
1671
3529
|
type: 'string',
|
|
1672
|
-
description:
|
|
3530
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1673
3531
|
example: 'User',
|
|
1674
|
-
enum: [
|
|
3532
|
+
enum: [
|
|
3533
|
+
'Administrator',
|
|
3534
|
+
'User'
|
|
3535
|
+
]
|
|
1675
3536
|
},
|
|
1676
3537
|
status: {
|
|
1677
3538
|
type: 'string',
|
|
1678
3539
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1679
3540
|
example: 'active',
|
|
1680
|
-
enum: [
|
|
3541
|
+
enum: [
|
|
3542
|
+
'active',
|
|
3543
|
+
'inactive'
|
|
3544
|
+
]
|
|
1681
3545
|
},
|
|
1682
3546
|
id: {
|
|
1683
3547
|
type: 'string',
|
|
@@ -1690,31 +3554,17 @@ export const UserSchema = {
|
|
|
1690
3554
|
format: 'date-time',
|
|
1691
3555
|
description: 'Creation date of the user. ISO 8601 date string in UTC timezone',
|
|
1692
3556
|
example: '2023-11-02T16:08:14.338Z'
|
|
1693
|
-
},
|
|
1694
|
-
cluster_permissions: {
|
|
1695
|
-
type: 'array',
|
|
1696
|
-
items: {
|
|
1697
|
-
type: 'object',
|
|
1698
|
-
properties: {
|
|
1699
|
-
cluster_id: {
|
|
1700
|
-
type: 'string',
|
|
1701
|
-
format: 'uuid',
|
|
1702
|
-
description: 'Unique identifier of the cluster. UUID v4 string in canonical form',
|
|
1703
|
-
example: '035ce46d-44d8-4e58-a8a2-b0192d1c27df'
|
|
1704
|
-
},
|
|
1705
|
-
permissions: {
|
|
1706
|
-
type: 'string',
|
|
1707
|
-
description: 'User permissions to access the cluster. Can be `readwrite` or `readonly`.',
|
|
1708
|
-
example: 'readwrite',
|
|
1709
|
-
enum: ['readwrite', 'readonly']
|
|
1710
|
-
}
|
|
1711
|
-
},
|
|
1712
|
-
required: ['cluster_id', 'permissions'],
|
|
1713
|
-
additionalProperties: false
|
|
1714
|
-
}
|
|
1715
3557
|
}
|
|
1716
3558
|
},
|
|
1717
|
-
required: [
|
|
3559
|
+
required: [
|
|
3560
|
+
'email',
|
|
3561
|
+
'first_name',
|
|
3562
|
+
'last_name',
|
|
3563
|
+
'role',
|
|
3564
|
+
'status',
|
|
3565
|
+
'id',
|
|
3566
|
+
'date_created'
|
|
3567
|
+
],
|
|
1718
3568
|
additionalProperties: false
|
|
1719
3569
|
};
|
|
1720
3570
|
export const UserUpdateInputSchema = {
|
|
@@ -1742,15 +3592,21 @@ export const UserUpdateInputSchema = {
|
|
|
1742
3592
|
},
|
|
1743
3593
|
role: {
|
|
1744
3594
|
type: 'string',
|
|
1745
|
-
description:
|
|
3595
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1746
3596
|
example: 'User',
|
|
1747
|
-
enum: [
|
|
3597
|
+
enum: [
|
|
3598
|
+
'Administrator',
|
|
3599
|
+
'User'
|
|
3600
|
+
]
|
|
1748
3601
|
},
|
|
1749
3602
|
status: {
|
|
1750
3603
|
type: 'string',
|
|
1751
3604
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1752
3605
|
example: 'active',
|
|
1753
|
-
enum: [
|
|
3606
|
+
enum: [
|
|
3607
|
+
'active',
|
|
3608
|
+
'inactive'
|
|
3609
|
+
]
|
|
1754
3610
|
}
|
|
1755
3611
|
},
|
|
1756
3612
|
additionalProperties: false
|