@cloudfleet/sdk 0.0.1-2bdeb58 → 0.0.1-2c7d5c2
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/README.md +26 -2
- package/dist/@tanstack/react-query.gen.d.ts +1199 -0
- package/dist/@tanstack/react-query.gen.d.ts.map +1 -0
- package/dist/@tanstack/react-query.gen.js +1215 -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 +217 -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/schemas.gen.d.ts +1639 -733
- package/dist/schemas.gen.d.ts.map +1 -1
- package/dist/schemas.gen.js +2978 -785
- package/dist/schemas.gen.js.map +1 -1
- package/dist/sdk.gen.d.ts +317 -176
- package/dist/sdk.gen.d.ts.map +1 -1
- package/dist/sdk.gen.js +450 -344
- package/dist/sdk.gen.js.map +1 -1
- package/dist/services/kubernetes/api.d.ts +20 -20
- package/dist/types.gen.d.ts +1935 -943
- package/dist/types.gen.d.ts.map +1 -1
- package/dist/zod.gen.d.ts +3947 -2328
- package/dist/zod.gen.d.ts.map +1 -1
- package/dist/zod.gen.js +1582 -850
- package/dist/zod.gen.js.map +1 -1
- package/package.json +28 -9
package/dist/schemas.gen.js
CHANGED
|
@@ -1,7 +1,65 @@
|
|
|
1
1
|
// This file is auto-generated by @hey-api/openapi-ts
|
|
2
|
+
export const BasicPriceConsentInputSchema = {
|
|
3
|
+
type: 'object',
|
|
4
|
+
properties: {
|
|
5
|
+
decision: {
|
|
6
|
+
type: 'string',
|
|
7
|
+
description: 'The administrator\'s decision on the new Basic price. `accepted` continues to paid billing when the signup credit runs out; `rejected` opts out (clusters are suspended, never charged). A `rejected` org can later be flipped back to `accepted`.',
|
|
8
|
+
example: 'accepted',
|
|
9
|
+
enum: [
|
|
10
|
+
'accepted',
|
|
11
|
+
'rejected'
|
|
12
|
+
]
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
required: [
|
|
16
|
+
'decision'
|
|
17
|
+
],
|
|
18
|
+
additionalProperties: false
|
|
19
|
+
};
|
|
20
|
+
export const BasicPriceConsentSchema = {
|
|
21
|
+
type: 'object',
|
|
22
|
+
properties: {
|
|
23
|
+
status: {
|
|
24
|
+
type: 'string',
|
|
25
|
+
description: 'Consent status for the new Basic price. `not_applicable` when the organization is not in scope for the migration. `pending` when the organization must opt in but no admin has decided yet. `accepted` / `rejected` reflect the recorded decision.',
|
|
26
|
+
example: 'pending',
|
|
27
|
+
enum: [
|
|
28
|
+
'not_applicable',
|
|
29
|
+
'pending',
|
|
30
|
+
'accepted',
|
|
31
|
+
'rejected'
|
|
32
|
+
]
|
|
33
|
+
},
|
|
34
|
+
decided_at: {
|
|
35
|
+
type: 'string',
|
|
36
|
+
format: 'date-time',
|
|
37
|
+
description: 'When the current decision was recorded. Absent while `not_applicable` or `pending`.',
|
|
38
|
+
example: '2026-09-05T10:12:00.000Z'
|
|
39
|
+
},
|
|
40
|
+
decided_by: {
|
|
41
|
+
type: 'string',
|
|
42
|
+
description: 'User id of the administrator who recorded the current decision. Absent while `not_applicable` or `pending`.',
|
|
43
|
+
example: '2b7a5c9e-1f4d-4a1b-9c3e-8d2f6a0b1c2d'
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
required: [
|
|
47
|
+
'status'
|
|
48
|
+
],
|
|
49
|
+
additionalProperties: false
|
|
50
|
+
};
|
|
2
51
|
export const BillingContactSchema = {
|
|
3
52
|
type: 'object',
|
|
4
53
|
properties: {
|
|
54
|
+
type: {
|
|
55
|
+
type: 'string',
|
|
56
|
+
description: 'Type of the organization. `business` for legal entities, `personal` for individuals.',
|
|
57
|
+
example: 'business',
|
|
58
|
+
enum: [
|
|
59
|
+
'business',
|
|
60
|
+
'personal'
|
|
61
|
+
]
|
|
62
|
+
},
|
|
5
63
|
company: {
|
|
6
64
|
type: 'string',
|
|
7
65
|
maxLength: 120,
|
|
@@ -58,15 +116,10 @@ export const BillingContactSchema = {
|
|
|
58
116
|
description: 'Email address used for billing as a string.',
|
|
59
117
|
example: 'email@example.com'
|
|
60
118
|
},
|
|
61
|
-
|
|
62
|
-
type: 'string',
|
|
63
|
-
description: 'First name of the billing contact person.',
|
|
64
|
-
example: 'John'
|
|
65
|
-
},
|
|
66
|
-
last_name: {
|
|
119
|
+
individual_name: {
|
|
67
120
|
type: 'string',
|
|
68
|
-
description: '
|
|
69
|
-
example: 'Doe'
|
|
121
|
+
description: 'Name of the billing contact person.',
|
|
122
|
+
example: 'John Doe'
|
|
70
123
|
},
|
|
71
124
|
tax_id: {
|
|
72
125
|
type: 'string',
|
|
@@ -76,12 +129,146 @@ export const BillingContactSchema = {
|
|
|
76
129
|
},
|
|
77
130
|
tax_id_type: {
|
|
78
131
|
type: 'string',
|
|
132
|
+
nullable: true,
|
|
79
133
|
description: 'Type of the tax ID.',
|
|
80
134
|
example: 'de_vat',
|
|
81
|
-
enum: [
|
|
135
|
+
enum: [
|
|
136
|
+
'ad_nrt',
|
|
137
|
+
'ae_trn',
|
|
138
|
+
'al_tin',
|
|
139
|
+
'am_tin',
|
|
140
|
+
'ao_tin',
|
|
141
|
+
'ar_cuit',
|
|
142
|
+
'at_vat',
|
|
143
|
+
'au_abn',
|
|
144
|
+
'au_arn',
|
|
145
|
+
'ba_tin',
|
|
146
|
+
'bb_tin',
|
|
147
|
+
'be_vat',
|
|
148
|
+
'bg_uic',
|
|
149
|
+
'bg_vat',
|
|
150
|
+
'bh_vat',
|
|
151
|
+
'bo_tin',
|
|
152
|
+
'br_cnpj',
|
|
153
|
+
'br_cpf',
|
|
154
|
+
'bs_tin',
|
|
155
|
+
'by_tin',
|
|
156
|
+
'ca_bn',
|
|
157
|
+
'ca_gst_hst',
|
|
158
|
+
'ca_pst_bc',
|
|
159
|
+
'ca_pst_mb',
|
|
160
|
+
'ca_pst_sk',
|
|
161
|
+
'ca_qst',
|
|
162
|
+
'cd_nif',
|
|
163
|
+
'ch_uid',
|
|
164
|
+
'ch_vat',
|
|
165
|
+
'cl_tin',
|
|
166
|
+
'cn_tin',
|
|
167
|
+
'co_nit',
|
|
168
|
+
'cr_tin',
|
|
169
|
+
'cy_vat',
|
|
170
|
+
'cz_vat',
|
|
171
|
+
'de_stn',
|
|
172
|
+
'de_vat',
|
|
173
|
+
'dk_vat',
|
|
174
|
+
'do_rcn',
|
|
175
|
+
'ec_ruc',
|
|
176
|
+
'ee_vat',
|
|
177
|
+
'eg_tin',
|
|
178
|
+
'es_cif',
|
|
179
|
+
'es_vat',
|
|
180
|
+
'eu_oss_vat',
|
|
181
|
+
'fi_vat',
|
|
182
|
+
'fr_vat',
|
|
183
|
+
'gb_vat',
|
|
184
|
+
'ge_vat',
|
|
185
|
+
'gn_nif',
|
|
186
|
+
'gr_vat',
|
|
187
|
+
'hk_br',
|
|
188
|
+
'hr_oib',
|
|
189
|
+
'hr_vat',
|
|
190
|
+
'hu_tin',
|
|
191
|
+
'hu_vat',
|
|
192
|
+
'id_npwp',
|
|
193
|
+
'ie_vat',
|
|
194
|
+
'il_vat',
|
|
195
|
+
'in_gst',
|
|
196
|
+
'is_vat',
|
|
197
|
+
'it_vat',
|
|
198
|
+
'jp_cn',
|
|
199
|
+
'jp_rn',
|
|
200
|
+
'jp_trn',
|
|
201
|
+
'ke_pin',
|
|
202
|
+
'kh_tin',
|
|
203
|
+
'kr_brn',
|
|
204
|
+
'kz_bin',
|
|
205
|
+
'li_uid',
|
|
206
|
+
'li_vat',
|
|
207
|
+
'lt_vat',
|
|
208
|
+
'lu_vat',
|
|
209
|
+
'lv_vat',
|
|
210
|
+
'ma_vat',
|
|
211
|
+
'md_vat',
|
|
212
|
+
'me_pib',
|
|
213
|
+
'mk_vat',
|
|
214
|
+
'mr_nif',
|
|
215
|
+
'mt_vat',
|
|
216
|
+
'mx_rfc',
|
|
217
|
+
'my_frp',
|
|
218
|
+
'my_itn',
|
|
219
|
+
'my_sst',
|
|
220
|
+
'ng_tin',
|
|
221
|
+
'nl_vat',
|
|
222
|
+
'no_vat',
|
|
223
|
+
'no_voec',
|
|
224
|
+
'np_pan',
|
|
225
|
+
'nz_gst',
|
|
226
|
+
'om_vat',
|
|
227
|
+
'pe_ruc',
|
|
228
|
+
'ph_tin',
|
|
229
|
+
'pl_vat',
|
|
230
|
+
'pt_vat',
|
|
231
|
+
'ro_tin',
|
|
232
|
+
'ro_vat',
|
|
233
|
+
'rs_pib',
|
|
234
|
+
'ru_inn',
|
|
235
|
+
'ru_kpp',
|
|
236
|
+
'sa_vat',
|
|
237
|
+
'se_vat',
|
|
238
|
+
'sg_gst',
|
|
239
|
+
'sg_uen',
|
|
240
|
+
'si_tin',
|
|
241
|
+
'si_vat',
|
|
242
|
+
'sk_vat',
|
|
243
|
+
'sn_ninea',
|
|
244
|
+
'sr_fin',
|
|
245
|
+
'sv_nit',
|
|
246
|
+
'th_vat',
|
|
247
|
+
'tj_tin',
|
|
248
|
+
'tr_tin',
|
|
249
|
+
'tw_vat',
|
|
250
|
+
'tz_vat',
|
|
251
|
+
'ua_vat',
|
|
252
|
+
'ug_tin',
|
|
253
|
+
'us_ein',
|
|
254
|
+
'uy_ruc',
|
|
255
|
+
'uz_tin',
|
|
256
|
+
'uz_vat',
|
|
257
|
+
've_rif',
|
|
258
|
+
'vn_tin',
|
|
259
|
+
'xi_vat',
|
|
260
|
+
'za_vat',
|
|
261
|
+
'zm_tin',
|
|
262
|
+
'zw_tin',
|
|
263
|
+
''
|
|
264
|
+
]
|
|
82
265
|
}
|
|
83
266
|
},
|
|
84
|
-
required: [
|
|
267
|
+
required: [
|
|
268
|
+
'type',
|
|
269
|
+
'email',
|
|
270
|
+
'individual_name'
|
|
271
|
+
],
|
|
85
272
|
additionalProperties: false
|
|
86
273
|
};
|
|
87
274
|
export const BillingCreditsSchema = {
|
|
@@ -92,10 +279,25 @@ export const BillingCreditsSchema = {
|
|
|
92
279
|
description: 'Generated unique identifier of the promotional code.',
|
|
93
280
|
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
94
281
|
},
|
|
95
|
-
|
|
282
|
+
type: {
|
|
283
|
+
type: 'string',
|
|
284
|
+
description: 'Type of the promotional code.',
|
|
285
|
+
example: 'credit',
|
|
286
|
+
enum: [
|
|
287
|
+
'credit',
|
|
288
|
+
'discount'
|
|
289
|
+
]
|
|
290
|
+
},
|
|
291
|
+
date_start: {
|
|
292
|
+
type: 'string',
|
|
293
|
+
format: 'date-time',
|
|
294
|
+
description: 'Timestamp when the credit becomes active. ISO 8601 date string in the UTC timezone.',
|
|
295
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
296
|
+
},
|
|
297
|
+
date_end: {
|
|
96
298
|
type: 'string',
|
|
97
299
|
format: 'date-time',
|
|
98
|
-
description: '
|
|
300
|
+
description: 'Timestamp when the credit expires or becomes inactive. ISO 8601 date string in the UTC timezone.',
|
|
99
301
|
example: '2023-12-20T13:53:32.000Z'
|
|
100
302
|
},
|
|
101
303
|
code: {
|
|
@@ -108,40 +310,25 @@ export const BillingCreditsSchema = {
|
|
|
108
310
|
description: 'Description of the promotional code.',
|
|
109
311
|
example: '10% off on all products'
|
|
110
312
|
},
|
|
111
|
-
|
|
112
|
-
type: 'array',
|
|
113
|
-
items: {
|
|
114
|
-
type: 'string'
|
|
115
|
-
},
|
|
116
|
-
description: 'List of product SKUs that the promotional code can be used on.',
|
|
117
|
-
example: ['SKU123', 'SKU456']
|
|
118
|
-
},
|
|
119
|
-
type: {
|
|
120
|
-
type: 'string',
|
|
121
|
-
description: 'Type of the promotional code.',
|
|
122
|
-
example: 'credit',
|
|
123
|
-
enum: ['credit', 'discount']
|
|
124
|
-
},
|
|
125
|
-
value: {
|
|
313
|
+
value_total: {
|
|
126
314
|
type: 'number',
|
|
127
315
|
format: 'float',
|
|
128
|
-
description: '
|
|
316
|
+
description: 'Total value of the promotional code.',
|
|
129
317
|
example: 10
|
|
130
318
|
},
|
|
131
|
-
billing_period: {
|
|
132
|
-
type: 'string',
|
|
133
|
-
format: 'date-time',
|
|
134
|
-
description: 'Date of the billing cycle. An ISO 8601 date string in the UTC timezone.',
|
|
135
|
-
example: '2023-12-20T13:53:32.000Z'
|
|
136
|
-
},
|
|
137
319
|
value_remaining: {
|
|
138
320
|
type: 'number',
|
|
139
321
|
format: 'float',
|
|
140
|
-
description: '
|
|
141
|
-
example:
|
|
322
|
+
description: 'Remaining value of the promotional code.',
|
|
323
|
+
example: 8
|
|
142
324
|
}
|
|
143
325
|
},
|
|
144
|
-
required: [
|
|
326
|
+
required: [
|
|
327
|
+
'type',
|
|
328
|
+
'date_start',
|
|
329
|
+
'code',
|
|
330
|
+
'value_total'
|
|
331
|
+
],
|
|
145
332
|
additionalProperties: false
|
|
146
333
|
};
|
|
147
334
|
export const ChartCreateInputSchema = {
|
|
@@ -149,12 +336,12 @@ export const ChartCreateInputSchema = {
|
|
|
149
336
|
properties: {
|
|
150
337
|
values: {
|
|
151
338
|
type: 'string',
|
|
152
|
-
description: 'Values to be used in the chart.'
|
|
339
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
153
340
|
},
|
|
154
341
|
version_channel: {
|
|
155
342
|
type: 'string',
|
|
156
343
|
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-]+)*))?$',
|
|
157
|
-
description: '
|
|
344
|
+
description: 'Desired version range or channel for the chart.',
|
|
158
345
|
example: '2.x.x-cfke.x'
|
|
159
346
|
},
|
|
160
347
|
name: {
|
|
@@ -182,7 +369,13 @@ export const ChartCreateInputSchema = {
|
|
|
182
369
|
example: 'postgresql'
|
|
183
370
|
}
|
|
184
371
|
},
|
|
185
|
-
required: [
|
|
372
|
+
required: [
|
|
373
|
+
'values',
|
|
374
|
+
'version_channel',
|
|
375
|
+
'name',
|
|
376
|
+
'namespace',
|
|
377
|
+
'chart'
|
|
378
|
+
],
|
|
186
379
|
additionalProperties: false
|
|
187
380
|
};
|
|
188
381
|
export const ChartSchema = {
|
|
@@ -190,12 +383,12 @@ export const ChartSchema = {
|
|
|
190
383
|
properties: {
|
|
191
384
|
values: {
|
|
192
385
|
type: 'string',
|
|
193
|
-
description: 'Values to be used in the chart.'
|
|
386
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
194
387
|
},
|
|
195
388
|
version_channel: {
|
|
196
389
|
type: 'string',
|
|
197
390
|
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-]+)*))?$',
|
|
198
|
-
description: '
|
|
391
|
+
description: 'Desired version range or channel for the chart.',
|
|
199
392
|
example: '2.x.x-cfke.x'
|
|
200
393
|
},
|
|
201
394
|
name: {
|
|
@@ -224,9 +417,8 @@ export const ChartSchema = {
|
|
|
224
417
|
},
|
|
225
418
|
status: {
|
|
226
419
|
type: 'string',
|
|
227
|
-
description: 'Status of the chart deployment.',
|
|
228
|
-
example: '
|
|
229
|
-
enum: ['InstallSucceeded', 'InstallFailed', 'UpgradeSucceeded', 'UpgradeFailed', 'TestSucceeded', 'TestFailed', 'RollbackSucceeded', 'RollbackFailed', 'UninstallSucceeded', 'UninstallFailed', 'ArtifactFailed', 'DependencyNotReady', 'Progressing']
|
|
420
|
+
description: 'Status of the chart deployment (Flux HelmRelease Ready condition reason, e.g. InstallSucceeded, UpgradeFailed, Progressing).',
|
|
421
|
+
example: 'InstallSucceeded'
|
|
230
422
|
},
|
|
231
423
|
version_current: {
|
|
232
424
|
type: 'string',
|
|
@@ -249,7 +441,18 @@ export const ChartSchema = {
|
|
|
249
441
|
example: true
|
|
250
442
|
}
|
|
251
443
|
},
|
|
252
|
-
required: [
|
|
444
|
+
required: [
|
|
445
|
+
'values',
|
|
446
|
+
'version_channel',
|
|
447
|
+
'name',
|
|
448
|
+
'namespace',
|
|
449
|
+
'chart',
|
|
450
|
+
'status',
|
|
451
|
+
'version_current',
|
|
452
|
+
'created_at',
|
|
453
|
+
'updated_at',
|
|
454
|
+
'ready'
|
|
455
|
+
],
|
|
253
456
|
additionalProperties: false
|
|
254
457
|
};
|
|
255
458
|
export const ChartUpdateInputSchema = {
|
|
@@ -257,16 +460,19 @@ export const ChartUpdateInputSchema = {
|
|
|
257
460
|
properties: {
|
|
258
461
|
values: {
|
|
259
462
|
type: 'string',
|
|
260
|
-
description: 'Values to be used in the chart.'
|
|
463
|
+
description: 'Values to be used in the chart encoded as a JSON string.'
|
|
261
464
|
},
|
|
262
465
|
version_channel: {
|
|
263
466
|
type: 'string',
|
|
264
467
|
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-]+)*))?$',
|
|
265
|
-
description: '
|
|
468
|
+
description: 'Desired version range or channel for the chart.',
|
|
266
469
|
example: '2.x.x-cfke.x'
|
|
267
470
|
}
|
|
268
471
|
},
|
|
269
|
-
required: [
|
|
472
|
+
required: [
|
|
473
|
+
'values',
|
|
474
|
+
'version_channel'
|
|
475
|
+
],
|
|
270
476
|
additionalProperties: false
|
|
271
477
|
};
|
|
272
478
|
export const ClusterCreateInputSchema = {
|
|
@@ -280,29 +486,121 @@ export const ClusterCreateInputSchema = {
|
|
|
280
486
|
description: 'Name of the cluster.',
|
|
281
487
|
example: 'production-cluster'
|
|
282
488
|
},
|
|
283
|
-
region: {
|
|
284
|
-
type: 'string',
|
|
285
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
|
|
286
|
-
default: 'staging',
|
|
287
|
-
example: 'northamerica-central-1',
|
|
288
|
-
enum: ['staging', 'northamerica-central-1']
|
|
289
|
-
},
|
|
290
489
|
tier: {
|
|
291
490
|
type: 'string',
|
|
292
491
|
description: 'Tier of the cluster.',
|
|
492
|
+
default: 'basic',
|
|
293
493
|
example: 'pro',
|
|
294
|
-
enum: [
|
|
494
|
+
enum: [
|
|
495
|
+
'basic',
|
|
496
|
+
'pro',
|
|
497
|
+
'enterprise'
|
|
498
|
+
]
|
|
295
499
|
},
|
|
296
500
|
version_channel: {
|
|
297
501
|
type: 'string',
|
|
298
502
|
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-]+)*))?$',
|
|
299
503
|
description: 'Version of the kubernetes cluster.',
|
|
300
504
|
default: '1.x.x-cfke.x',
|
|
301
|
-
example: '1.
|
|
505
|
+
example: '1.x.x-cfke.x'
|
|
506
|
+
},
|
|
507
|
+
release_channel: {
|
|
508
|
+
type: 'string',
|
|
509
|
+
description: 'Release channel for the cluster\'s control plane.',
|
|
510
|
+
default: 'rapid',
|
|
511
|
+
example: 'rapid',
|
|
512
|
+
enum: [
|
|
513
|
+
'rapid',
|
|
514
|
+
'stable',
|
|
515
|
+
'extended'
|
|
516
|
+
]
|
|
517
|
+
},
|
|
518
|
+
features: {
|
|
519
|
+
type: 'object',
|
|
520
|
+
properties: {
|
|
521
|
+
gpu_sharing_strategy: {
|
|
522
|
+
type: 'string',
|
|
523
|
+
description: 'GPU sharing strategy.',
|
|
524
|
+
default: 'none',
|
|
525
|
+
example: 'none',
|
|
526
|
+
enum: [
|
|
527
|
+
'none',
|
|
528
|
+
'mps',
|
|
529
|
+
'time_slicing'
|
|
530
|
+
]
|
|
531
|
+
},
|
|
532
|
+
gpu_max_shared_clients_per_gpu: {
|
|
533
|
+
type: 'integer',
|
|
534
|
+
minimum: 2,
|
|
535
|
+
maximum: 48,
|
|
536
|
+
description: 'Maximum number of pods that may share a single GPU.',
|
|
537
|
+
default: 4,
|
|
538
|
+
example: 10
|
|
539
|
+
},
|
|
540
|
+
cilium_socket_lb_host_namespace_only: {
|
|
541
|
+
type: 'boolean',
|
|
542
|
+
description: 'Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.',
|
|
543
|
+
example: false
|
|
544
|
+
}
|
|
545
|
+
},
|
|
546
|
+
additionalProperties: false,
|
|
547
|
+
description: 'Cluster feature toggles.',
|
|
548
|
+
default: {
|
|
549
|
+
gpu_sharing_strategy: 'none',
|
|
550
|
+
gpu_max_shared_clients_per_gpu: 4,
|
|
551
|
+
cilium_socket_lb_host_namespace_only: false
|
|
552
|
+
}
|
|
553
|
+
},
|
|
554
|
+
region: {
|
|
555
|
+
type: 'string',
|
|
556
|
+
description: 'Cloudfleet control plane region. This field can not be updated after creation.',
|
|
557
|
+
example: 'europe-central-1a'
|
|
558
|
+
},
|
|
559
|
+
networking: {
|
|
560
|
+
type: 'object',
|
|
561
|
+
properties: {
|
|
562
|
+
pod_cidr: {
|
|
563
|
+
type: 'string',
|
|
564
|
+
description: 'CIDR block for pod IPs.',
|
|
565
|
+
default: '10.244.0.0/16'
|
|
566
|
+
},
|
|
567
|
+
service_cidr: {
|
|
568
|
+
type: 'string',
|
|
569
|
+
description: 'CIDR block for service IPs.',
|
|
570
|
+
default: '10.96.0.0/12'
|
|
571
|
+
},
|
|
572
|
+
dual_stack: {
|
|
573
|
+
type: 'boolean',
|
|
574
|
+
description: 'Enable IPv4+IPv6 dual-stack networking.'
|
|
575
|
+
},
|
|
576
|
+
pod_cidr_v6: {
|
|
577
|
+
type: 'string',
|
|
578
|
+
description: 'IPv6 pod CIDR. Requires dual_stack.',
|
|
579
|
+
default: '2001:db8:1:2::/48'
|
|
580
|
+
},
|
|
581
|
+
service_cidr_v6: {
|
|
582
|
+
type: 'string',
|
|
583
|
+
description: 'IPv6 service CIDR. Requires dual_stack.',
|
|
584
|
+
default: '2001:db8:1:1::/112'
|
|
585
|
+
}
|
|
586
|
+
},
|
|
587
|
+
additionalProperties: false,
|
|
588
|
+
description: 'Cluster networking configuration. Immutable after creation.',
|
|
589
|
+
default: {
|
|
590
|
+
pod_cidr: '10.244.0.0/16',
|
|
591
|
+
service_cidr: '10.96.0.0/12',
|
|
592
|
+
dual_stack: false,
|
|
593
|
+
pod_cidr_v6: '2001:db8:1:2::/48',
|
|
594
|
+
service_cidr_v6: '2001:db8:1:1::/112'
|
|
595
|
+
}
|
|
302
596
|
}
|
|
303
597
|
},
|
|
304
|
-
required: [
|
|
305
|
-
|
|
598
|
+
required: [
|
|
599
|
+
'name',
|
|
600
|
+
'region'
|
|
601
|
+
],
|
|
602
|
+
additionalProperties: false,
|
|
603
|
+
description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
306
604
|
};
|
|
307
605
|
export const ClusterJoinInformationSchema = {
|
|
308
606
|
type: 'object',
|
|
@@ -310,8 +608,7 @@ export const ClusterJoinInformationSchema = {
|
|
|
310
608
|
certificate_authority: {
|
|
311
609
|
type: 'string',
|
|
312
610
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
313
|
-
example:
|
|
314
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
611
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
315
612
|
},
|
|
316
613
|
endpoint: {
|
|
317
614
|
type: 'string',
|
|
@@ -319,11 +616,26 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
319
616
|
description: 'Internal URL of the Kubernetes cluster control plane. This is the endpoint that kubelet uses to connect to the cluster.',
|
|
320
617
|
example: 'https://10.31.64.7:6443'
|
|
321
618
|
},
|
|
619
|
+
cluster_dns: {
|
|
620
|
+
type: 'string',
|
|
621
|
+
description: 'Cluster DNS IP address. This is the IP address of the kube-dns service in the cluster.',
|
|
622
|
+
example: '10.96.0.10'
|
|
623
|
+
},
|
|
624
|
+
pod_cidr: {
|
|
625
|
+
type: 'string',
|
|
626
|
+
description: 'Pod CIDR for the cluster. Used to configure iptables rules on nodes to prevent Tailscale routing loops.',
|
|
627
|
+
example: '10.244.0.0/16'
|
|
628
|
+
},
|
|
322
629
|
auth_key: {
|
|
323
630
|
type: 'string',
|
|
324
631
|
description: 'Authentication key for the cluster.',
|
|
325
632
|
example: 'tskey-auth-kBV8wr1dk911CNTRL-...'
|
|
326
633
|
},
|
|
634
|
+
login_server: {
|
|
635
|
+
type: 'string',
|
|
636
|
+
description: 'Coordination server the node registers against. Empty on data plane v1 clusters, where the node advertises its own tag instead. A non-empty value requires a client that declares the dataplane-v2 capability.',
|
|
637
|
+
example: 'https://415026b6-f00f-44f8-968d-fc6ef4d0fc6d.fabric.europe-central-1a.cfke.io'
|
|
638
|
+
},
|
|
327
639
|
bootstrap_token: {
|
|
328
640
|
type: 'string',
|
|
329
641
|
description: 'Bootstrap token for the cluster.',
|
|
@@ -335,7 +647,7 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
335
647
|
kubernetes: {
|
|
336
648
|
type: 'string',
|
|
337
649
|
description: 'Kubernetes version of the cluster.',
|
|
338
|
-
example: '1.
|
|
650
|
+
example: '1.33.7'
|
|
339
651
|
},
|
|
340
652
|
tailscale: {
|
|
341
653
|
type: 'string',
|
|
@@ -346,9 +658,19 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
346
658
|
type: 'string',
|
|
347
659
|
description: 'Containerd version of the cluster.',
|
|
348
660
|
example: '1.7.19'
|
|
661
|
+
},
|
|
662
|
+
nvidia_driver: {
|
|
663
|
+
type: 'string',
|
|
664
|
+
description: 'NVIDIA driver version of the cluster.',
|
|
665
|
+
example: '565.0.0'
|
|
349
666
|
}
|
|
350
667
|
},
|
|
351
|
-
required: [
|
|
668
|
+
required: [
|
|
669
|
+
'kubernetes',
|
|
670
|
+
'tailscale',
|
|
671
|
+
'containerd',
|
|
672
|
+
'nvidia_driver'
|
|
673
|
+
],
|
|
352
674
|
additionalProperties: false,
|
|
353
675
|
description: 'Versions of the different components of the cluster.'
|
|
354
676
|
},
|
|
@@ -371,12 +693,26 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
371
693
|
example: '//iam.googleapis.com/projects/89014267864/locations/global/workloadIdentityPools/cfke/providers/oidc'
|
|
372
694
|
}
|
|
373
695
|
},
|
|
374
|
-
required: [
|
|
696
|
+
required: [
|
|
697
|
+
'metadata_url',
|
|
698
|
+
'aws_role_arn',
|
|
699
|
+
'gcp_workload_identity_provider'
|
|
700
|
+
],
|
|
375
701
|
additionalProperties: false,
|
|
376
|
-
description:
|
|
702
|
+
description: 'OIDC Information for hosts to access to third party API\'s.'
|
|
377
703
|
}
|
|
378
704
|
},
|
|
379
|
-
required: [
|
|
705
|
+
required: [
|
|
706
|
+
'certificate_authority',
|
|
707
|
+
'endpoint',
|
|
708
|
+
'cluster_dns',
|
|
709
|
+
'pod_cidr',
|
|
710
|
+
'auth_key',
|
|
711
|
+
'login_server',
|
|
712
|
+
'bootstrap_token',
|
|
713
|
+
'versions',
|
|
714
|
+
'third_party_api_access_config'
|
|
715
|
+
],
|
|
380
716
|
additionalProperties: false
|
|
381
717
|
};
|
|
382
718
|
export const ClusterSchema = {
|
|
@@ -390,25 +726,125 @@ export const ClusterSchema = {
|
|
|
390
726
|
description: 'Name of the cluster.',
|
|
391
727
|
example: 'production-cluster'
|
|
392
728
|
},
|
|
393
|
-
region: {
|
|
394
|
-
type: 'string',
|
|
395
|
-
description: 'Cloudfleet control plane region. One of "staging", "northamerica-central-1". This field can not be updated after creation.',
|
|
396
|
-
default: 'staging',
|
|
397
|
-
example: 'northamerica-central-1',
|
|
398
|
-
enum: ['staging', 'northamerica-central-1']
|
|
399
|
-
},
|
|
400
729
|
tier: {
|
|
401
730
|
type: 'string',
|
|
402
731
|
description: 'Tier of the cluster.',
|
|
732
|
+
default: 'basic',
|
|
403
733
|
example: 'pro',
|
|
404
|
-
enum: [
|
|
734
|
+
enum: [
|
|
735
|
+
'basic',
|
|
736
|
+
'pro',
|
|
737
|
+
'enterprise'
|
|
738
|
+
]
|
|
405
739
|
},
|
|
406
740
|
version_channel: {
|
|
407
741
|
type: 'string',
|
|
408
742
|
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-]+)*))?$',
|
|
409
743
|
description: 'Version of the kubernetes cluster.',
|
|
410
744
|
default: '1.x.x-cfke.x',
|
|
411
|
-
example: '1.
|
|
745
|
+
example: '1.x.x-cfke.x'
|
|
746
|
+
},
|
|
747
|
+
release_channel: {
|
|
748
|
+
type: 'string',
|
|
749
|
+
description: 'Release channel for the cluster\'s control plane.',
|
|
750
|
+
default: 'rapid',
|
|
751
|
+
example: 'rapid',
|
|
752
|
+
enum: [
|
|
753
|
+
'rapid',
|
|
754
|
+
'stable',
|
|
755
|
+
'extended'
|
|
756
|
+
]
|
|
757
|
+
},
|
|
758
|
+
features: {
|
|
759
|
+
type: 'object',
|
|
760
|
+
properties: {
|
|
761
|
+
gpu_sharing_strategy: {
|
|
762
|
+
type: 'string',
|
|
763
|
+
description: 'GPU sharing strategy.',
|
|
764
|
+
default: 'none',
|
|
765
|
+
example: 'none',
|
|
766
|
+
enum: [
|
|
767
|
+
'none',
|
|
768
|
+
'mps',
|
|
769
|
+
'time_slicing'
|
|
770
|
+
]
|
|
771
|
+
},
|
|
772
|
+
gpu_max_shared_clients_per_gpu: {
|
|
773
|
+
type: 'integer',
|
|
774
|
+
minimum: 2,
|
|
775
|
+
maximum: 48,
|
|
776
|
+
description: 'Maximum number of pods that may share a single GPU.',
|
|
777
|
+
default: 4,
|
|
778
|
+
example: 10
|
|
779
|
+
},
|
|
780
|
+
cilium_socket_lb_host_namespace_only: {
|
|
781
|
+
type: 'boolean',
|
|
782
|
+
description: 'Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.',
|
|
783
|
+
example: false
|
|
784
|
+
}
|
|
785
|
+
},
|
|
786
|
+
required: [
|
|
787
|
+
'gpu_sharing_strategy',
|
|
788
|
+
'gpu_max_shared_clients_per_gpu',
|
|
789
|
+
'cilium_socket_lb_host_namespace_only'
|
|
790
|
+
],
|
|
791
|
+
additionalProperties: false,
|
|
792
|
+
description: 'Cluster feature toggles.',
|
|
793
|
+
default: {
|
|
794
|
+
gpu_sharing_strategy: 'none',
|
|
795
|
+
gpu_max_shared_clients_per_gpu: 4,
|
|
796
|
+
cilium_socket_lb_host_namespace_only: false
|
|
797
|
+
}
|
|
798
|
+
},
|
|
799
|
+
region: {
|
|
800
|
+
type: 'string',
|
|
801
|
+
description: 'Cloudfleet control plane region. This field can not be updated after creation.',
|
|
802
|
+
example: 'europe-central-1a'
|
|
803
|
+
},
|
|
804
|
+
networking: {
|
|
805
|
+
type: 'object',
|
|
806
|
+
properties: {
|
|
807
|
+
pod_cidr: {
|
|
808
|
+
type: 'string',
|
|
809
|
+
description: 'CIDR block for pod IPs.',
|
|
810
|
+
default: '10.244.0.0/16'
|
|
811
|
+
},
|
|
812
|
+
service_cidr: {
|
|
813
|
+
type: 'string',
|
|
814
|
+
description: 'CIDR block for service IPs.',
|
|
815
|
+
default: '10.96.0.0/12'
|
|
816
|
+
},
|
|
817
|
+
dual_stack: {
|
|
818
|
+
type: 'boolean',
|
|
819
|
+
description: 'Enable IPv4+IPv6 dual-stack networking.'
|
|
820
|
+
},
|
|
821
|
+
pod_cidr_v6: {
|
|
822
|
+
type: 'string',
|
|
823
|
+
description: 'IPv6 pod CIDR. Requires dual_stack.',
|
|
824
|
+
default: '2001:db8:1:2::/48'
|
|
825
|
+
},
|
|
826
|
+
service_cidr_v6: {
|
|
827
|
+
type: 'string',
|
|
828
|
+
description: 'IPv6 service CIDR. Requires dual_stack.',
|
|
829
|
+
default: '2001:db8:1:1::/112'
|
|
830
|
+
}
|
|
831
|
+
},
|
|
832
|
+
required: [
|
|
833
|
+
'pod_cidr',
|
|
834
|
+
'service_cidr',
|
|
835
|
+
'dual_stack',
|
|
836
|
+
'pod_cidr_v6',
|
|
837
|
+
'service_cidr_v6'
|
|
838
|
+
],
|
|
839
|
+
additionalProperties: false,
|
|
840
|
+
description: 'Cluster networking configuration. Immutable after creation.',
|
|
841
|
+
default: {
|
|
842
|
+
pod_cidr: '10.244.0.0/16',
|
|
843
|
+
service_cidr: '10.96.0.0/12',
|
|
844
|
+
dual_stack: false,
|
|
845
|
+
pod_cidr_v6: '2001:db8:1:2::/48',
|
|
846
|
+
service_cidr_v6: '2001:db8:1:1::/112'
|
|
847
|
+
}
|
|
412
848
|
},
|
|
413
849
|
id: {
|
|
414
850
|
type: 'string',
|
|
@@ -418,34 +854,56 @@ export const ClusterSchema = {
|
|
|
418
854
|
},
|
|
419
855
|
status: {
|
|
420
856
|
type: 'string',
|
|
421
|
-
description: 'Status of the cluster.
|
|
422
|
-
example: '
|
|
423
|
-
enum: [
|
|
857
|
+
description: 'Status of the cluster.',
|
|
858
|
+
example: 'deployed',
|
|
859
|
+
enum: [
|
|
860
|
+
'creating',
|
|
861
|
+
'deployed',
|
|
862
|
+
'updating',
|
|
863
|
+
'disabled'
|
|
864
|
+
]
|
|
424
865
|
},
|
|
425
866
|
endpoint: {
|
|
426
867
|
anyOf: [
|
|
427
868
|
{
|
|
428
869
|
type: 'string',
|
|
429
870
|
format: 'uri',
|
|
430
|
-
description: 'URL of the Kubernetes cluster control plane. This is the endpoint that kubectl uses to connect to the cluster.',
|
|
431
|
-
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.
|
|
871
|
+
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.',
|
|
872
|
+
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.io'
|
|
873
|
+
},
|
|
874
|
+
{
|
|
875
|
+
type: 'string',
|
|
876
|
+
enum: [
|
|
877
|
+
''
|
|
878
|
+
]
|
|
879
|
+
}
|
|
880
|
+
]
|
|
881
|
+
},
|
|
882
|
+
endpoint_public: {
|
|
883
|
+
anyOf: [
|
|
884
|
+
{
|
|
885
|
+
type: 'string',
|
|
886
|
+
format: 'uri',
|
|
887
|
+
description: 'Deprecated alias of `endpoint`; retained for backward compatibility.',
|
|
888
|
+
example: 'https://2ae6557c-c61f-49c6-b4c1-a65473470a03.staging.cfke.io'
|
|
432
889
|
},
|
|
433
890
|
{
|
|
434
891
|
type: 'string',
|
|
435
|
-
enum: [
|
|
892
|
+
enum: [
|
|
893
|
+
''
|
|
894
|
+
]
|
|
436
895
|
}
|
|
437
896
|
]
|
|
438
897
|
},
|
|
439
898
|
certificate_ca: {
|
|
440
899
|
type: 'string',
|
|
441
900
|
description: 'Certificate authority data for the kubernetes cluster. This is the root certificate authority for the cluster.',
|
|
442
|
-
example:
|
|
443
|
-
MIIC0DCCAbigAwIBAgI...`
|
|
901
|
+
example: '-----BEGIN CERTIFICATE-----\nMIIC0DCCAbigAwIBAgI...'
|
|
444
902
|
},
|
|
445
903
|
version_current: {
|
|
446
904
|
type: 'string',
|
|
447
905
|
description: 'Current version of the cluster.',
|
|
448
|
-
example: '1.
|
|
906
|
+
example: '1.33.7-cfke.264'
|
|
449
907
|
},
|
|
450
908
|
created_at: {
|
|
451
909
|
type: 'string',
|
|
@@ -463,8 +921,20 @@ MIIC0DCCAbigAwIBAgI...`
|
|
|
463
921
|
example: true
|
|
464
922
|
}
|
|
465
923
|
},
|
|
466
|
-
required: [
|
|
467
|
-
|
|
924
|
+
required: [
|
|
925
|
+
'name',
|
|
926
|
+
'tier',
|
|
927
|
+
'version_channel',
|
|
928
|
+
'release_channel',
|
|
929
|
+
'features',
|
|
930
|
+
'region',
|
|
931
|
+
'networking',
|
|
932
|
+
'id',
|
|
933
|
+
'status',
|
|
934
|
+
'ready'
|
|
935
|
+
],
|
|
936
|
+
additionalProperties: false,
|
|
937
|
+
description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
468
938
|
};
|
|
469
939
|
export const ClusterUpdateInputSchema = {
|
|
470
940
|
type: 'object',
|
|
@@ -477,14 +947,77 @@ export const ClusterUpdateInputSchema = {
|
|
|
477
947
|
description: 'Name of the cluster.',
|
|
478
948
|
example: 'production-cluster'
|
|
479
949
|
},
|
|
950
|
+
tier: {
|
|
951
|
+
type: 'string',
|
|
952
|
+
description: 'Tier of the cluster.',
|
|
953
|
+
default: 'basic',
|
|
954
|
+
example: 'pro',
|
|
955
|
+
enum: [
|
|
956
|
+
'basic',
|
|
957
|
+
'pro',
|
|
958
|
+
'enterprise'
|
|
959
|
+
]
|
|
960
|
+
},
|
|
480
961
|
version_channel: {
|
|
481
962
|
type: 'string',
|
|
482
963
|
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-]+)*))?$',
|
|
483
964
|
description: 'Version of the kubernetes cluster.',
|
|
484
|
-
|
|
965
|
+
default: '1.x.x-cfke.x',
|
|
966
|
+
example: '1.x.x-cfke.x'
|
|
967
|
+
},
|
|
968
|
+
release_channel: {
|
|
969
|
+
type: 'string',
|
|
970
|
+
description: 'Release channel for the cluster\'s control plane.',
|
|
971
|
+
default: 'rapid',
|
|
972
|
+
example: 'rapid',
|
|
973
|
+
enum: [
|
|
974
|
+
'rapid',
|
|
975
|
+
'stable',
|
|
976
|
+
'extended'
|
|
977
|
+
]
|
|
978
|
+
},
|
|
979
|
+
features: {
|
|
980
|
+
type: 'object',
|
|
981
|
+
properties: {
|
|
982
|
+
gpu_sharing_strategy: {
|
|
983
|
+
type: 'string',
|
|
984
|
+
description: 'GPU sharing strategy.',
|
|
985
|
+
default: 'none',
|
|
986
|
+
example: 'none',
|
|
987
|
+
enum: [
|
|
988
|
+
'none',
|
|
989
|
+
'mps',
|
|
990
|
+
'time_slicing'
|
|
991
|
+
]
|
|
992
|
+
},
|
|
993
|
+
gpu_max_shared_clients_per_gpu: {
|
|
994
|
+
type: 'integer',
|
|
995
|
+
minimum: 2,
|
|
996
|
+
maximum: 48,
|
|
997
|
+
description: 'Maximum number of pods that may share a single GPU.',
|
|
998
|
+
default: 4,
|
|
999
|
+
example: 10
|
|
1000
|
+
},
|
|
1001
|
+
cilium_socket_lb_host_namespace_only: {
|
|
1002
|
+
type: 'boolean',
|
|
1003
|
+
description: 'Restrict Cilium socket load-balancing to the host namespace. Required for the Tailscale operator and Istio.',
|
|
1004
|
+
example: false
|
|
1005
|
+
}
|
|
1006
|
+
},
|
|
1007
|
+
additionalProperties: false,
|
|
1008
|
+
description: 'Cluster feature toggles.',
|
|
1009
|
+
default: {
|
|
1010
|
+
gpu_sharing_strategy: 'none',
|
|
1011
|
+
gpu_max_shared_clients_per_gpu: 4,
|
|
1012
|
+
cilium_socket_lb_host_namespace_only: false
|
|
1013
|
+
}
|
|
485
1014
|
}
|
|
486
1015
|
},
|
|
487
|
-
|
|
1016
|
+
required: [
|
|
1017
|
+
'name'
|
|
1018
|
+
],
|
|
1019
|
+
additionalProperties: false,
|
|
1020
|
+
description: 'Mutable cluster configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
488
1021
|
};
|
|
489
1022
|
export const FleetCreateInputSchema = {
|
|
490
1023
|
type: 'object',
|
|
@@ -493,13 +1026,12 @@ export const FleetCreateInputSchema = {
|
|
|
493
1026
|
type: 'object',
|
|
494
1027
|
properties: {
|
|
495
1028
|
cpu: {
|
|
496
|
-
type: '
|
|
497
|
-
format: 'float',
|
|
1029
|
+
type: 'integer',
|
|
498
1030
|
minimum: 0,
|
|
499
|
-
|
|
1031
|
+
maximum: 100000,
|
|
1032
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
500
1033
|
}
|
|
501
1034
|
},
|
|
502
|
-
required: ['cpu'],
|
|
503
1035
|
additionalProperties: false,
|
|
504
1036
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
505
1037
|
},
|
|
@@ -507,62 +1039,358 @@ export const FleetCreateInputSchema = {
|
|
|
507
1039
|
type: 'object',
|
|
508
1040
|
properties: {
|
|
509
1041
|
enabled: {
|
|
510
|
-
type: 'boolean'
|
|
511
|
-
default: true
|
|
1042
|
+
type: 'boolean'
|
|
512
1043
|
},
|
|
513
1044
|
project: {
|
|
514
1045
|
type: 'string',
|
|
515
|
-
|
|
1046
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1047
|
+
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.',
|
|
1048
|
+
example: 'my-cloudfleet-project'
|
|
516
1049
|
}
|
|
517
1050
|
},
|
|
518
|
-
required: [
|
|
1051
|
+
required: [
|
|
1052
|
+
'enabled'
|
|
1053
|
+
],
|
|
519
1054
|
additionalProperties: false
|
|
520
1055
|
},
|
|
521
1056
|
hetzner: {
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
enabled: {
|
|
527
|
-
type: 'boolean',
|
|
528
|
-
default: true
|
|
529
|
-
},
|
|
530
|
-
apiKey: {
|
|
531
|
-
type: 'string'
|
|
532
|
-
}
|
|
533
|
-
},
|
|
534
|
-
additionalProperties: false
|
|
1057
|
+
type: 'object',
|
|
1058
|
+
properties: {
|
|
1059
|
+
enabled: {
|
|
1060
|
+
type: 'boolean'
|
|
535
1061
|
},
|
|
536
|
-
{
|
|
537
|
-
type: '
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
enabled: {
|
|
543
|
-
type: 'boolean',
|
|
544
|
-
default: true
|
|
545
|
-
}
|
|
546
|
-
},
|
|
547
|
-
additionalProperties: false
|
|
1062
|
+
apiKey: {
|
|
1063
|
+
type: 'string',
|
|
1064
|
+
maxLength: 64,
|
|
1065
|
+
minLength: 64,
|
|
1066
|
+
pattern: '^([A-Za-z0-9]{64}|\\*{64})$',
|
|
1067
|
+
description: 'Hetzner Cloud API token with read/write access (64 alphanumeric characters). Write-only: reads return a redacted placeholder, never the token. Omit the field, or send the placeholder back unchanged, to keep the existing key. Send a new value to rotate it.'
|
|
548
1068
|
}
|
|
549
|
-
|
|
1069
|
+
},
|
|
1070
|
+
required: [
|
|
1071
|
+
'enabled'
|
|
1072
|
+
],
|
|
1073
|
+
additionalProperties: false
|
|
550
1074
|
},
|
|
551
1075
|
aws: {
|
|
552
1076
|
type: 'object',
|
|
553
1077
|
properties: {
|
|
554
1078
|
enabled: {
|
|
555
|
-
type: 'boolean'
|
|
556
|
-
default: true
|
|
1079
|
+
type: 'boolean'
|
|
557
1080
|
},
|
|
558
1081
|
controllerRoleArn: {
|
|
559
1082
|
type: 'string',
|
|
560
|
-
|
|
1083
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1084
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1085
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
561
1086
|
}
|
|
562
1087
|
},
|
|
563
|
-
required: [
|
|
1088
|
+
required: [
|
|
1089
|
+
'enabled'
|
|
1090
|
+
],
|
|
564
1091
|
additionalProperties: false
|
|
565
1092
|
},
|
|
1093
|
+
constraints: {
|
|
1094
|
+
type: 'object',
|
|
1095
|
+
properties: {
|
|
1096
|
+
'karpenter.sh/capacity-type': {
|
|
1097
|
+
type: 'array',
|
|
1098
|
+
items: {
|
|
1099
|
+
type: 'string',
|
|
1100
|
+
enum: [
|
|
1101
|
+
'on-demand',
|
|
1102
|
+
'spot'
|
|
1103
|
+
]
|
|
1104
|
+
},
|
|
1105
|
+
minItems: 1,
|
|
1106
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1107
|
+
default: [
|
|
1108
|
+
'on-demand',
|
|
1109
|
+
'spot'
|
|
1110
|
+
]
|
|
1111
|
+
},
|
|
1112
|
+
'kubernetes.io/arch': {
|
|
1113
|
+
type: 'array',
|
|
1114
|
+
items: {
|
|
1115
|
+
type: 'string',
|
|
1116
|
+
enum: [
|
|
1117
|
+
'amd64',
|
|
1118
|
+
'arm64'
|
|
1119
|
+
]
|
|
1120
|
+
},
|
|
1121
|
+
minItems: 1,
|
|
1122
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1123
|
+
default: [
|
|
1124
|
+
'amd64'
|
|
1125
|
+
]
|
|
1126
|
+
},
|
|
1127
|
+
'cfke.io/instance-family': {
|
|
1128
|
+
type: 'array',
|
|
1129
|
+
items: {
|
|
1130
|
+
type: 'string',
|
|
1131
|
+
enum: [
|
|
1132
|
+
'a1',
|
|
1133
|
+
'a2',
|
|
1134
|
+
'a3',
|
|
1135
|
+
'a4',
|
|
1136
|
+
'c1',
|
|
1137
|
+
'c2',
|
|
1138
|
+
'c2d',
|
|
1139
|
+
'c3',
|
|
1140
|
+
'c3d',
|
|
1141
|
+
'c4',
|
|
1142
|
+
'c4a',
|
|
1143
|
+
'c4d',
|
|
1144
|
+
'c5',
|
|
1145
|
+
'c5a',
|
|
1146
|
+
'c5ad',
|
|
1147
|
+
'c5d',
|
|
1148
|
+
'c5n',
|
|
1149
|
+
'c6a',
|
|
1150
|
+
'c6g',
|
|
1151
|
+
'c6gd',
|
|
1152
|
+
'c6gn',
|
|
1153
|
+
'c6i',
|
|
1154
|
+
'c6id',
|
|
1155
|
+
'c6in',
|
|
1156
|
+
'c7a',
|
|
1157
|
+
'c7g',
|
|
1158
|
+
'c7gd',
|
|
1159
|
+
'c7gn',
|
|
1160
|
+
'c7i',
|
|
1161
|
+
'c7i-flex',
|
|
1162
|
+
'c8g',
|
|
1163
|
+
'c8gd',
|
|
1164
|
+
'cax',
|
|
1165
|
+
'ccx',
|
|
1166
|
+
'cpx',
|
|
1167
|
+
'cx',
|
|
1168
|
+
'd2',
|
|
1169
|
+
'd3',
|
|
1170
|
+
'd3en',
|
|
1171
|
+
'dl1',
|
|
1172
|
+
'dl2q',
|
|
1173
|
+
'e2',
|
|
1174
|
+
'f1',
|
|
1175
|
+
'f2',
|
|
1176
|
+
'g1',
|
|
1177
|
+
'g2',
|
|
1178
|
+
'g4ad',
|
|
1179
|
+
'g4dn',
|
|
1180
|
+
'g5',
|
|
1181
|
+
'g5g',
|
|
1182
|
+
'g6',
|
|
1183
|
+
'g6e',
|
|
1184
|
+
'gr6',
|
|
1185
|
+
'h1',
|
|
1186
|
+
'h3',
|
|
1187
|
+
'hpc6a',
|
|
1188
|
+
'hpc6id',
|
|
1189
|
+
'hpc7a',
|
|
1190
|
+
'hpc7g',
|
|
1191
|
+
'i2',
|
|
1192
|
+
'i3',
|
|
1193
|
+
'i3en',
|
|
1194
|
+
'i4g',
|
|
1195
|
+
'i4i',
|
|
1196
|
+
'i7i',
|
|
1197
|
+
'i7ie',
|
|
1198
|
+
'i8g',
|
|
1199
|
+
'im4gn',
|
|
1200
|
+
'inf1',
|
|
1201
|
+
'inf2',
|
|
1202
|
+
'is4gen',
|
|
1203
|
+
'm1',
|
|
1204
|
+
'm2',
|
|
1205
|
+
'm3',
|
|
1206
|
+
'm4',
|
|
1207
|
+
'm5',
|
|
1208
|
+
'm5a',
|
|
1209
|
+
'm5ad',
|
|
1210
|
+
'm5d',
|
|
1211
|
+
'm5dn',
|
|
1212
|
+
'm5n',
|
|
1213
|
+
'm5zn',
|
|
1214
|
+
'm6a',
|
|
1215
|
+
'm6g',
|
|
1216
|
+
'm6gd',
|
|
1217
|
+
'm6i',
|
|
1218
|
+
'm6id',
|
|
1219
|
+
'm6idn',
|
|
1220
|
+
'm6in',
|
|
1221
|
+
'm7a',
|
|
1222
|
+
'm7g',
|
|
1223
|
+
'm7gd',
|
|
1224
|
+
'm7i',
|
|
1225
|
+
'm7i-flex',
|
|
1226
|
+
'm8g',
|
|
1227
|
+
'm8gd',
|
|
1228
|
+
'n1',
|
|
1229
|
+
'n2',
|
|
1230
|
+
'n2d',
|
|
1231
|
+
'n4',
|
|
1232
|
+
'p3',
|
|
1233
|
+
'p3dn',
|
|
1234
|
+
'p4d',
|
|
1235
|
+
'p4de',
|
|
1236
|
+
'p5',
|
|
1237
|
+
'p5e',
|
|
1238
|
+
'p5en',
|
|
1239
|
+
'p6-b200',
|
|
1240
|
+
'r3',
|
|
1241
|
+
'r4',
|
|
1242
|
+
'r5',
|
|
1243
|
+
'r5a',
|
|
1244
|
+
'r5ad',
|
|
1245
|
+
'r5b',
|
|
1246
|
+
'r5d',
|
|
1247
|
+
'r5dn',
|
|
1248
|
+
'r5n',
|
|
1249
|
+
'r6a',
|
|
1250
|
+
'r6g',
|
|
1251
|
+
'r6gd',
|
|
1252
|
+
'r6i',
|
|
1253
|
+
'r6id',
|
|
1254
|
+
'r6idn',
|
|
1255
|
+
'r6in',
|
|
1256
|
+
'r7a',
|
|
1257
|
+
'r7g',
|
|
1258
|
+
'r7gd',
|
|
1259
|
+
'r7i',
|
|
1260
|
+
'r7iz',
|
|
1261
|
+
'r8g',
|
|
1262
|
+
'r8gd',
|
|
1263
|
+
't2',
|
|
1264
|
+
't2a',
|
|
1265
|
+
't2d',
|
|
1266
|
+
't3',
|
|
1267
|
+
't3a',
|
|
1268
|
+
't4g',
|
|
1269
|
+
'trn1',
|
|
1270
|
+
'trn1n',
|
|
1271
|
+
'u-3tb1',
|
|
1272
|
+
'u-6tb1',
|
|
1273
|
+
'u7i-12tb',
|
|
1274
|
+
'u7i-6tb',
|
|
1275
|
+
'u7i-8tb',
|
|
1276
|
+
'u7in-16tb',
|
|
1277
|
+
'u7in-24tb',
|
|
1278
|
+
'u7in-32tb',
|
|
1279
|
+
'vt1',
|
|
1280
|
+
'x1',
|
|
1281
|
+
'x1e',
|
|
1282
|
+
'x2gd',
|
|
1283
|
+
'x2idn',
|
|
1284
|
+
'x2iedn',
|
|
1285
|
+
'x2iezn',
|
|
1286
|
+
'x4',
|
|
1287
|
+
'x8g',
|
|
1288
|
+
'z1d',
|
|
1289
|
+
'z3'
|
|
1290
|
+
]
|
|
1291
|
+
},
|
|
1292
|
+
description: 'Allowed values for `cfke.io/instance-family`.',
|
|
1293
|
+
default: []
|
|
1294
|
+
},
|
|
1295
|
+
'topology.kubernetes.io/region': {
|
|
1296
|
+
type: 'array',
|
|
1297
|
+
items: {
|
|
1298
|
+
type: 'string',
|
|
1299
|
+
enum: [
|
|
1300
|
+
'africa-south1',
|
|
1301
|
+
'ap-northeast-1',
|
|
1302
|
+
'ap-northeast-2',
|
|
1303
|
+
'ap-northeast-3',
|
|
1304
|
+
'ap-south-1',
|
|
1305
|
+
'ap-southeast-1',
|
|
1306
|
+
'ap-southeast-2',
|
|
1307
|
+
'ash',
|
|
1308
|
+
'asia-east1',
|
|
1309
|
+
'asia-east2',
|
|
1310
|
+
'asia-northeast1',
|
|
1311
|
+
'asia-northeast2',
|
|
1312
|
+
'asia-northeast3',
|
|
1313
|
+
'asia-south1',
|
|
1314
|
+
'asia-south2',
|
|
1315
|
+
'asia-southeast1',
|
|
1316
|
+
'asia-southeast2',
|
|
1317
|
+
'australia-southeast1',
|
|
1318
|
+
'australia-southeast2',
|
|
1319
|
+
'ca-central-1',
|
|
1320
|
+
'eu-central-1',
|
|
1321
|
+
'eu-central-2',
|
|
1322
|
+
'eu-north-1',
|
|
1323
|
+
'eu-west-1',
|
|
1324
|
+
'eu-west-2',
|
|
1325
|
+
'eu-west-3',
|
|
1326
|
+
'europe-central2',
|
|
1327
|
+
'europe-north1',
|
|
1328
|
+
'europe-southwest1',
|
|
1329
|
+
'europe-west1',
|
|
1330
|
+
'europe-west10',
|
|
1331
|
+
'europe-west12',
|
|
1332
|
+
'europe-west2',
|
|
1333
|
+
'europe-west3',
|
|
1334
|
+
'europe-west4',
|
|
1335
|
+
'europe-west6',
|
|
1336
|
+
'europe-west8',
|
|
1337
|
+
'europe-west9',
|
|
1338
|
+
'fsn1',
|
|
1339
|
+
'hel1',
|
|
1340
|
+
'hil',
|
|
1341
|
+
'me-central1',
|
|
1342
|
+
'me-central2',
|
|
1343
|
+
'me-west1',
|
|
1344
|
+
'nbg1',
|
|
1345
|
+
'northamerica-northeast1',
|
|
1346
|
+
'northamerica-northeast2',
|
|
1347
|
+
'sa-east-1',
|
|
1348
|
+
'sin',
|
|
1349
|
+
'southamerica-east1',
|
|
1350
|
+
'southamerica-west1',
|
|
1351
|
+
'us-central1',
|
|
1352
|
+
'us-east-1',
|
|
1353
|
+
'us-east-2',
|
|
1354
|
+
'us-east1',
|
|
1355
|
+
'us-east4',
|
|
1356
|
+
'us-east5',
|
|
1357
|
+
'us-south1',
|
|
1358
|
+
'us-west-1',
|
|
1359
|
+
'us-west-2',
|
|
1360
|
+
'us-west1',
|
|
1361
|
+
'us-west2',
|
|
1362
|
+
'us-west3',
|
|
1363
|
+
'us-west4'
|
|
1364
|
+
]
|
|
1365
|
+
},
|
|
1366
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.',
|
|
1367
|
+
default: []
|
|
1368
|
+
}
|
|
1369
|
+
},
|
|
1370
|
+
additionalProperties: false,
|
|
1371
|
+
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.',
|
|
1372
|
+
default: {
|
|
1373
|
+
'karpenter.sh/capacity-type': [
|
|
1374
|
+
'on-demand',
|
|
1375
|
+
'spot'
|
|
1376
|
+
],
|
|
1377
|
+
'kubernetes.io/arch': [
|
|
1378
|
+
'amd64'
|
|
1379
|
+
],
|
|
1380
|
+
'cfke.io/instance-family': [],
|
|
1381
|
+
'topology.kubernetes.io/region': []
|
|
1382
|
+
}
|
|
1383
|
+
},
|
|
1384
|
+
scalingProfile: {
|
|
1385
|
+
type: 'string',
|
|
1386
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).',
|
|
1387
|
+
default: 'conservative',
|
|
1388
|
+
example: 'conservative',
|
|
1389
|
+
enum: [
|
|
1390
|
+
'aggressive',
|
|
1391
|
+
'conservative'
|
|
1392
|
+
]
|
|
1393
|
+
},
|
|
566
1394
|
id: {
|
|
567
1395
|
type: 'string',
|
|
568
1396
|
maxLength: 63,
|
|
@@ -570,15 +1398,13 @@ export const FleetCreateInputSchema = {
|
|
|
570
1398
|
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
571
1399
|
description: 'Unique identifier of the kubernetes fleet.',
|
|
572
1400
|
example: 'new-clouds-fleet'
|
|
573
|
-
},
|
|
574
|
-
type: {
|
|
575
|
-
type: 'string',
|
|
576
|
-
description: 'Specifies the fleet type: infrastructure managed by Cloudfleet or Connected Fleets.',
|
|
577
|
-
enum: ['managed', 'connected']
|
|
578
1401
|
}
|
|
579
1402
|
},
|
|
580
|
-
required: [
|
|
581
|
-
|
|
1403
|
+
required: [
|
|
1404
|
+
'id'
|
|
1405
|
+
],
|
|
1406
|
+
additionalProperties: false,
|
|
1407
|
+
description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
582
1408
|
};
|
|
583
1409
|
export const FleetSchema = {
|
|
584
1410
|
type: 'object',
|
|
@@ -587,13 +1413,12 @@ export const FleetSchema = {
|
|
|
587
1413
|
type: 'object',
|
|
588
1414
|
properties: {
|
|
589
1415
|
cpu: {
|
|
590
|
-
type: '
|
|
591
|
-
format: 'float',
|
|
1416
|
+
type: 'integer',
|
|
592
1417
|
minimum: 0,
|
|
593
|
-
|
|
1418
|
+
maximum: 100000,
|
|
1419
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
594
1420
|
}
|
|
595
1421
|
},
|
|
596
|
-
required: ['cpu'],
|
|
597
1422
|
additionalProperties: false,
|
|
598
1423
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
599
1424
|
},
|
|
@@ -601,62 +1426,360 @@ export const FleetSchema = {
|
|
|
601
1426
|
type: 'object',
|
|
602
1427
|
properties: {
|
|
603
1428
|
enabled: {
|
|
604
|
-
type: 'boolean'
|
|
605
|
-
default: true
|
|
1429
|
+
type: 'boolean'
|
|
606
1430
|
},
|
|
607
1431
|
project: {
|
|
608
1432
|
type: 'string',
|
|
609
|
-
|
|
1433
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1434
|
+
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.',
|
|
1435
|
+
example: 'my-cloudfleet-project'
|
|
610
1436
|
}
|
|
611
1437
|
},
|
|
612
|
-
required: [
|
|
1438
|
+
required: [
|
|
1439
|
+
'enabled'
|
|
1440
|
+
],
|
|
613
1441
|
additionalProperties: false
|
|
614
1442
|
},
|
|
615
1443
|
hetzner: {
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
enabled: {
|
|
621
|
-
type: 'boolean',
|
|
622
|
-
default: true
|
|
623
|
-
},
|
|
624
|
-
apiKey: {
|
|
625
|
-
type: 'string'
|
|
626
|
-
}
|
|
627
|
-
},
|
|
628
|
-
additionalProperties: false
|
|
1444
|
+
type: 'object',
|
|
1445
|
+
properties: {
|
|
1446
|
+
enabled: {
|
|
1447
|
+
type: 'boolean'
|
|
629
1448
|
},
|
|
630
|
-
{
|
|
631
|
-
type: '
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
type: 'string'
|
|
635
|
-
},
|
|
636
|
-
enabled: {
|
|
637
|
-
type: 'boolean',
|
|
638
|
-
default: true
|
|
639
|
-
}
|
|
640
|
-
},
|
|
641
|
-
additionalProperties: false
|
|
1449
|
+
apiKey: {
|
|
1450
|
+
type: 'string',
|
|
1451
|
+
pattern: '^\\*{64}$',
|
|
1452
|
+
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.'
|
|
642
1453
|
}
|
|
643
|
-
|
|
1454
|
+
},
|
|
1455
|
+
required: [
|
|
1456
|
+
'enabled'
|
|
1457
|
+
],
|
|
1458
|
+
additionalProperties: false
|
|
644
1459
|
},
|
|
645
1460
|
aws: {
|
|
646
1461
|
type: 'object',
|
|
647
1462
|
properties: {
|
|
648
1463
|
enabled: {
|
|
649
|
-
type: 'boolean'
|
|
650
|
-
default: true
|
|
1464
|
+
type: 'boolean'
|
|
651
1465
|
},
|
|
652
1466
|
controllerRoleArn: {
|
|
653
1467
|
type: 'string',
|
|
654
|
-
|
|
1468
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1469
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1470
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
655
1471
|
}
|
|
656
1472
|
},
|
|
657
|
-
required: [
|
|
1473
|
+
required: [
|
|
1474
|
+
'enabled'
|
|
1475
|
+
],
|
|
658
1476
|
additionalProperties: false
|
|
659
1477
|
},
|
|
1478
|
+
constraints: {
|
|
1479
|
+
type: 'object',
|
|
1480
|
+
properties: {
|
|
1481
|
+
'karpenter.sh/capacity-type': {
|
|
1482
|
+
type: 'array',
|
|
1483
|
+
items: {
|
|
1484
|
+
type: 'string',
|
|
1485
|
+
enum: [
|
|
1486
|
+
'on-demand',
|
|
1487
|
+
'spot'
|
|
1488
|
+
]
|
|
1489
|
+
},
|
|
1490
|
+
minItems: 1,
|
|
1491
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1492
|
+
default: [
|
|
1493
|
+
'on-demand',
|
|
1494
|
+
'spot'
|
|
1495
|
+
]
|
|
1496
|
+
},
|
|
1497
|
+
'kubernetes.io/arch': {
|
|
1498
|
+
type: 'array',
|
|
1499
|
+
items: {
|
|
1500
|
+
type: 'string',
|
|
1501
|
+
enum: [
|
|
1502
|
+
'amd64',
|
|
1503
|
+
'arm64'
|
|
1504
|
+
]
|
|
1505
|
+
},
|
|
1506
|
+
minItems: 1,
|
|
1507
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1508
|
+
default: [
|
|
1509
|
+
'amd64'
|
|
1510
|
+
]
|
|
1511
|
+
},
|
|
1512
|
+
'cfke.io/instance-family': {
|
|
1513
|
+
type: 'array',
|
|
1514
|
+
items: {
|
|
1515
|
+
type: 'string',
|
|
1516
|
+
enum: [
|
|
1517
|
+
'a1',
|
|
1518
|
+
'a2',
|
|
1519
|
+
'a3',
|
|
1520
|
+
'a4',
|
|
1521
|
+
'c1',
|
|
1522
|
+
'c2',
|
|
1523
|
+
'c2d',
|
|
1524
|
+
'c3',
|
|
1525
|
+
'c3d',
|
|
1526
|
+
'c4',
|
|
1527
|
+
'c4a',
|
|
1528
|
+
'c4d',
|
|
1529
|
+
'c5',
|
|
1530
|
+
'c5a',
|
|
1531
|
+
'c5ad',
|
|
1532
|
+
'c5d',
|
|
1533
|
+
'c5n',
|
|
1534
|
+
'c6a',
|
|
1535
|
+
'c6g',
|
|
1536
|
+
'c6gd',
|
|
1537
|
+
'c6gn',
|
|
1538
|
+
'c6i',
|
|
1539
|
+
'c6id',
|
|
1540
|
+
'c6in',
|
|
1541
|
+
'c7a',
|
|
1542
|
+
'c7g',
|
|
1543
|
+
'c7gd',
|
|
1544
|
+
'c7gn',
|
|
1545
|
+
'c7i',
|
|
1546
|
+
'c7i-flex',
|
|
1547
|
+
'c8g',
|
|
1548
|
+
'c8gd',
|
|
1549
|
+
'cax',
|
|
1550
|
+
'ccx',
|
|
1551
|
+
'cpx',
|
|
1552
|
+
'cx',
|
|
1553
|
+
'd2',
|
|
1554
|
+
'd3',
|
|
1555
|
+
'd3en',
|
|
1556
|
+
'dl1',
|
|
1557
|
+
'dl2q',
|
|
1558
|
+
'e2',
|
|
1559
|
+
'f1',
|
|
1560
|
+
'f2',
|
|
1561
|
+
'g1',
|
|
1562
|
+
'g2',
|
|
1563
|
+
'g4ad',
|
|
1564
|
+
'g4dn',
|
|
1565
|
+
'g5',
|
|
1566
|
+
'g5g',
|
|
1567
|
+
'g6',
|
|
1568
|
+
'g6e',
|
|
1569
|
+
'gr6',
|
|
1570
|
+
'h1',
|
|
1571
|
+
'h3',
|
|
1572
|
+
'hpc6a',
|
|
1573
|
+
'hpc6id',
|
|
1574
|
+
'hpc7a',
|
|
1575
|
+
'hpc7g',
|
|
1576
|
+
'i2',
|
|
1577
|
+
'i3',
|
|
1578
|
+
'i3en',
|
|
1579
|
+
'i4g',
|
|
1580
|
+
'i4i',
|
|
1581
|
+
'i7i',
|
|
1582
|
+
'i7ie',
|
|
1583
|
+
'i8g',
|
|
1584
|
+
'im4gn',
|
|
1585
|
+
'inf1',
|
|
1586
|
+
'inf2',
|
|
1587
|
+
'is4gen',
|
|
1588
|
+
'm1',
|
|
1589
|
+
'm2',
|
|
1590
|
+
'm3',
|
|
1591
|
+
'm4',
|
|
1592
|
+
'm5',
|
|
1593
|
+
'm5a',
|
|
1594
|
+
'm5ad',
|
|
1595
|
+
'm5d',
|
|
1596
|
+
'm5dn',
|
|
1597
|
+
'm5n',
|
|
1598
|
+
'm5zn',
|
|
1599
|
+
'm6a',
|
|
1600
|
+
'm6g',
|
|
1601
|
+
'm6gd',
|
|
1602
|
+
'm6i',
|
|
1603
|
+
'm6id',
|
|
1604
|
+
'm6idn',
|
|
1605
|
+
'm6in',
|
|
1606
|
+
'm7a',
|
|
1607
|
+
'm7g',
|
|
1608
|
+
'm7gd',
|
|
1609
|
+
'm7i',
|
|
1610
|
+
'm7i-flex',
|
|
1611
|
+
'm8g',
|
|
1612
|
+
'm8gd',
|
|
1613
|
+
'n1',
|
|
1614
|
+
'n2',
|
|
1615
|
+
'n2d',
|
|
1616
|
+
'n4',
|
|
1617
|
+
'p3',
|
|
1618
|
+
'p3dn',
|
|
1619
|
+
'p4d',
|
|
1620
|
+
'p4de',
|
|
1621
|
+
'p5',
|
|
1622
|
+
'p5e',
|
|
1623
|
+
'p5en',
|
|
1624
|
+
'p6-b200',
|
|
1625
|
+
'r3',
|
|
1626
|
+
'r4',
|
|
1627
|
+
'r5',
|
|
1628
|
+
'r5a',
|
|
1629
|
+
'r5ad',
|
|
1630
|
+
'r5b',
|
|
1631
|
+
'r5d',
|
|
1632
|
+
'r5dn',
|
|
1633
|
+
'r5n',
|
|
1634
|
+
'r6a',
|
|
1635
|
+
'r6g',
|
|
1636
|
+
'r6gd',
|
|
1637
|
+
'r6i',
|
|
1638
|
+
'r6id',
|
|
1639
|
+
'r6idn',
|
|
1640
|
+
'r6in',
|
|
1641
|
+
'r7a',
|
|
1642
|
+
'r7g',
|
|
1643
|
+
'r7gd',
|
|
1644
|
+
'r7i',
|
|
1645
|
+
'r7iz',
|
|
1646
|
+
'r8g',
|
|
1647
|
+
'r8gd',
|
|
1648
|
+
't2',
|
|
1649
|
+
't2a',
|
|
1650
|
+
't2d',
|
|
1651
|
+
't3',
|
|
1652
|
+
't3a',
|
|
1653
|
+
't4g',
|
|
1654
|
+
'trn1',
|
|
1655
|
+
'trn1n',
|
|
1656
|
+
'u-3tb1',
|
|
1657
|
+
'u-6tb1',
|
|
1658
|
+
'u7i-12tb',
|
|
1659
|
+
'u7i-6tb',
|
|
1660
|
+
'u7i-8tb',
|
|
1661
|
+
'u7in-16tb',
|
|
1662
|
+
'u7in-24tb',
|
|
1663
|
+
'u7in-32tb',
|
|
1664
|
+
'vt1',
|
|
1665
|
+
'x1',
|
|
1666
|
+
'x1e',
|
|
1667
|
+
'x2gd',
|
|
1668
|
+
'x2idn',
|
|
1669
|
+
'x2iedn',
|
|
1670
|
+
'x2iezn',
|
|
1671
|
+
'x4',
|
|
1672
|
+
'x8g',
|
|
1673
|
+
'z1d',
|
|
1674
|
+
'z3'
|
|
1675
|
+
]
|
|
1676
|
+
},
|
|
1677
|
+
description: 'Allowed values for `cfke.io/instance-family`.',
|
|
1678
|
+
default: []
|
|
1679
|
+
},
|
|
1680
|
+
'topology.kubernetes.io/region': {
|
|
1681
|
+
type: 'array',
|
|
1682
|
+
items: {
|
|
1683
|
+
type: 'string',
|
|
1684
|
+
enum: [
|
|
1685
|
+
'africa-south1',
|
|
1686
|
+
'ap-northeast-1',
|
|
1687
|
+
'ap-northeast-2',
|
|
1688
|
+
'ap-northeast-3',
|
|
1689
|
+
'ap-south-1',
|
|
1690
|
+
'ap-southeast-1',
|
|
1691
|
+
'ap-southeast-2',
|
|
1692
|
+
'ash',
|
|
1693
|
+
'asia-east1',
|
|
1694
|
+
'asia-east2',
|
|
1695
|
+
'asia-northeast1',
|
|
1696
|
+
'asia-northeast2',
|
|
1697
|
+
'asia-northeast3',
|
|
1698
|
+
'asia-south1',
|
|
1699
|
+
'asia-south2',
|
|
1700
|
+
'asia-southeast1',
|
|
1701
|
+
'asia-southeast2',
|
|
1702
|
+
'australia-southeast1',
|
|
1703
|
+
'australia-southeast2',
|
|
1704
|
+
'ca-central-1',
|
|
1705
|
+
'eu-central-1',
|
|
1706
|
+
'eu-central-2',
|
|
1707
|
+
'eu-north-1',
|
|
1708
|
+
'eu-west-1',
|
|
1709
|
+
'eu-west-2',
|
|
1710
|
+
'eu-west-3',
|
|
1711
|
+
'europe-central2',
|
|
1712
|
+
'europe-north1',
|
|
1713
|
+
'europe-southwest1',
|
|
1714
|
+
'europe-west1',
|
|
1715
|
+
'europe-west10',
|
|
1716
|
+
'europe-west12',
|
|
1717
|
+
'europe-west2',
|
|
1718
|
+
'europe-west3',
|
|
1719
|
+
'europe-west4',
|
|
1720
|
+
'europe-west6',
|
|
1721
|
+
'europe-west8',
|
|
1722
|
+
'europe-west9',
|
|
1723
|
+
'fsn1',
|
|
1724
|
+
'hel1',
|
|
1725
|
+
'hil',
|
|
1726
|
+
'me-central1',
|
|
1727
|
+
'me-central2',
|
|
1728
|
+
'me-west1',
|
|
1729
|
+
'nbg1',
|
|
1730
|
+
'northamerica-northeast1',
|
|
1731
|
+
'northamerica-northeast2',
|
|
1732
|
+
'sa-east-1',
|
|
1733
|
+
'sin',
|
|
1734
|
+
'southamerica-east1',
|
|
1735
|
+
'southamerica-west1',
|
|
1736
|
+
'us-central1',
|
|
1737
|
+
'us-east-1',
|
|
1738
|
+
'us-east-2',
|
|
1739
|
+
'us-east1',
|
|
1740
|
+
'us-east4',
|
|
1741
|
+
'us-east5',
|
|
1742
|
+
'us-south1',
|
|
1743
|
+
'us-west-1',
|
|
1744
|
+
'us-west-2',
|
|
1745
|
+
'us-west1',
|
|
1746
|
+
'us-west2',
|
|
1747
|
+
'us-west3',
|
|
1748
|
+
'us-west4'
|
|
1749
|
+
]
|
|
1750
|
+
},
|
|
1751
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.',
|
|
1752
|
+
default: []
|
|
1753
|
+
}
|
|
1754
|
+
},
|
|
1755
|
+
required: [
|
|
1756
|
+
'karpenter.sh/capacity-type',
|
|
1757
|
+
'kubernetes.io/arch'
|
|
1758
|
+
],
|
|
1759
|
+
additionalProperties: false,
|
|
1760
|
+
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.',
|
|
1761
|
+
default: {
|
|
1762
|
+
'karpenter.sh/capacity-type': [
|
|
1763
|
+
'on-demand',
|
|
1764
|
+
'spot'
|
|
1765
|
+
],
|
|
1766
|
+
'kubernetes.io/arch': [
|
|
1767
|
+
'amd64'
|
|
1768
|
+
],
|
|
1769
|
+
'cfke.io/instance-family': [],
|
|
1770
|
+
'topology.kubernetes.io/region': []
|
|
1771
|
+
}
|
|
1772
|
+
},
|
|
1773
|
+
scalingProfile: {
|
|
1774
|
+
type: 'string',
|
|
1775
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).',
|
|
1776
|
+
default: 'conservative',
|
|
1777
|
+
example: 'conservative',
|
|
1778
|
+
enum: [
|
|
1779
|
+
'aggressive',
|
|
1780
|
+
'conservative'
|
|
1781
|
+
]
|
|
1782
|
+
},
|
|
660
1783
|
id: {
|
|
661
1784
|
type: 'string',
|
|
662
1785
|
maxLength: 63,
|
|
@@ -665,14 +1788,37 @@ export const FleetSchema = {
|
|
|
665
1788
|
description: 'Unique identifier of the kubernetes fleet.',
|
|
666
1789
|
example: 'new-clouds-fleet'
|
|
667
1790
|
},
|
|
668
|
-
|
|
1791
|
+
ready: {
|
|
1792
|
+
type: 'boolean',
|
|
1793
|
+
description: 'Indicates whether the fleet configuration is healthy.',
|
|
1794
|
+
example: true
|
|
1795
|
+
},
|
|
1796
|
+
status_message: {
|
|
669
1797
|
type: 'string',
|
|
670
|
-
description: '
|
|
671
|
-
|
|
1798
|
+
description: 'Human-readable reason the fleet is not ready. Present only when `ready` is false.',
|
|
1799
|
+
example: 'Invalid provider permissions.'
|
|
1800
|
+
},
|
|
1801
|
+
created_at: {
|
|
1802
|
+
type: 'string',
|
|
1803
|
+
description: 'Creation date and time of the fleet.',
|
|
1804
|
+
example: '2024-09-12T09:11:27Z'
|
|
1805
|
+
},
|
|
1806
|
+
updated_at: {
|
|
1807
|
+
type: 'string',
|
|
1808
|
+
description: 'Date and time the fleet was last updated.',
|
|
1809
|
+
example: '2024-09-12T09:11:27Z'
|
|
672
1810
|
}
|
|
673
1811
|
},
|
|
674
|
-
required: [
|
|
675
|
-
|
|
1812
|
+
required: [
|
|
1813
|
+
'constraints',
|
|
1814
|
+
'scalingProfile',
|
|
1815
|
+
'id',
|
|
1816
|
+
'ready',
|
|
1817
|
+
'created_at',
|
|
1818
|
+
'updated_at'
|
|
1819
|
+
],
|
|
1820
|
+
additionalProperties: false,
|
|
1821
|
+
description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
676
1822
|
};
|
|
677
1823
|
export const FleetUpdateInputSchema = {
|
|
678
1824
|
type: 'object',
|
|
@@ -681,13 +1827,12 @@ export const FleetUpdateInputSchema = {
|
|
|
681
1827
|
type: 'object',
|
|
682
1828
|
properties: {
|
|
683
1829
|
cpu: {
|
|
684
|
-
type: '
|
|
685
|
-
format: 'float',
|
|
1830
|
+
type: 'integer',
|
|
686
1831
|
minimum: 0,
|
|
687
|
-
|
|
1832
|
+
maximum: 100000,
|
|
1833
|
+
description: 'CPU limit in cores. Maximum 100,000.'
|
|
688
1834
|
}
|
|
689
1835
|
},
|
|
690
|
-
required: ['cpu'],
|
|
691
1836
|
additionalProperties: false,
|
|
692
1837
|
description: 'Limits define a set of bounds for provisioning capacity.'
|
|
693
1838
|
},
|
|
@@ -695,63 +1840,385 @@ export const FleetUpdateInputSchema = {
|
|
|
695
1840
|
type: 'object',
|
|
696
1841
|
properties: {
|
|
697
1842
|
enabled: {
|
|
698
|
-
type: 'boolean'
|
|
699
|
-
default: true
|
|
1843
|
+
type: 'boolean'
|
|
700
1844
|
},
|
|
701
1845
|
project: {
|
|
702
1846
|
type: 'string',
|
|
703
|
-
|
|
1847
|
+
pattern: '^[a-z][a-z0-9-]{4,28}[a-z0-9]$',
|
|
1848
|
+
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.',
|
|
1849
|
+
example: 'my-cloudfleet-project'
|
|
704
1850
|
}
|
|
705
1851
|
},
|
|
706
|
-
required: [
|
|
1852
|
+
required: [
|
|
1853
|
+
'enabled'
|
|
1854
|
+
],
|
|
707
1855
|
additionalProperties: false
|
|
708
1856
|
},
|
|
709
1857
|
hetzner: {
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
enabled: {
|
|
715
|
-
type: 'boolean',
|
|
716
|
-
default: true
|
|
717
|
-
},
|
|
718
|
-
apiKey: {
|
|
719
|
-
type: 'string'
|
|
720
|
-
}
|
|
721
|
-
},
|
|
722
|
-
additionalProperties: false
|
|
1858
|
+
type: 'object',
|
|
1859
|
+
properties: {
|
|
1860
|
+
enabled: {
|
|
1861
|
+
type: 'boolean'
|
|
723
1862
|
},
|
|
724
|
-
{
|
|
725
|
-
type: '
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
enabled: {
|
|
731
|
-
type: 'boolean',
|
|
732
|
-
default: true
|
|
733
|
-
}
|
|
734
|
-
},
|
|
735
|
-
additionalProperties: false
|
|
1863
|
+
apiKey: {
|
|
1864
|
+
type: 'string',
|
|
1865
|
+
maxLength: 64,
|
|
1866
|
+
minLength: 64,
|
|
1867
|
+
pattern: '^([A-Za-z0-9]{64}|\\*{64})$',
|
|
1868
|
+
description: 'Hetzner Cloud API token with read/write access (64 alphanumeric characters). Write-only: reads return a redacted placeholder, never the token. Omit the field, or send the placeholder back unchanged, to keep the existing key. Send a new value to rotate it.'
|
|
736
1869
|
}
|
|
737
|
-
|
|
1870
|
+
},
|
|
1871
|
+
required: [
|
|
1872
|
+
'enabled'
|
|
1873
|
+
],
|
|
1874
|
+
additionalProperties: false
|
|
738
1875
|
},
|
|
739
1876
|
aws: {
|
|
740
1877
|
type: 'object',
|
|
741
1878
|
properties: {
|
|
742
1879
|
enabled: {
|
|
743
|
-
type: 'boolean'
|
|
744
|
-
default: true
|
|
1880
|
+
type: 'boolean'
|
|
745
1881
|
},
|
|
746
1882
|
controllerRoleArn: {
|
|
747
1883
|
type: 'string',
|
|
748
|
-
|
|
1884
|
+
pattern: '^arn:aws(-[a-z]+)*:iam::\\d{12}:role\\/[\\w+=,.@/-]+$',
|
|
1885
|
+
description: 'AWS IAM role ARN that Karpenter uses to manage resources. Omit when AWS is disabled.',
|
|
1886
|
+
example: 'arn:aws:iam::123456789012:role/Cloudfleet'
|
|
749
1887
|
}
|
|
750
1888
|
},
|
|
751
|
-
required: [
|
|
1889
|
+
required: [
|
|
1890
|
+
'enabled'
|
|
1891
|
+
],
|
|
752
1892
|
additionalProperties: false
|
|
1893
|
+
},
|
|
1894
|
+
constraints: {
|
|
1895
|
+
type: 'object',
|
|
1896
|
+
properties: {
|
|
1897
|
+
'karpenter.sh/capacity-type': {
|
|
1898
|
+
type: 'array',
|
|
1899
|
+
items: {
|
|
1900
|
+
type: 'string',
|
|
1901
|
+
enum: [
|
|
1902
|
+
'on-demand',
|
|
1903
|
+
'spot'
|
|
1904
|
+
]
|
|
1905
|
+
},
|
|
1906
|
+
minItems: 1,
|
|
1907
|
+
description: 'Allowed values for `karpenter.sh/capacity-type`.',
|
|
1908
|
+
default: [
|
|
1909
|
+
'on-demand',
|
|
1910
|
+
'spot'
|
|
1911
|
+
]
|
|
1912
|
+
},
|
|
1913
|
+
'kubernetes.io/arch': {
|
|
1914
|
+
type: 'array',
|
|
1915
|
+
items: {
|
|
1916
|
+
type: 'string',
|
|
1917
|
+
enum: [
|
|
1918
|
+
'amd64',
|
|
1919
|
+
'arm64'
|
|
1920
|
+
]
|
|
1921
|
+
},
|
|
1922
|
+
minItems: 1,
|
|
1923
|
+
description: 'Allowed values for `kubernetes.io/arch`.',
|
|
1924
|
+
default: [
|
|
1925
|
+
'amd64'
|
|
1926
|
+
]
|
|
1927
|
+
},
|
|
1928
|
+
'cfke.io/instance-family': {
|
|
1929
|
+
type: 'array',
|
|
1930
|
+
items: {
|
|
1931
|
+
type: 'string',
|
|
1932
|
+
enum: [
|
|
1933
|
+
'a1',
|
|
1934
|
+
'a2',
|
|
1935
|
+
'a3',
|
|
1936
|
+
'a4',
|
|
1937
|
+
'c1',
|
|
1938
|
+
'c2',
|
|
1939
|
+
'c2d',
|
|
1940
|
+
'c3',
|
|
1941
|
+
'c3d',
|
|
1942
|
+
'c4',
|
|
1943
|
+
'c4a',
|
|
1944
|
+
'c4d',
|
|
1945
|
+
'c5',
|
|
1946
|
+
'c5a',
|
|
1947
|
+
'c5ad',
|
|
1948
|
+
'c5d',
|
|
1949
|
+
'c5n',
|
|
1950
|
+
'c6a',
|
|
1951
|
+
'c6g',
|
|
1952
|
+
'c6gd',
|
|
1953
|
+
'c6gn',
|
|
1954
|
+
'c6i',
|
|
1955
|
+
'c6id',
|
|
1956
|
+
'c6in',
|
|
1957
|
+
'c7a',
|
|
1958
|
+
'c7g',
|
|
1959
|
+
'c7gd',
|
|
1960
|
+
'c7gn',
|
|
1961
|
+
'c7i',
|
|
1962
|
+
'c7i-flex',
|
|
1963
|
+
'c8g',
|
|
1964
|
+
'c8gd',
|
|
1965
|
+
'cax',
|
|
1966
|
+
'ccx',
|
|
1967
|
+
'cpx',
|
|
1968
|
+
'cx',
|
|
1969
|
+
'd2',
|
|
1970
|
+
'd3',
|
|
1971
|
+
'd3en',
|
|
1972
|
+
'dl1',
|
|
1973
|
+
'dl2q',
|
|
1974
|
+
'e2',
|
|
1975
|
+
'f1',
|
|
1976
|
+
'f2',
|
|
1977
|
+
'g1',
|
|
1978
|
+
'g2',
|
|
1979
|
+
'g4ad',
|
|
1980
|
+
'g4dn',
|
|
1981
|
+
'g5',
|
|
1982
|
+
'g5g',
|
|
1983
|
+
'g6',
|
|
1984
|
+
'g6e',
|
|
1985
|
+
'gr6',
|
|
1986
|
+
'h1',
|
|
1987
|
+
'h3',
|
|
1988
|
+
'hpc6a',
|
|
1989
|
+
'hpc6id',
|
|
1990
|
+
'hpc7a',
|
|
1991
|
+
'hpc7g',
|
|
1992
|
+
'i2',
|
|
1993
|
+
'i3',
|
|
1994
|
+
'i3en',
|
|
1995
|
+
'i4g',
|
|
1996
|
+
'i4i',
|
|
1997
|
+
'i7i',
|
|
1998
|
+
'i7ie',
|
|
1999
|
+
'i8g',
|
|
2000
|
+
'im4gn',
|
|
2001
|
+
'inf1',
|
|
2002
|
+
'inf2',
|
|
2003
|
+
'is4gen',
|
|
2004
|
+
'm1',
|
|
2005
|
+
'm2',
|
|
2006
|
+
'm3',
|
|
2007
|
+
'm4',
|
|
2008
|
+
'm5',
|
|
2009
|
+
'm5a',
|
|
2010
|
+
'm5ad',
|
|
2011
|
+
'm5d',
|
|
2012
|
+
'm5dn',
|
|
2013
|
+
'm5n',
|
|
2014
|
+
'm5zn',
|
|
2015
|
+
'm6a',
|
|
2016
|
+
'm6g',
|
|
2017
|
+
'm6gd',
|
|
2018
|
+
'm6i',
|
|
2019
|
+
'm6id',
|
|
2020
|
+
'm6idn',
|
|
2021
|
+
'm6in',
|
|
2022
|
+
'm7a',
|
|
2023
|
+
'm7g',
|
|
2024
|
+
'm7gd',
|
|
2025
|
+
'm7i',
|
|
2026
|
+
'm7i-flex',
|
|
2027
|
+
'm8g',
|
|
2028
|
+
'm8gd',
|
|
2029
|
+
'n1',
|
|
2030
|
+
'n2',
|
|
2031
|
+
'n2d',
|
|
2032
|
+
'n4',
|
|
2033
|
+
'p3',
|
|
2034
|
+
'p3dn',
|
|
2035
|
+
'p4d',
|
|
2036
|
+
'p4de',
|
|
2037
|
+
'p5',
|
|
2038
|
+
'p5e',
|
|
2039
|
+
'p5en',
|
|
2040
|
+
'p6-b200',
|
|
2041
|
+
'r3',
|
|
2042
|
+
'r4',
|
|
2043
|
+
'r5',
|
|
2044
|
+
'r5a',
|
|
2045
|
+
'r5ad',
|
|
2046
|
+
'r5b',
|
|
2047
|
+
'r5d',
|
|
2048
|
+
'r5dn',
|
|
2049
|
+
'r5n',
|
|
2050
|
+
'r6a',
|
|
2051
|
+
'r6g',
|
|
2052
|
+
'r6gd',
|
|
2053
|
+
'r6i',
|
|
2054
|
+
'r6id',
|
|
2055
|
+
'r6idn',
|
|
2056
|
+
'r6in',
|
|
2057
|
+
'r7a',
|
|
2058
|
+
'r7g',
|
|
2059
|
+
'r7gd',
|
|
2060
|
+
'r7i',
|
|
2061
|
+
'r7iz',
|
|
2062
|
+
'r8g',
|
|
2063
|
+
'r8gd',
|
|
2064
|
+
't2',
|
|
2065
|
+
't2a',
|
|
2066
|
+
't2d',
|
|
2067
|
+
't3',
|
|
2068
|
+
't3a',
|
|
2069
|
+
't4g',
|
|
2070
|
+
'trn1',
|
|
2071
|
+
'trn1n',
|
|
2072
|
+
'u-3tb1',
|
|
2073
|
+
'u-6tb1',
|
|
2074
|
+
'u7i-12tb',
|
|
2075
|
+
'u7i-6tb',
|
|
2076
|
+
'u7i-8tb',
|
|
2077
|
+
'u7in-16tb',
|
|
2078
|
+
'u7in-24tb',
|
|
2079
|
+
'u7in-32tb',
|
|
2080
|
+
'vt1',
|
|
2081
|
+
'x1',
|
|
2082
|
+
'x1e',
|
|
2083
|
+
'x2gd',
|
|
2084
|
+
'x2idn',
|
|
2085
|
+
'x2iedn',
|
|
2086
|
+
'x2iezn',
|
|
2087
|
+
'x4',
|
|
2088
|
+
'x8g',
|
|
2089
|
+
'z1d',
|
|
2090
|
+
'z3'
|
|
2091
|
+
]
|
|
2092
|
+
},
|
|
2093
|
+
description: 'Allowed values for `cfke.io/instance-family`.',
|
|
2094
|
+
default: []
|
|
2095
|
+
},
|
|
2096
|
+
'topology.kubernetes.io/region': {
|
|
2097
|
+
type: 'array',
|
|
2098
|
+
items: {
|
|
2099
|
+
type: 'string',
|
|
2100
|
+
enum: [
|
|
2101
|
+
'africa-south1',
|
|
2102
|
+
'ap-northeast-1',
|
|
2103
|
+
'ap-northeast-2',
|
|
2104
|
+
'ap-northeast-3',
|
|
2105
|
+
'ap-south-1',
|
|
2106
|
+
'ap-southeast-1',
|
|
2107
|
+
'ap-southeast-2',
|
|
2108
|
+
'ash',
|
|
2109
|
+
'asia-east1',
|
|
2110
|
+
'asia-east2',
|
|
2111
|
+
'asia-northeast1',
|
|
2112
|
+
'asia-northeast2',
|
|
2113
|
+
'asia-northeast3',
|
|
2114
|
+
'asia-south1',
|
|
2115
|
+
'asia-south2',
|
|
2116
|
+
'asia-southeast1',
|
|
2117
|
+
'asia-southeast2',
|
|
2118
|
+
'australia-southeast1',
|
|
2119
|
+
'australia-southeast2',
|
|
2120
|
+
'ca-central-1',
|
|
2121
|
+
'eu-central-1',
|
|
2122
|
+
'eu-central-2',
|
|
2123
|
+
'eu-north-1',
|
|
2124
|
+
'eu-west-1',
|
|
2125
|
+
'eu-west-2',
|
|
2126
|
+
'eu-west-3',
|
|
2127
|
+
'europe-central2',
|
|
2128
|
+
'europe-north1',
|
|
2129
|
+
'europe-southwest1',
|
|
2130
|
+
'europe-west1',
|
|
2131
|
+
'europe-west10',
|
|
2132
|
+
'europe-west12',
|
|
2133
|
+
'europe-west2',
|
|
2134
|
+
'europe-west3',
|
|
2135
|
+
'europe-west4',
|
|
2136
|
+
'europe-west6',
|
|
2137
|
+
'europe-west8',
|
|
2138
|
+
'europe-west9',
|
|
2139
|
+
'fsn1',
|
|
2140
|
+
'hel1',
|
|
2141
|
+
'hil',
|
|
2142
|
+
'me-central1',
|
|
2143
|
+
'me-central2',
|
|
2144
|
+
'me-west1',
|
|
2145
|
+
'nbg1',
|
|
2146
|
+
'northamerica-northeast1',
|
|
2147
|
+
'northamerica-northeast2',
|
|
2148
|
+
'sa-east-1',
|
|
2149
|
+
'sin',
|
|
2150
|
+
'southamerica-east1',
|
|
2151
|
+
'southamerica-west1',
|
|
2152
|
+
'us-central1',
|
|
2153
|
+
'us-east-1',
|
|
2154
|
+
'us-east-2',
|
|
2155
|
+
'us-east1',
|
|
2156
|
+
'us-east4',
|
|
2157
|
+
'us-east5',
|
|
2158
|
+
'us-south1',
|
|
2159
|
+
'us-west-1',
|
|
2160
|
+
'us-west-2',
|
|
2161
|
+
'us-west1',
|
|
2162
|
+
'us-west2',
|
|
2163
|
+
'us-west3',
|
|
2164
|
+
'us-west4'
|
|
2165
|
+
]
|
|
2166
|
+
},
|
|
2167
|
+
description: 'Allowed values for `topology.kubernetes.io/region`.',
|
|
2168
|
+
default: []
|
|
2169
|
+
}
|
|
2170
|
+
},
|
|
2171
|
+
additionalProperties: false,
|
|
2172
|
+
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.',
|
|
2173
|
+
default: {
|
|
2174
|
+
'karpenter.sh/capacity-type': [
|
|
2175
|
+
'on-demand',
|
|
2176
|
+
'spot'
|
|
2177
|
+
],
|
|
2178
|
+
'kubernetes.io/arch': [
|
|
2179
|
+
'amd64'
|
|
2180
|
+
],
|
|
2181
|
+
'cfke.io/instance-family': [],
|
|
2182
|
+
'topology.kubernetes.io/region': []
|
|
2183
|
+
}
|
|
2184
|
+
},
|
|
2185
|
+
scalingProfile: {
|
|
2186
|
+
type: 'string',
|
|
2187
|
+
description: 'Controls scale-up / scale-down responsiveness. `aggressive` prioritizes cost-optimization. `conservative` prioritizes stability of the fleet. Full-overwrite: omit to reset to the default (`conservative`).',
|
|
2188
|
+
default: 'conservative',
|
|
2189
|
+
example: 'conservative',
|
|
2190
|
+
enum: [
|
|
2191
|
+
'aggressive',
|
|
2192
|
+
'conservative'
|
|
2193
|
+
]
|
|
2194
|
+
}
|
|
2195
|
+
},
|
|
2196
|
+
additionalProperties: false,
|
|
2197
|
+
description: 'Mutable fleet configuration. Applied as a full overwrite: any omitted field is reset to its default rather than left unchanged.'
|
|
2198
|
+
};
|
|
2199
|
+
export const InviteCreateInputSchema = {
|
|
2200
|
+
type: 'object',
|
|
2201
|
+
properties: {
|
|
2202
|
+
email: {
|
|
2203
|
+
type: 'string',
|
|
2204
|
+
format: 'email',
|
|
2205
|
+
description: 'Email address of the user to invite.',
|
|
2206
|
+
example: 'email@example.com'
|
|
2207
|
+
},
|
|
2208
|
+
role: {
|
|
2209
|
+
type: 'string',
|
|
2210
|
+
description: 'Role the invited user will be assigned on redemption. Can be \'Administrator\' or \'User\'.',
|
|
2211
|
+
default: 'User',
|
|
2212
|
+
example: 'User',
|
|
2213
|
+
enum: [
|
|
2214
|
+
'Administrator',
|
|
2215
|
+
'User'
|
|
2216
|
+
]
|
|
753
2217
|
}
|
|
754
2218
|
},
|
|
2219
|
+
required: [
|
|
2220
|
+
'email'
|
|
2221
|
+
],
|
|
755
2222
|
additionalProperties: false
|
|
756
2223
|
};
|
|
757
2224
|
export const InviteSchema = {
|
|
@@ -784,9 +2251,21 @@ export const InviteSchema = {
|
|
|
784
2251
|
type: 'string',
|
|
785
2252
|
description: 'Generated unique invite code.',
|
|
786
2253
|
example: '7kUZnH7nnKUFfvc4NK2KQF'
|
|
2254
|
+
},
|
|
2255
|
+
role: {
|
|
2256
|
+
type: 'string',
|
|
2257
|
+
description: 'Role the invited user will be assigned on redemption. Can be \'Administrator\' or \'User\'.',
|
|
2258
|
+
default: 'User',
|
|
2259
|
+
example: 'User',
|
|
2260
|
+
enum: [
|
|
2261
|
+
'Administrator',
|
|
2262
|
+
'User'
|
|
2263
|
+
]
|
|
787
2264
|
}
|
|
788
2265
|
},
|
|
789
|
-
required: [
|
|
2266
|
+
required: [
|
|
2267
|
+
'date_created'
|
|
2268
|
+
],
|
|
790
2269
|
additionalProperties: false
|
|
791
2270
|
};
|
|
792
2271
|
export const InvoiceSchema = {
|
|
@@ -794,23 +2273,18 @@ export const InvoiceSchema = {
|
|
|
794
2273
|
properties: {
|
|
795
2274
|
id: {
|
|
796
2275
|
type: 'string',
|
|
797
|
-
|
|
798
|
-
|
|
799
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
2276
|
+
description: 'Unique identifier of the invoice.',
|
|
2277
|
+
example: 'in_1234567890xCrwxghOTj1234'
|
|
800
2278
|
},
|
|
801
|
-
|
|
802
|
-
type: 'string'
|
|
803
|
-
format: 'uuid',
|
|
804
|
-
description: 'Unique identifier of the organization. UUID v4 string in canonical form',
|
|
805
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
2279
|
+
number: {
|
|
2280
|
+
type: 'string'
|
|
806
2281
|
},
|
|
807
2282
|
status: {
|
|
808
2283
|
type: 'string',
|
|
809
2284
|
description: 'Status of the invoice',
|
|
810
|
-
example: '
|
|
811
|
-
enum: ['DRAFT', 'COMMITTED', 'VOID']
|
|
2285
|
+
example: 'paid'
|
|
812
2286
|
},
|
|
813
|
-
|
|
2287
|
+
total: {
|
|
814
2288
|
type: 'number',
|
|
815
2289
|
format: 'float',
|
|
816
2290
|
description: 'Total amount of the invoice',
|
|
@@ -819,418 +2293,203 @@ export const InvoiceSchema = {
|
|
|
819
2293
|
currency: {
|
|
820
2294
|
type: 'string',
|
|
821
2295
|
description: 'Currency of the invoice',
|
|
822
|
-
example: '
|
|
823
|
-
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']
|
|
2296
|
+
example: 'usd'
|
|
824
2297
|
},
|
|
825
|
-
|
|
826
|
-
type: '
|
|
827
|
-
format: '
|
|
828
|
-
description: '
|
|
829
|
-
example:
|
|
830
|
-
},
|
|
831
|
-
refundAdj: {
|
|
832
|
-
type: 'number',
|
|
833
|
-
format: 'float',
|
|
834
|
-
description: 'Total amount of refund adjustments',
|
|
835
|
-
example: 0
|
|
2298
|
+
created: {
|
|
2299
|
+
type: 'string',
|
|
2300
|
+
format: 'date-time',
|
|
2301
|
+
description: 'Timestamp when the invoice was issued. ISO 8601 date string in the UTC timezone.',
|
|
2302
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
836
2303
|
},
|
|
837
|
-
|
|
2304
|
+
period_start: {
|
|
838
2305
|
type: 'string',
|
|
839
|
-
|
|
840
|
-
|
|
2306
|
+
format: 'date-time',
|
|
2307
|
+
description: 'Billing period start timestamp. ISO 8601 date string in the UTC timezone.',
|
|
2308
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
841
2309
|
},
|
|
842
|
-
|
|
2310
|
+
period_end: {
|
|
843
2311
|
type: 'string',
|
|
844
|
-
|
|
845
|
-
|
|
2312
|
+
format: 'date-time',
|
|
2313
|
+
description: 'Billing period end timestamp. ISO 8601 date string in the UTC timezone.',
|
|
2314
|
+
example: '2023-12-20T13:53:32.000Z'
|
|
846
2315
|
},
|
|
847
|
-
|
|
2316
|
+
invoice_pdf: {
|
|
2317
|
+
type: 'string'
|
|
2318
|
+
}
|
|
2319
|
+
},
|
|
2320
|
+
required: [
|
|
2321
|
+
'created',
|
|
2322
|
+
'period_start',
|
|
2323
|
+
'period_end'
|
|
2324
|
+
],
|
|
2325
|
+
additionalProperties: false
|
|
2326
|
+
};
|
|
2327
|
+
export const MarketplaceListingFilesSchema = {
|
|
2328
|
+
type: 'object',
|
|
2329
|
+
properties: {
|
|
2330
|
+
chartYaml: {
|
|
848
2331
|
type: 'string',
|
|
849
|
-
description: '
|
|
850
|
-
example: '
|
|
2332
|
+
description: 'Raw Chart.yaml content from the Helm chart',
|
|
2333
|
+
example: 'apiVersion: v2\nname: nginx-ingress\nversion: 1.18.2-cfke.45\nappVersion: 1.9.4'
|
|
851
2334
|
},
|
|
852
|
-
|
|
853
|
-
type: '
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
example: 100
|
|
2335
|
+
valuesYaml: {
|
|
2336
|
+
type: 'string',
|
|
2337
|
+
description: 'Raw values.yaml content from the Helm chart',
|
|
2338
|
+
example: 'replicaCount: 1\nimage:\n repository: nginx\n tag: latest'
|
|
857
2339
|
},
|
|
858
|
-
|
|
2340
|
+
valuesSchemaJson: {
|
|
2341
|
+
type: 'string',
|
|
2342
|
+
description: 'JSON schema for values.yaml as a string',
|
|
2343
|
+
example: '{"type":"object","properties":{"replicaCount":{"type":"number"}}}'
|
|
2344
|
+
}
|
|
2345
|
+
},
|
|
2346
|
+
additionalProperties: false
|
|
2347
|
+
};
|
|
2348
|
+
export const MarketplaceListingSchema = {
|
|
2349
|
+
type: 'object',
|
|
2350
|
+
properties: {
|
|
2351
|
+
name: {
|
|
859
2352
|
type: 'string',
|
|
860
|
-
description: '
|
|
861
|
-
example: '
|
|
2353
|
+
description: 'Name of the chart',
|
|
2354
|
+
example: 'nginx-ingress'
|
|
862
2355
|
},
|
|
863
|
-
|
|
2356
|
+
versions: {
|
|
864
2357
|
type: 'array',
|
|
865
2358
|
items: {
|
|
866
|
-
type: '
|
|
867
|
-
|
|
868
|
-
|
|
869
|
-
|
|
870
|
-
format: 'uuid',
|
|
871
|
-
description: 'Unique identifier of the invoice item. UUID v4 string in canonical form',
|
|
872
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
873
|
-
},
|
|
874
|
-
linkedInvoiceItemId: {
|
|
875
|
-
type: 'string',
|
|
876
|
-
format: 'uuid',
|
|
877
|
-
description: 'Unique identifier of the linked invoice item. UUID v4 string in canonical form',
|
|
878
|
-
example: '415026b6-f00f-44f8-968d-fc6ef4d0fc6d'
|
|
879
|
-
},
|
|
880
|
-
productName: {
|
|
881
|
-
type: 'string',
|
|
882
|
-
description: 'Name of the product',
|
|
883
|
-
example: 'Research team'
|
|
884
|
-
},
|
|
885
|
-
planName: {
|
|
886
|
-
type: 'string',
|
|
887
|
-
description: 'Name of the plan',
|
|
888
|
-
example: 'Plan A'
|
|
889
|
-
},
|
|
890
|
-
phaseName: {
|
|
891
|
-
type: 'string',
|
|
892
|
-
description: 'Name of the phase',
|
|
893
|
-
example: 'Phase A'
|
|
894
|
-
},
|
|
895
|
-
usageName: {
|
|
896
|
-
type: 'string',
|
|
897
|
-
description: 'Name of the usage',
|
|
898
|
-
example: 'Usage A'
|
|
899
|
-
},
|
|
900
|
-
prettyProductName: {
|
|
901
|
-
type: 'string',
|
|
902
|
-
description: 'Pretty name of the product',
|
|
903
|
-
example: 'Research team'
|
|
904
|
-
},
|
|
905
|
-
prettyPlanName: {
|
|
906
|
-
type: 'string',
|
|
907
|
-
description: 'Pretty name of the plan',
|
|
908
|
-
example: 'Plan A'
|
|
909
|
-
},
|
|
910
|
-
prettyPhaseName: {
|
|
911
|
-
type: 'string',
|
|
912
|
-
description: 'Pretty name of the phase',
|
|
913
|
-
example: 'Phase A'
|
|
914
|
-
},
|
|
915
|
-
prettyUsageName: {
|
|
916
|
-
type: 'string',
|
|
917
|
-
description: 'Pretty name of the usage',
|
|
918
|
-
example: 'Usage A'
|
|
919
|
-
},
|
|
920
|
-
itemType: {
|
|
921
|
-
type: 'string',
|
|
922
|
-
description: 'Type of the invoice item',
|
|
923
|
-
example: 'EXTERNAL_CHARGE',
|
|
924
|
-
enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
|
|
925
|
-
},
|
|
926
|
-
description: {
|
|
927
|
-
type: 'string',
|
|
928
|
-
description: 'Description of the invoice item',
|
|
929
|
-
example: 'Description of the invoice item'
|
|
930
|
-
},
|
|
931
|
-
startDate: {
|
|
932
|
-
type: 'string',
|
|
933
|
-
description: 'Start date of the invoice item',
|
|
934
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
935
|
-
},
|
|
936
|
-
endDate: {
|
|
937
|
-
type: 'string',
|
|
938
|
-
description: 'End date of the invoice item',
|
|
939
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
940
|
-
},
|
|
941
|
-
amount: {
|
|
942
|
-
type: 'number',
|
|
943
|
-
format: 'float',
|
|
944
|
-
description: 'Amount of the invoice item',
|
|
945
|
-
example: 100
|
|
946
|
-
},
|
|
947
|
-
rate: {
|
|
948
|
-
type: 'number',
|
|
949
|
-
format: 'float',
|
|
950
|
-
description: 'Rate of the invoice item',
|
|
951
|
-
example: 100
|
|
952
|
-
},
|
|
953
|
-
currency: {
|
|
954
|
-
type: 'string',
|
|
955
|
-
description: 'Currency of the invoice item',
|
|
956
|
-
example: 'USD',
|
|
957
|
-
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']
|
|
958
|
-
},
|
|
959
|
-
quantity: {
|
|
960
|
-
type: 'number',
|
|
961
|
-
format: 'float',
|
|
962
|
-
description: 'Quantity of the invoice item',
|
|
963
|
-
example: 1
|
|
964
|
-
},
|
|
965
|
-
itemDetails: {
|
|
966
|
-
type: 'string',
|
|
967
|
-
description: 'Details of the invoice item',
|
|
968
|
-
example: 'Details of the invoice item'
|
|
969
|
-
},
|
|
970
|
-
catalogEffectiveDate: {
|
|
971
|
-
type: 'string',
|
|
972
|
-
description: 'Effective date of the catalog',
|
|
973
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
974
|
-
},
|
|
975
|
-
childItems: {
|
|
976
|
-
type: 'array',
|
|
977
|
-
items: {
|
|
978
|
-
oneOf: [
|
|
979
|
-
{
|
|
980
|
-
type: 'array'
|
|
981
|
-
},
|
|
982
|
-
{
|
|
983
|
-
type: 'boolean'
|
|
984
|
-
},
|
|
985
|
-
{
|
|
986
|
-
type: 'number'
|
|
987
|
-
},
|
|
988
|
-
{
|
|
989
|
-
type: 'object',
|
|
990
|
-
additionalProperties: true
|
|
991
|
-
},
|
|
992
|
-
{
|
|
993
|
-
type: 'string'
|
|
994
|
-
}
|
|
995
|
-
]
|
|
996
|
-
},
|
|
997
|
-
description: 'Child items of the invoice item'
|
|
998
|
-
}
|
|
999
|
-
},
|
|
1000
|
-
additionalProperties: false
|
|
2359
|
+
type: 'string',
|
|
2360
|
+
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-]+)*))?$',
|
|
2361
|
+
description: 'Specific version of the chart',
|
|
2362
|
+
example: '1.18.2-cfke.45'
|
|
1001
2363
|
},
|
|
1002
|
-
description: '
|
|
2364
|
+
description: 'Available versions of the chart'
|
|
1003
2365
|
},
|
|
1004
|
-
|
|
2366
|
+
version_channels: {
|
|
1005
2367
|
type: 'array',
|
|
1006
2368
|
items: {
|
|
1007
|
-
type: '
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1017
|
-
|
|
1018
|
-
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
2369
|
+
type: 'string',
|
|
2370
|
+
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-]+)*))?$',
|
|
2371
|
+
description: 'Version channel pattern',
|
|
2372
|
+
example: '1.18.x-cfke.x'
|
|
2373
|
+
},
|
|
2374
|
+
description: 'Version channels for the chart'
|
|
2375
|
+
},
|
|
2376
|
+
latestVersion: {
|
|
2377
|
+
type: 'string',
|
|
2378
|
+
description: 'Latest version of the chart',
|
|
2379
|
+
example: '1.18.2-cfke.45'
|
|
2380
|
+
},
|
|
2381
|
+
metadata: {
|
|
2382
|
+
type: 'object',
|
|
2383
|
+
properties: {
|
|
2384
|
+
name: {
|
|
2385
|
+
type: 'string',
|
|
2386
|
+
description: 'Chart name from metadata',
|
|
2387
|
+
example: 'nginx-ingress'
|
|
2388
|
+
},
|
|
2389
|
+
version: {
|
|
2390
|
+
type: 'string',
|
|
2391
|
+
description: 'Chart version from metadata',
|
|
2392
|
+
example: '1.18.2-cfke.45'
|
|
2393
|
+
},
|
|
2394
|
+
description: {
|
|
2395
|
+
type: 'string',
|
|
2396
|
+
description: 'Chart description',
|
|
2397
|
+
example: 'NGINX Ingress Controller for Kubernetes'
|
|
2398
|
+
},
|
|
2399
|
+
appVersion: {
|
|
2400
|
+
type: 'string',
|
|
2401
|
+
description: 'Application version',
|
|
2402
|
+
example: '1.9.4'
|
|
2403
|
+
},
|
|
2404
|
+
apiVersion: {
|
|
2405
|
+
type: 'string',
|
|
2406
|
+
description: 'Helm API version',
|
|
2407
|
+
example: 'v2'
|
|
2408
|
+
},
|
|
2409
|
+
keywords: {
|
|
2410
|
+
type: 'array',
|
|
2411
|
+
items: {
|
|
2412
|
+
type: 'string'
|
|
1025
2413
|
},
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
2414
|
+
description: 'Chart keywords',
|
|
2415
|
+
example: [
|
|
2416
|
+
'ingress',
|
|
2417
|
+
'nginx',
|
|
2418
|
+
'load-balancer'
|
|
2419
|
+
]
|
|
2420
|
+
},
|
|
2421
|
+
home: {
|
|
2422
|
+
type: 'string',
|
|
2423
|
+
description: 'Chart home URL',
|
|
2424
|
+
example: 'https://kubernetes.github.io/ingress-nginx/'
|
|
2425
|
+
},
|
|
2426
|
+
icon: {
|
|
2427
|
+
type: 'string',
|
|
2428
|
+
description: 'A URL to an SVG or PNG image to be used as an icon',
|
|
2429
|
+
example: 'https://cloudfleet.ai/images/marketplace/icons/ingress-nginx.png'
|
|
2430
|
+
},
|
|
2431
|
+
sources: {
|
|
2432
|
+
type: 'array',
|
|
2433
|
+
items: {
|
|
2434
|
+
type: 'string'
|
|
1030
2435
|
},
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1034
|
-
|
|
1035
|
-
},
|
|
1036
|
-
usageName: {
|
|
1037
|
-
type: 'string',
|
|
1038
|
-
description: 'Name of the usage',
|
|
1039
|
-
example: 'Usage A'
|
|
1040
|
-
},
|
|
1041
|
-
prettyProductName: {
|
|
1042
|
-
type: 'string',
|
|
1043
|
-
description: 'Pretty name of the product',
|
|
1044
|
-
example: 'Research team'
|
|
1045
|
-
},
|
|
1046
|
-
prettyPlanName: {
|
|
1047
|
-
type: 'string',
|
|
1048
|
-
description: 'Pretty name of the plan',
|
|
1049
|
-
example: 'Plan A'
|
|
1050
|
-
},
|
|
1051
|
-
prettyPhaseName: {
|
|
1052
|
-
type: 'string',
|
|
1053
|
-
description: 'Pretty name of the phase',
|
|
1054
|
-
example: 'Phase A'
|
|
1055
|
-
},
|
|
1056
|
-
prettyUsageName: {
|
|
1057
|
-
type: 'string',
|
|
1058
|
-
description: 'Pretty name of the usage',
|
|
1059
|
-
example: 'Usage A'
|
|
1060
|
-
},
|
|
1061
|
-
itemType: {
|
|
1062
|
-
type: 'string',
|
|
1063
|
-
description: 'Type of the invoice item',
|
|
1064
|
-
example: 'EXTERNAL_CHARGE',
|
|
1065
|
-
enum: ['EXTERNAL_CHARGE', 'FIXED', 'RECURRING', 'REPAIR_ADJ', 'CBA_ADJ', 'CREDIT_ADJ', 'ITEM_ADJ', 'USAGE', 'TAX', 'PARENT_SUMMARY']
|
|
1066
|
-
},
|
|
1067
|
-
description: {
|
|
1068
|
-
type: 'string',
|
|
1069
|
-
description: 'Description of the invoice item',
|
|
1070
|
-
example: 'Description of the invoice item'
|
|
1071
|
-
},
|
|
1072
|
-
startDate: {
|
|
1073
|
-
type: 'string',
|
|
1074
|
-
description: 'Start date of the invoice item',
|
|
1075
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1076
|
-
},
|
|
1077
|
-
endDate: {
|
|
1078
|
-
type: 'string',
|
|
1079
|
-
description: 'End date of the invoice item',
|
|
1080
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1081
|
-
},
|
|
1082
|
-
amount: {
|
|
1083
|
-
type: 'number',
|
|
1084
|
-
format: 'float',
|
|
1085
|
-
description: 'Amount of the invoice item',
|
|
1086
|
-
example: 100
|
|
1087
|
-
},
|
|
1088
|
-
rate: {
|
|
1089
|
-
type: 'number',
|
|
1090
|
-
format: 'float',
|
|
1091
|
-
description: 'Rate of the invoice item',
|
|
1092
|
-
example: 100
|
|
1093
|
-
},
|
|
1094
|
-
currency: {
|
|
1095
|
-
type: 'string',
|
|
1096
|
-
description: 'Currency of the invoice item',
|
|
1097
|
-
example: 'USD',
|
|
1098
|
-
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']
|
|
1099
|
-
},
|
|
1100
|
-
quantity: {
|
|
1101
|
-
type: 'number',
|
|
1102
|
-
format: 'float',
|
|
1103
|
-
description: 'Quantity of the invoice item',
|
|
1104
|
-
example: 1
|
|
1105
|
-
},
|
|
1106
|
-
itemDetails: {
|
|
1107
|
-
type: 'string',
|
|
1108
|
-
description: 'Details of the invoice item',
|
|
1109
|
-
example: 'Details of the invoice item'
|
|
1110
|
-
},
|
|
1111
|
-
catalogEffectiveDate: {
|
|
1112
|
-
type: 'string',
|
|
1113
|
-
description: 'Effective date of the catalog',
|
|
1114
|
-
example: '2019-01-01T00:00:00.000Z'
|
|
1115
|
-
},
|
|
1116
|
-
childItems: {
|
|
1117
|
-
type: 'array',
|
|
1118
|
-
items: {
|
|
1119
|
-
oneOf: [
|
|
1120
|
-
{
|
|
1121
|
-
type: 'array'
|
|
1122
|
-
},
|
|
1123
|
-
{
|
|
1124
|
-
type: 'boolean'
|
|
1125
|
-
},
|
|
1126
|
-
{
|
|
1127
|
-
type: 'number'
|
|
1128
|
-
},
|
|
1129
|
-
{
|
|
1130
|
-
type: 'object',
|
|
1131
|
-
additionalProperties: true
|
|
1132
|
-
},
|
|
1133
|
-
{
|
|
1134
|
-
type: 'string'
|
|
1135
|
-
}
|
|
1136
|
-
]
|
|
1137
|
-
},
|
|
1138
|
-
description: 'Child items of the invoice item'
|
|
1139
|
-
}
|
|
2436
|
+
description: 'Chart source URLs',
|
|
2437
|
+
example: [
|
|
2438
|
+
'https://github.com/kubernetes/ingress-nginx'
|
|
2439
|
+
]
|
|
1140
2440
|
},
|
|
1141
|
-
|
|
2441
|
+
maintainers: {
|
|
2442
|
+
type: 'array',
|
|
2443
|
+
items: {
|
|
2444
|
+
type: 'object',
|
|
2445
|
+
properties: {
|
|
2446
|
+
name: {
|
|
2447
|
+
type: 'string',
|
|
2448
|
+
description: 'Maintainer name',
|
|
2449
|
+
example: 'NGINX Team'
|
|
2450
|
+
},
|
|
2451
|
+
email: {
|
|
2452
|
+
type: 'string',
|
|
2453
|
+
description: 'Maintainer email',
|
|
2454
|
+
example: 'support@nginx.org'
|
|
2455
|
+
}
|
|
2456
|
+
},
|
|
2457
|
+
required: [
|
|
2458
|
+
'name'
|
|
2459
|
+
],
|
|
2460
|
+
additionalProperties: false
|
|
2461
|
+
},
|
|
2462
|
+
description: 'Chart maintainers'
|
|
2463
|
+
}
|
|
1142
2464
|
},
|
|
1143
|
-
|
|
2465
|
+
required: [
|
|
2466
|
+
'name',
|
|
2467
|
+
'version'
|
|
2468
|
+
],
|
|
2469
|
+
additionalProperties: false,
|
|
2470
|
+
description: 'Chart metadata'
|
|
1144
2471
|
}
|
|
1145
2472
|
},
|
|
2473
|
+
required: [
|
|
2474
|
+
'name',
|
|
2475
|
+
'versions',
|
|
2476
|
+
'version_channels',
|
|
2477
|
+
'latestVersion'
|
|
2478
|
+
],
|
|
1146
2479
|
additionalProperties: false
|
|
1147
2480
|
};
|
|
1148
|
-
export const
|
|
2481
|
+
export const OrganizationCreateInputSchema = {
|
|
1149
2482
|
type: 'object',
|
|
1150
2483
|
properties: {
|
|
1151
|
-
|
|
1152
|
-
type: 'string',
|
|
1153
|
-
maxLength: 63,
|
|
1154
|
-
minLength: 1,
|
|
1155
|
-
pattern: '^[a-z0-9]([-a-z0-9]*[a-z0-9])?$',
|
|
1156
|
-
description: 'Id of the chart listing',
|
|
1157
|
-
example: 'portworx-enterprise-disaster-recovery-baremetal'
|
|
1158
|
-
},
|
|
1159
|
-
name: {
|
|
1160
|
-
type: 'string',
|
|
1161
|
-
description: 'Name of the chart listing',
|
|
1162
|
-
example: 'Portworx Enterprise + Disaster Recovery - Baremetal'
|
|
1163
|
-
},
|
|
1164
|
-
developer: {
|
|
1165
|
-
type: 'string',
|
|
1166
|
-
description: 'Author of the chart listing',
|
|
1167
|
-
example: 'Portworx'
|
|
1168
|
-
},
|
|
1169
|
-
description: {
|
|
1170
|
-
type: 'string',
|
|
1171
|
-
description: 'Short description of the chart listing',
|
|
1172
|
-
example: 'Run Kubernetes with unmatched scalability, availability, and self-service access to any storage'
|
|
1173
|
-
},
|
|
1174
|
-
logoUrl: {
|
|
1175
|
-
type: 'string',
|
|
1176
|
-
description: 'Logo of the chart listing',
|
|
1177
|
-
example: 'https://portworx.com/wp-content/themes/portworx/assets/images/header/portworx-logo.png'
|
|
1178
|
-
},
|
|
1179
|
-
longDescription: {
|
|
2484
|
+
type: {
|
|
1180
2485
|
type: 'string',
|
|
1181
|
-
description: '
|
|
1182
|
-
example: '
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
type: 'string',
|
|
1188
|
-
example: 'AI & Machine Learning'
|
|
1189
|
-
},
|
|
1190
|
-
description: 'Tags of the chart'
|
|
1191
|
-
},
|
|
1192
|
-
version_channels: {
|
|
1193
|
-
type: 'array',
|
|
1194
|
-
items: {
|
|
1195
|
-
type: 'string',
|
|
1196
|
-
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-]+)*))?$',
|
|
1197
|
-
description: 'Version of the chart.',
|
|
1198
|
-
example: '2.x.x-cfke.x'
|
|
1199
|
-
}
|
|
2486
|
+
description: 'Type of the organization. `business` for legal entities, `personal` for individuals.',
|
|
2487
|
+
example: 'business',
|
|
2488
|
+
enum: [
|
|
2489
|
+
'business',
|
|
2490
|
+
'personal'
|
|
2491
|
+
]
|
|
1200
2492
|
},
|
|
1201
|
-
value_schemas: {
|
|
1202
|
-
type: 'array',
|
|
1203
|
-
items: {
|
|
1204
|
-
type: 'object',
|
|
1205
|
-
properties: {
|
|
1206
|
-
version: {
|
|
1207
|
-
type: 'string',
|
|
1208
|
-
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-]+)*))?$',
|
|
1209
|
-
description: 'Version of the chart.',
|
|
1210
|
-
example: '2.1.1-cfke.123'
|
|
1211
|
-
},
|
|
1212
|
-
schema: {
|
|
1213
|
-
type: 'string',
|
|
1214
|
-
description: 'Schema of the chart values. JSON Schema as string'
|
|
1215
|
-
},
|
|
1216
|
-
placeholder: {
|
|
1217
|
-
type: 'string',
|
|
1218
|
-
description: 'Schema of the chart values',
|
|
1219
|
-
example: `foo: 1
|
|
1220
|
-
bar: example`
|
|
1221
|
-
}
|
|
1222
|
-
},
|
|
1223
|
-
required: ['version', 'schema', 'placeholder'],
|
|
1224
|
-
additionalProperties: false
|
|
1225
|
-
}
|
|
1226
|
-
}
|
|
1227
|
-
},
|
|
1228
|
-
required: ['id', 'name', 'developer', 'description', 'logoUrl', 'longDescription', 'categories', 'version_channels', 'value_schemas'],
|
|
1229
|
-
additionalProperties: false
|
|
1230
|
-
};
|
|
1231
|
-
export const OrganizationCreateInputSchema = {
|
|
1232
|
-
type: 'object',
|
|
1233
|
-
properties: {
|
|
1234
2493
|
email: {
|
|
1235
2494
|
type: 'string',
|
|
1236
2495
|
format: 'email',
|
|
@@ -1239,11 +2498,13 @@ export const OrganizationCreateInputSchema = {
|
|
|
1239
2498
|
},
|
|
1240
2499
|
first_name: {
|
|
1241
2500
|
type: 'string',
|
|
2501
|
+
minLength: 1,
|
|
1242
2502
|
description: 'First name of the billing contact person.',
|
|
1243
2503
|
example: 'John'
|
|
1244
2504
|
},
|
|
1245
2505
|
last_name: {
|
|
1246
2506
|
type: 'string',
|
|
2507
|
+
minLength: 1,
|
|
1247
2508
|
description: 'Last name of the billing contact person.',
|
|
1248
2509
|
example: 'Doe'
|
|
1249
2510
|
},
|
|
@@ -1261,7 +2522,28 @@ export const OrganizationCreateInputSchema = {
|
|
|
1261
2522
|
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.'
|
|
1262
2523
|
}
|
|
1263
2524
|
},
|
|
1264
|
-
required: [
|
|
2525
|
+
required: [
|
|
2526
|
+
'type',
|
|
2527
|
+
'email',
|
|
2528
|
+
'first_name',
|
|
2529
|
+
'last_name',
|
|
2530
|
+
'company_name',
|
|
2531
|
+
'password'
|
|
2532
|
+
],
|
|
2533
|
+
additionalProperties: false
|
|
2534
|
+
};
|
|
2535
|
+
export const OrganizationCreateOutputSchema = {
|
|
2536
|
+
type: 'object',
|
|
2537
|
+
properties: {
|
|
2538
|
+
id: {
|
|
2539
|
+
type: 'string',
|
|
2540
|
+
description: 'Unique identifier of the newly created organization. Generated by the API and safe to use for client-side tracking immediately.',
|
|
2541
|
+
example: 'organization-id'
|
|
2542
|
+
}
|
|
2543
|
+
},
|
|
2544
|
+
required: [
|
|
2545
|
+
'id'
|
|
2546
|
+
],
|
|
1265
2547
|
additionalProperties: false
|
|
1266
2548
|
};
|
|
1267
2549
|
export const OrganizationSchema = {
|
|
@@ -1280,6 +2562,15 @@ export const OrganizationSchema = {
|
|
|
1280
2562
|
description: 'Name of the legal entity. This name will be used in invoices. Use your first and last name for individual accounts.',
|
|
1281
2563
|
example: 'ACME Corp.'
|
|
1282
2564
|
},
|
|
2565
|
+
type: {
|
|
2566
|
+
type: 'string',
|
|
2567
|
+
description: 'Type of the organization. `business` for legal entities, `personal` for individuals.',
|
|
2568
|
+
example: 'business',
|
|
2569
|
+
enum: [
|
|
2570
|
+
'business',
|
|
2571
|
+
'personal'
|
|
2572
|
+
]
|
|
2573
|
+
},
|
|
1283
2574
|
date_created: {
|
|
1284
2575
|
type: 'string',
|
|
1285
2576
|
format: 'date-time',
|
|
@@ -1311,123 +2602,894 @@ export const OrganizationSchema = {
|
|
|
1311
2602
|
description: 'Available number of Pro clusters that can be created.',
|
|
1312
2603
|
example: 999
|
|
1313
2604
|
},
|
|
1314
|
-
|
|
2605
|
+
enterprise_clusters_max: {
|
|
1315
2606
|
type: 'integer',
|
|
1316
2607
|
minimum: 0,
|
|
1317
|
-
description: 'Maximum number of
|
|
2608
|
+
description: 'Maximum number of Enterprise clusters that can be created.',
|
|
2609
|
+
example: 999
|
|
2610
|
+
},
|
|
2611
|
+
enterprise_clusters_available: {
|
|
2612
|
+
type: 'integer',
|
|
2613
|
+
description: 'Available number of Enterprise clusters that can be created.',
|
|
1318
2614
|
example: 999
|
|
1319
2615
|
},
|
|
1320
|
-
|
|
2616
|
+
fleets_max: {
|
|
1321
2617
|
type: 'integer',
|
|
1322
2618
|
minimum: 0,
|
|
1323
|
-
description: 'Maximum number of
|
|
2619
|
+
description: 'Maximum number of fleets that can be created per cluster.',
|
|
1324
2620
|
example: 999
|
|
1325
2621
|
},
|
|
1326
2622
|
cluster_tiers: {
|
|
1327
2623
|
type: 'array',
|
|
1328
2624
|
items: {
|
|
1329
2625
|
type: 'string',
|
|
1330
|
-
example: 'basic'
|
|
2626
|
+
example: 'basic'
|
|
2627
|
+
},
|
|
2628
|
+
minItems: 0,
|
|
2629
|
+
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
2630
|
+
},
|
|
2631
|
+
regions: {
|
|
2632
|
+
type: 'array',
|
|
2633
|
+
items: {
|
|
2634
|
+
type: 'string',
|
|
2635
|
+
example: 'northamerica-central-1a'
|
|
2636
|
+
},
|
|
2637
|
+
minItems: 1,
|
|
2638
|
+
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
2639
|
+
},
|
|
2640
|
+
versions: {
|
|
2641
|
+
type: 'array',
|
|
2642
|
+
items: {
|
|
2643
|
+
type: 'object',
|
|
2644
|
+
properties: {
|
|
2645
|
+
id: {
|
|
2646
|
+
type: 'string',
|
|
2647
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2648
|
+
example: '1.33.x-cfke.x'
|
|
2649
|
+
},
|
|
2650
|
+
label: {
|
|
2651
|
+
type: 'string',
|
|
2652
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2653
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
2654
|
+
}
|
|
2655
|
+
},
|
|
2656
|
+
required: [
|
|
2657
|
+
'id',
|
|
2658
|
+
'label'
|
|
2659
|
+
],
|
|
2660
|
+
additionalProperties: false
|
|
2661
|
+
},
|
|
2662
|
+
minItems: 1,
|
|
2663
|
+
description: 'List of CFKE control plane versions available for the organization.'
|
|
2664
|
+
},
|
|
2665
|
+
cfcr_storage_gb: {
|
|
2666
|
+
type: 'integer',
|
|
2667
|
+
minimum: -1,
|
|
2668
|
+
description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
|
|
2669
|
+
example: 500
|
|
2670
|
+
}
|
|
2671
|
+
},
|
|
2672
|
+
required: [
|
|
2673
|
+
'basic_clusters_max',
|
|
2674
|
+
'basic_clusters_available',
|
|
2675
|
+
'pro_clusters_max',
|
|
2676
|
+
'pro_clusters_available',
|
|
2677
|
+
'enterprise_clusters_max',
|
|
2678
|
+
'enterprise_clusters_available',
|
|
2679
|
+
'fleets_max',
|
|
2680
|
+
'cluster_tiers',
|
|
2681
|
+
'regions',
|
|
2682
|
+
'versions',
|
|
2683
|
+
'cfcr_storage_gb'
|
|
2684
|
+
],
|
|
2685
|
+
additionalProperties: false,
|
|
2686
|
+
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.'
|
|
2687
|
+
},
|
|
2688
|
+
status: {
|
|
2689
|
+
type: 'string',
|
|
2690
|
+
description: 'Status of the organization. Can be `active` or `closed`, or `suspended`.',
|
|
2691
|
+
enum: [
|
|
2692
|
+
'active',
|
|
2693
|
+
'closed',
|
|
2694
|
+
'suspended'
|
|
2695
|
+
]
|
|
2696
|
+
},
|
|
2697
|
+
verification: {
|
|
2698
|
+
type: 'string',
|
|
2699
|
+
description: 'Verification status of the organization, which determines the assigned quota. `none` when billing information is incomplete, `submitted` when billing information is complete but the organization is not yet verified, `verified` when the organization is verified.',
|
|
2700
|
+
example: 'verified',
|
|
2701
|
+
enum: [
|
|
2702
|
+
'none',
|
|
2703
|
+
'submitted',
|
|
2704
|
+
'verified'
|
|
2705
|
+
]
|
|
2706
|
+
}
|
|
2707
|
+
},
|
|
2708
|
+
required: [
|
|
2709
|
+
'id',
|
|
2710
|
+
'type',
|
|
2711
|
+
'date_created',
|
|
2712
|
+
'quota',
|
|
2713
|
+
'status',
|
|
2714
|
+
'verification'
|
|
2715
|
+
],
|
|
2716
|
+
additionalProperties: false
|
|
2717
|
+
};
|
|
2718
|
+
export const PaymentMethodSchema = {
|
|
2719
|
+
type: 'object',
|
|
2720
|
+
properties: {
|
|
2721
|
+
id: {
|
|
2722
|
+
type: 'string',
|
|
2723
|
+
description: 'Payment method identifier. Stripe payment method id for cards/SEPA; the constant `bank_transfer` for the invoice/bank-transfer method. Used to set as default or delete the payment method.',
|
|
2724
|
+
example: 'pm_1MtwBwLkdIwHu7ix28a3tqPa'
|
|
2725
|
+
},
|
|
2726
|
+
type: {
|
|
2727
|
+
type: 'string',
|
|
2728
|
+
description: 'Payment method type. `card`, `sepa_debit` for SEPA Direct Debit (business accounts only), or `bank_transfer` for paying invoices by bank transfer.',
|
|
2729
|
+
example: 'card',
|
|
2730
|
+
enum: [
|
|
2731
|
+
'card',
|
|
2732
|
+
'sepa_debit',
|
|
2733
|
+
'bank_transfer'
|
|
2734
|
+
]
|
|
2735
|
+
},
|
|
2736
|
+
last4: {
|
|
2737
|
+
type: 'string',
|
|
2738
|
+
nullable: true,
|
|
2739
|
+
description: 'Last 4 digits of the payment card number, of the bank account (IBAN) for SEPA Direct Debit, or of the destination IBAN for bank transfer.',
|
|
2740
|
+
example: '4242'
|
|
2741
|
+
},
|
|
2742
|
+
exp_month: {
|
|
2743
|
+
type: 'integer',
|
|
2744
|
+
minimum: 1,
|
|
2745
|
+
maximum: 12,
|
|
2746
|
+
nullable: true,
|
|
2747
|
+
description: 'Two-digit number representing the card\'s expiration month. Null for SEPA Direct Debit and bank transfer.',
|
|
2748
|
+
example: 12
|
|
2749
|
+
},
|
|
2750
|
+
exp_year: {
|
|
2751
|
+
type: 'integer',
|
|
2752
|
+
nullable: true,
|
|
2753
|
+
description: 'Four-digit number representing the card\'s expiration year. May be in the past for an expired card still on file. Null for SEPA Direct Debit and bank transfer.',
|
|
2754
|
+
example: 2028
|
|
2755
|
+
},
|
|
2756
|
+
brand: {
|
|
2757
|
+
type: 'string',
|
|
2758
|
+
nullable: true,
|
|
2759
|
+
description: 'Payment card brand as reported by Stripe, e.g. `visa`, `mastercard`, `amex`, `cartes_bancaires`, or `unknown`. Null for SEPA Direct Debit and bank transfer.',
|
|
2760
|
+
example: 'visa'
|
|
2761
|
+
},
|
|
2762
|
+
iban: {
|
|
2763
|
+
type: 'string',
|
|
2764
|
+
nullable: true,
|
|
2765
|
+
description: 'Full destination IBAN to send bank transfers to. Set only for `bank_transfer`; null otherwise. This is Cloudfleet\'s virtual receiving account, shown in full so the customer can pay into it.',
|
|
2766
|
+
example: 'DE11243015658023127510'
|
|
2767
|
+
},
|
|
2768
|
+
bic: {
|
|
2769
|
+
type: 'string',
|
|
2770
|
+
nullable: true,
|
|
2771
|
+
description: 'BIC/SWIFT of the destination bank for bank transfers. Set only for `bank_transfer`; null otherwise.',
|
|
2772
|
+
example: 'SOGEDEFFXXX'
|
|
2773
|
+
},
|
|
2774
|
+
account_holder_name: {
|
|
2775
|
+
type: 'string',
|
|
2776
|
+
nullable: true,
|
|
2777
|
+
description: 'Account holder name of the destination bank account for bank transfers. Set only for `bank_transfer`; null otherwise.',
|
|
2778
|
+
example: 'Cloudfleet GmbH'
|
|
2779
|
+
},
|
|
2780
|
+
is_default: {
|
|
2781
|
+
type: 'boolean',
|
|
2782
|
+
description: 'Whether this payment method is the default used for invoices and active subscriptions. Always false for `bank_transfer` (it cannot be a Stripe default payment method).',
|
|
2783
|
+
example: true
|
|
2784
|
+
}
|
|
2785
|
+
},
|
|
2786
|
+
required: [
|
|
2787
|
+
'id',
|
|
2788
|
+
'type',
|
|
2789
|
+
'last4',
|
|
2790
|
+
'exp_month',
|
|
2791
|
+
'exp_year',
|
|
2792
|
+
'brand',
|
|
2793
|
+
'iban',
|
|
2794
|
+
'bic',
|
|
2795
|
+
'account_holder_name',
|
|
2796
|
+
'is_default'
|
|
2797
|
+
],
|
|
2798
|
+
additionalProperties: false
|
|
2799
|
+
};
|
|
2800
|
+
export const PlatformQuotaSchema = {
|
|
2801
|
+
type: 'object',
|
|
2802
|
+
properties: {
|
|
2803
|
+
basic_clusters_max: {
|
|
2804
|
+
type: 'integer',
|
|
2805
|
+
minimum: 0,
|
|
2806
|
+
description: 'Maximum number of Basic clusters that can be created.',
|
|
2807
|
+
example: 999
|
|
2808
|
+
},
|
|
2809
|
+
basic_clusters_available: {
|
|
2810
|
+
type: 'integer',
|
|
2811
|
+
description: 'Available number of Basic clusters that can be created.',
|
|
2812
|
+
example: 999
|
|
2813
|
+
},
|
|
2814
|
+
pro_clusters_max: {
|
|
2815
|
+
type: 'integer',
|
|
2816
|
+
minimum: 0,
|
|
2817
|
+
description: 'Maximum number of Pro clusters that can be created.',
|
|
2818
|
+
example: 999
|
|
2819
|
+
},
|
|
2820
|
+
pro_clusters_available: {
|
|
2821
|
+
type: 'integer',
|
|
2822
|
+
description: 'Available number of Pro clusters that can be created.',
|
|
2823
|
+
example: 999
|
|
2824
|
+
},
|
|
2825
|
+
enterprise_clusters_max: {
|
|
2826
|
+
type: 'integer',
|
|
2827
|
+
minimum: 0,
|
|
2828
|
+
description: 'Maximum number of Enterprise clusters that can be created.',
|
|
2829
|
+
example: 999
|
|
2830
|
+
},
|
|
2831
|
+
enterprise_clusters_available: {
|
|
2832
|
+
type: 'integer',
|
|
2833
|
+
description: 'Available number of Enterprise clusters that can be created.',
|
|
2834
|
+
example: 999
|
|
2835
|
+
},
|
|
2836
|
+
fleets_max: {
|
|
2837
|
+
type: 'integer',
|
|
2838
|
+
minimum: 0,
|
|
2839
|
+
description: 'Maximum number of fleets that can be created per cluster.',
|
|
2840
|
+
example: 999
|
|
2841
|
+
},
|
|
2842
|
+
cluster_tiers: {
|
|
2843
|
+
type: 'array',
|
|
2844
|
+
items: {
|
|
2845
|
+
type: 'string',
|
|
2846
|
+
example: 'basic'
|
|
2847
|
+
},
|
|
2848
|
+
minItems: 0,
|
|
2849
|
+
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
2850
|
+
},
|
|
2851
|
+
regions: {
|
|
2852
|
+
type: 'array',
|
|
2853
|
+
items: {
|
|
2854
|
+
type: 'string',
|
|
2855
|
+
example: 'northamerica-central-1a'
|
|
2856
|
+
},
|
|
2857
|
+
minItems: 1,
|
|
2858
|
+
description: 'List of Cloudfleet control plane regions available for the organization.'
|
|
2859
|
+
},
|
|
2860
|
+
versions: {
|
|
2861
|
+
type: 'array',
|
|
2862
|
+
items: {
|
|
2863
|
+
type: 'object',
|
|
2864
|
+
properties: {
|
|
2865
|
+
id: {
|
|
2866
|
+
type: 'string',
|
|
2867
|
+
description: 'Id of the control plane version. Used in API calls.',
|
|
2868
|
+
example: '1.33.x-cfke.x'
|
|
2869
|
+
},
|
|
2870
|
+
label: {
|
|
2871
|
+
type: 'string',
|
|
2872
|
+
description: 'Label of the control plane version. Used in frontent UI.',
|
|
2873
|
+
example: '1.33.x (Always latest 1.33 patch version)'
|
|
2874
|
+
}
|
|
2875
|
+
},
|
|
2876
|
+
required: [
|
|
2877
|
+
'id',
|
|
2878
|
+
'label'
|
|
2879
|
+
],
|
|
2880
|
+
additionalProperties: false
|
|
2881
|
+
},
|
|
2882
|
+
minItems: 1,
|
|
2883
|
+
description: 'List of CFKE control plane versions available for the organization.'
|
|
2884
|
+
},
|
|
2885
|
+
cfcr_storage_gb: {
|
|
2886
|
+
type: 'integer',
|
|
2887
|
+
minimum: -1,
|
|
2888
|
+
description: 'Organization-level maximum CFCR storage volume in GB. -1 means no limit.',
|
|
2889
|
+
example: 500
|
|
2890
|
+
}
|
|
2891
|
+
},
|
|
2892
|
+
required: [
|
|
2893
|
+
'basic_clusters_max',
|
|
2894
|
+
'basic_clusters_available',
|
|
2895
|
+
'pro_clusters_max',
|
|
2896
|
+
'pro_clusters_available',
|
|
2897
|
+
'enterprise_clusters_max',
|
|
2898
|
+
'enterprise_clusters_available',
|
|
2899
|
+
'fleets_max',
|
|
2900
|
+
'cluster_tiers',
|
|
2901
|
+
'regions',
|
|
2902
|
+
'versions',
|
|
2903
|
+
'cfcr_storage_gb'
|
|
2904
|
+
],
|
|
2905
|
+
additionalProperties: false
|
|
2906
|
+
};
|
|
2907
|
+
export const RegistryRepositorySchema = {
|
|
2908
|
+
type: 'object',
|
|
2909
|
+
properties: {
|
|
2910
|
+
name: {
|
|
2911
|
+
type: 'string',
|
|
2912
|
+
description: 'Repository name.',
|
|
2913
|
+
example: 'my-app'
|
|
2914
|
+
},
|
|
2915
|
+
region: {
|
|
2916
|
+
type: 'string',
|
|
2917
|
+
description: 'Registry region.',
|
|
2918
|
+
example: 'northamerica'
|
|
2919
|
+
},
|
|
2920
|
+
uri: {
|
|
2921
|
+
type: 'string',
|
|
2922
|
+
description: 'Full URI of the repository.',
|
|
2923
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
2924
|
+
}
|
|
2925
|
+
},
|
|
2926
|
+
required: [
|
|
2927
|
+
'name',
|
|
2928
|
+
'region',
|
|
2929
|
+
'uri'
|
|
2930
|
+
],
|
|
2931
|
+
additionalProperties: false
|
|
2932
|
+
};
|
|
2933
|
+
export const RegistryRepositoryWithTagsSchema = {
|
|
2934
|
+
type: 'object',
|
|
2935
|
+
properties: {
|
|
2936
|
+
name: {
|
|
2937
|
+
type: 'string',
|
|
2938
|
+
description: 'Repository name.',
|
|
2939
|
+
example: 'my-app'
|
|
2940
|
+
},
|
|
2941
|
+
region: {
|
|
2942
|
+
type: 'string',
|
|
2943
|
+
description: 'Registry region.',
|
|
2944
|
+
example: 'northamerica'
|
|
2945
|
+
},
|
|
2946
|
+
uri: {
|
|
2947
|
+
type: 'string',
|
|
2948
|
+
description: 'Full URI of the repository.',
|
|
2949
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app'
|
|
2950
|
+
},
|
|
2951
|
+
tags: {
|
|
2952
|
+
type: 'array',
|
|
2953
|
+
items: {
|
|
2954
|
+
type: 'object',
|
|
2955
|
+
properties: {
|
|
2956
|
+
name: {
|
|
2957
|
+
type: 'string',
|
|
2958
|
+
description: 'Tag name.',
|
|
2959
|
+
example: 'latest'
|
|
2960
|
+
},
|
|
2961
|
+
size: {
|
|
2962
|
+
type: 'number',
|
|
2963
|
+
format: 'float',
|
|
2964
|
+
description: 'Size of the tag in bytes.',
|
|
2965
|
+
example: 123456789
|
|
2966
|
+
},
|
|
2967
|
+
mediaType: {
|
|
2968
|
+
type: 'string',
|
|
2969
|
+
description: 'Media type of the manifest.',
|
|
2970
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
2971
|
+
},
|
|
2972
|
+
platforms: {
|
|
2973
|
+
type: 'array',
|
|
2974
|
+
items: {
|
|
2975
|
+
type: 'string'
|
|
2976
|
+
},
|
|
2977
|
+
description: 'Array of platform strings for multi-arch images (e.g., linux/amd64, linux/arm64).',
|
|
2978
|
+
example: [
|
|
2979
|
+
'linux/amd64',
|
|
2980
|
+
'linux/arm64'
|
|
2981
|
+
]
|
|
2982
|
+
}
|
|
2983
|
+
},
|
|
2984
|
+
required: [
|
|
2985
|
+
'name',
|
|
2986
|
+
'size'
|
|
2987
|
+
],
|
|
2988
|
+
additionalProperties: false
|
|
2989
|
+
},
|
|
2990
|
+
description: 'Array of tags in the repository.'
|
|
2991
|
+
},
|
|
2992
|
+
totalSize: {
|
|
2993
|
+
type: 'number',
|
|
2994
|
+
format: 'float',
|
|
2995
|
+
description: 'Total size of all tags in the repository in bytes.',
|
|
2996
|
+
example: 987654321
|
|
2997
|
+
}
|
|
2998
|
+
},
|
|
2999
|
+
required: [
|
|
3000
|
+
'name',
|
|
3001
|
+
'region',
|
|
3002
|
+
'uri',
|
|
3003
|
+
'tags',
|
|
3004
|
+
'totalSize'
|
|
3005
|
+
],
|
|
3006
|
+
additionalProperties: false
|
|
3007
|
+
};
|
|
3008
|
+
export const RegistryTagSchema = {
|
|
3009
|
+
type: 'object',
|
|
3010
|
+
properties: {
|
|
3011
|
+
name: {
|
|
3012
|
+
type: 'string',
|
|
3013
|
+
description: 'Tag name.',
|
|
3014
|
+
example: 'latest'
|
|
3015
|
+
},
|
|
3016
|
+
digest: {
|
|
3017
|
+
type: 'string',
|
|
3018
|
+
description: 'Manifest digest for pulling by digest.',
|
|
3019
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
3020
|
+
},
|
|
3021
|
+
mediaType: {
|
|
3022
|
+
type: 'string',
|
|
3023
|
+
description: 'Media type of the manifest.',
|
|
3024
|
+
example: 'application/vnd.docker.distribution.manifest.v2+json'
|
|
3025
|
+
},
|
|
3026
|
+
config: {
|
|
3027
|
+
type: 'object',
|
|
3028
|
+
properties: {
|
|
3029
|
+
size: {
|
|
3030
|
+
type: 'number',
|
|
3031
|
+
format: 'float',
|
|
3032
|
+
description: 'Size of the config in bytes.',
|
|
3033
|
+
example: 1234
|
|
3034
|
+
}
|
|
3035
|
+
},
|
|
3036
|
+
required: [
|
|
3037
|
+
'size'
|
|
3038
|
+
],
|
|
3039
|
+
additionalProperties: false,
|
|
3040
|
+
description: 'Manifest config metadata.'
|
|
3041
|
+
},
|
|
3042
|
+
layers: {
|
|
3043
|
+
type: 'array',
|
|
3044
|
+
items: {
|
|
3045
|
+
type: 'object',
|
|
3046
|
+
properties: {
|
|
3047
|
+
digest: {
|
|
3048
|
+
type: 'string',
|
|
3049
|
+
description: 'Digest of the layer.',
|
|
3050
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
3051
|
+
},
|
|
3052
|
+
size: {
|
|
3053
|
+
type: 'number',
|
|
3054
|
+
format: 'float',
|
|
3055
|
+
description: 'Size of the layer in bytes.',
|
|
3056
|
+
example: 5678
|
|
3057
|
+
}
|
|
3058
|
+
},
|
|
3059
|
+
required: [
|
|
3060
|
+
'size'
|
|
3061
|
+
],
|
|
3062
|
+
additionalProperties: false
|
|
3063
|
+
},
|
|
3064
|
+
description: 'Array of layer metadata.'
|
|
3065
|
+
},
|
|
3066
|
+
manifests: {
|
|
3067
|
+
type: 'array',
|
|
3068
|
+
items: {
|
|
3069
|
+
type: 'object',
|
|
3070
|
+
properties: {
|
|
3071
|
+
digest: {
|
|
3072
|
+
type: 'string',
|
|
3073
|
+
description: 'Digest of the manifest.',
|
|
3074
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
3075
|
+
},
|
|
3076
|
+
platform: {
|
|
3077
|
+
type: 'object',
|
|
3078
|
+
properties: {
|
|
3079
|
+
architecture: {
|
|
3080
|
+
type: 'string',
|
|
3081
|
+
description: 'Architecture of the platform.',
|
|
3082
|
+
example: 'amd64'
|
|
3083
|
+
},
|
|
3084
|
+
os: {
|
|
3085
|
+
type: 'string',
|
|
3086
|
+
description: 'Operating system of the platform.',
|
|
3087
|
+
example: 'linux'
|
|
3088
|
+
},
|
|
3089
|
+
variant: {
|
|
3090
|
+
type: 'string',
|
|
3091
|
+
description: 'Variant of the platform (e.g., v7, v8 for ARM).',
|
|
3092
|
+
example: 'v8'
|
|
3093
|
+
}
|
|
3094
|
+
},
|
|
3095
|
+
required: [
|
|
3096
|
+
'architecture',
|
|
3097
|
+
'os'
|
|
3098
|
+
],
|
|
3099
|
+
additionalProperties: false,
|
|
3100
|
+
description: 'Platform information for the manifest.'
|
|
3101
|
+
},
|
|
3102
|
+
layers: {
|
|
3103
|
+
type: 'array',
|
|
3104
|
+
items: {
|
|
3105
|
+
type: 'object',
|
|
3106
|
+
properties: {
|
|
3107
|
+
digest: {
|
|
3108
|
+
type: 'string',
|
|
3109
|
+
description: 'Digest of the layer.',
|
|
3110
|
+
example: 'sha256:abcd1234ef567890abcd1234ef567890abcd1234ef567890abcd1234ef567890'
|
|
3111
|
+
},
|
|
3112
|
+
size: {
|
|
3113
|
+
type: 'number',
|
|
3114
|
+
format: 'float',
|
|
3115
|
+
description: 'Size of the layer in bytes.',
|
|
3116
|
+
example: 5678
|
|
3117
|
+
}
|
|
3118
|
+
},
|
|
3119
|
+
required: [
|
|
3120
|
+
'size'
|
|
3121
|
+
],
|
|
3122
|
+
additionalProperties: false
|
|
3123
|
+
},
|
|
3124
|
+
description: 'Layers for this platform.'
|
|
3125
|
+
},
|
|
3126
|
+
size: {
|
|
3127
|
+
type: 'number',
|
|
3128
|
+
format: 'float',
|
|
3129
|
+
description: 'Total size of this platform manifest in bytes.',
|
|
3130
|
+
example: 12345678
|
|
3131
|
+
}
|
|
3132
|
+
},
|
|
3133
|
+
required: [
|
|
3134
|
+
'digest'
|
|
3135
|
+
],
|
|
3136
|
+
additionalProperties: false
|
|
3137
|
+
},
|
|
3138
|
+
description: 'Array of manifests for multi-arch images.'
|
|
3139
|
+
},
|
|
3140
|
+
size: {
|
|
3141
|
+
type: 'number',
|
|
3142
|
+
format: 'float',
|
|
3143
|
+
description: 'Total size of the tag in bytes.',
|
|
3144
|
+
example: 123456789
|
|
3145
|
+
},
|
|
3146
|
+
region: {
|
|
3147
|
+
type: 'string',
|
|
3148
|
+
description: 'Registry region.',
|
|
3149
|
+
example: 'northamerica'
|
|
3150
|
+
},
|
|
3151
|
+
repository: {
|
|
3152
|
+
type: 'string',
|
|
3153
|
+
description: 'Repository name.',
|
|
3154
|
+
example: 'my-app'
|
|
3155
|
+
},
|
|
3156
|
+
uri: {
|
|
3157
|
+
type: 'string',
|
|
3158
|
+
description: 'Full URI of the tag.',
|
|
3159
|
+
example: 'ssds123e-6651-4e5d-9c04-079f6532989b.northamerica.registry.cloudfleet.dev/my-app:latest'
|
|
3160
|
+
}
|
|
3161
|
+
},
|
|
3162
|
+
required: [
|
|
3163
|
+
'name',
|
|
3164
|
+
'digest',
|
|
3165
|
+
'size',
|
|
3166
|
+
'region',
|
|
3167
|
+
'repository',
|
|
3168
|
+
'uri'
|
|
3169
|
+
],
|
|
3170
|
+
additionalProperties: false
|
|
3171
|
+
};
|
|
3172
|
+
export const TicketAttachmentSchema = {
|
|
3173
|
+
type: 'object',
|
|
3174
|
+
properties: {
|
|
3175
|
+
id: {
|
|
3176
|
+
type: 'string',
|
|
3177
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3178
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3179
|
+
},
|
|
3180
|
+
filename: {
|
|
3181
|
+
type: 'string',
|
|
3182
|
+
description: 'Original filename as uploaded.',
|
|
3183
|
+
example: 'debug.log'
|
|
3184
|
+
},
|
|
3185
|
+
content_type: {
|
|
3186
|
+
type: 'string',
|
|
3187
|
+
description: 'MIME content type of the attachment.',
|
|
3188
|
+
example: 'text/plain'
|
|
3189
|
+
},
|
|
3190
|
+
size: {
|
|
3191
|
+
type: 'integer',
|
|
3192
|
+
description: 'Size of the attachment in bytes.',
|
|
3193
|
+
example: 12345
|
|
3194
|
+
}
|
|
3195
|
+
},
|
|
3196
|
+
required: [
|
|
3197
|
+
'id',
|
|
3198
|
+
'filename',
|
|
3199
|
+
'content_type',
|
|
3200
|
+
'size'
|
|
3201
|
+
],
|
|
3202
|
+
additionalProperties: false
|
|
3203
|
+
};
|
|
3204
|
+
export const TicketCreateInputSchema = {
|
|
3205
|
+
type: 'object',
|
|
3206
|
+
properties: {
|
|
3207
|
+
category: {
|
|
3208
|
+
type: 'string',
|
|
3209
|
+
description: 'Ticket category. Drives auto-assignment and may carry a subcategory in `properties`.',
|
|
3210
|
+
example: 'technical',
|
|
3211
|
+
enum: [
|
|
3212
|
+
'billing',
|
|
3213
|
+
'technical',
|
|
3214
|
+
'general'
|
|
3215
|
+
]
|
|
3216
|
+
},
|
|
3217
|
+
body: {
|
|
3218
|
+
type: 'string',
|
|
3219
|
+
maxLength: 50000,
|
|
3220
|
+
minLength: 1,
|
|
3221
|
+
pattern: '\\S',
|
|
3222
|
+
description: 'Initial message body in markdown. There is no separate subject — the first message body is the description.',
|
|
3223
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
3224
|
+
},
|
|
3225
|
+
properties: {
|
|
3226
|
+
type: 'object',
|
|
3227
|
+
additionalProperties: true,
|
|
3228
|
+
description: 'Free-form key/value bag set by the UI (e.g. `subcategory`, `cluster_id`, `cluster_name`, `region`).',
|
|
3229
|
+
example: {
|
|
3230
|
+
subcategory: 'cluster-question',
|
|
3231
|
+
cluster_id: '60c72b2f9f1b2c001f8e4d3a'
|
|
3232
|
+
}
|
|
3233
|
+
}
|
|
3234
|
+
},
|
|
3235
|
+
required: [
|
|
3236
|
+
'category',
|
|
3237
|
+
'body'
|
|
3238
|
+
],
|
|
3239
|
+
additionalProperties: false
|
|
3240
|
+
};
|
|
3241
|
+
export const TicketMessageInputSchema = {
|
|
3242
|
+
type: 'object',
|
|
3243
|
+
properties: {
|
|
3244
|
+
body: {
|
|
3245
|
+
type: 'string',
|
|
3246
|
+
maxLength: 50000,
|
|
3247
|
+
minLength: 1,
|
|
3248
|
+
pattern: '\\S',
|
|
3249
|
+
description: 'Reply body in markdown.',
|
|
3250
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3251
|
+
}
|
|
3252
|
+
},
|
|
3253
|
+
required: [
|
|
3254
|
+
'body'
|
|
3255
|
+
],
|
|
3256
|
+
additionalProperties: false
|
|
3257
|
+
};
|
|
3258
|
+
export const TicketMessageSchema = {
|
|
3259
|
+
type: 'object',
|
|
3260
|
+
properties: {
|
|
3261
|
+
id: {
|
|
3262
|
+
type: 'string',
|
|
3263
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
3264
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
3265
|
+
},
|
|
3266
|
+
type: {
|
|
3267
|
+
type: 'string',
|
|
3268
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
3269
|
+
example: 'customer_reply',
|
|
3270
|
+
enum: [
|
|
3271
|
+
'customer_reply',
|
|
3272
|
+
'agent_reply'
|
|
3273
|
+
]
|
|
3274
|
+
},
|
|
3275
|
+
body: {
|
|
3276
|
+
type: 'string',
|
|
3277
|
+
description: 'Message body in markdown.',
|
|
3278
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3279
|
+
},
|
|
3280
|
+
author_first_name: {
|
|
3281
|
+
type: 'string',
|
|
3282
|
+
nullable: true,
|
|
3283
|
+
description: 'First name of the author. Null when not provided.',
|
|
3284
|
+
example: 'Jane'
|
|
3285
|
+
},
|
|
3286
|
+
author_last_name: {
|
|
3287
|
+
type: 'string',
|
|
3288
|
+
nullable: true,
|
|
3289
|
+
description: 'Last name of the author. Null when not provided.',
|
|
3290
|
+
example: 'Doe'
|
|
3291
|
+
},
|
|
3292
|
+
attachments: {
|
|
3293
|
+
type: 'array',
|
|
3294
|
+
items: {
|
|
3295
|
+
type: 'object',
|
|
3296
|
+
properties: {
|
|
3297
|
+
id: {
|
|
3298
|
+
type: 'string',
|
|
3299
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3300
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
1331
3301
|
},
|
|
1332
|
-
|
|
1333
|
-
description: 'List of Cloudfleet cluster tiers available for the organization.'
|
|
1334
|
-
},
|
|
1335
|
-
regions: {
|
|
1336
|
-
type: 'array',
|
|
1337
|
-
items: {
|
|
3302
|
+
filename: {
|
|
1338
3303
|
type: 'string',
|
|
1339
|
-
|
|
3304
|
+
description: 'Original filename as uploaded.',
|
|
3305
|
+
example: 'debug.log'
|
|
1340
3306
|
},
|
|
1341
|
-
|
|
1342
|
-
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
type: 'array',
|
|
1346
|
-
items: {
|
|
1347
|
-
type: 'object',
|
|
1348
|
-
properties: {
|
|
1349
|
-
id: {
|
|
1350
|
-
type: 'string',
|
|
1351
|
-
description: 'Id of the control plane version. Used in API calls.',
|
|
1352
|
-
example: '1.29.x-cfke.x'
|
|
1353
|
-
},
|
|
1354
|
-
label: {
|
|
1355
|
-
type: 'string',
|
|
1356
|
-
description: 'Label of the control plane version. Used in frontent UI.',
|
|
1357
|
-
example: '1.29.x (Always latest 1.29 patch version)'
|
|
1358
|
-
}
|
|
1359
|
-
},
|
|
1360
|
-
required: ['id', 'label'],
|
|
1361
|
-
additionalProperties: false
|
|
3307
|
+
content_type: {
|
|
3308
|
+
type: 'string',
|
|
3309
|
+
description: 'MIME content type of the attachment.',
|
|
3310
|
+
example: 'text/plain'
|
|
1362
3311
|
},
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
3312
|
+
size: {
|
|
3313
|
+
type: 'integer',
|
|
3314
|
+
description: 'Size of the attachment in bytes.',
|
|
3315
|
+
example: 12345
|
|
3316
|
+
}
|
|
3317
|
+
},
|
|
3318
|
+
required: [
|
|
3319
|
+
'id',
|
|
3320
|
+
'filename',
|
|
3321
|
+
'content_type',
|
|
3322
|
+
'size'
|
|
3323
|
+
],
|
|
3324
|
+
additionalProperties: false
|
|
1366
3325
|
},
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
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.'
|
|
3326
|
+
description: 'Attachments associated with this message.',
|
|
3327
|
+
example: []
|
|
1370
3328
|
},
|
|
1371
|
-
|
|
3329
|
+
date_created: {
|
|
1372
3330
|
type: 'string',
|
|
1373
|
-
|
|
1374
|
-
|
|
3331
|
+
format: 'date-time',
|
|
3332
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3333
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
1375
3334
|
}
|
|
1376
3335
|
},
|
|
1377
|
-
required: [
|
|
3336
|
+
required: [
|
|
3337
|
+
'id',
|
|
3338
|
+
'type',
|
|
3339
|
+
'body',
|
|
3340
|
+
'date_created'
|
|
3341
|
+
],
|
|
1378
3342
|
additionalProperties: false
|
|
1379
3343
|
};
|
|
1380
|
-
export const
|
|
3344
|
+
export const TicketSchema = {
|
|
1381
3345
|
type: 'object',
|
|
1382
3346
|
properties: {
|
|
1383
3347
|
id: {
|
|
1384
3348
|
type: 'string',
|
|
1385
|
-
|
|
1386
|
-
|
|
1387
|
-
example: 'e94d30ec-a2dd-4dcb-832c-ac2be144ba91'
|
|
3349
|
+
description: 'Unique identifier of the ticket (Mongo ObjectId).',
|
|
3350
|
+
example: '60c72b2f9f1b2c001f8e4d3a'
|
|
1388
3351
|
},
|
|
1389
|
-
|
|
1390
|
-
type: '
|
|
1391
|
-
description: '
|
|
1392
|
-
example:
|
|
3352
|
+
status: {
|
|
3353
|
+
type: 'string',
|
|
3354
|
+
description: 'Current state of the ticket.',
|
|
3355
|
+
example: 'waiting_on_us',
|
|
3356
|
+
enum: [
|
|
3357
|
+
'waiting_on_us',
|
|
3358
|
+
'waiting_on_user',
|
|
3359
|
+
'closed'
|
|
3360
|
+
]
|
|
1393
3361
|
},
|
|
1394
|
-
|
|
3362
|
+
category: {
|
|
1395
3363
|
type: 'string',
|
|
1396
|
-
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
3364
|
+
description: 'Ticket category.',
|
|
3365
|
+
example: 'technical',
|
|
3366
|
+
enum: [
|
|
3367
|
+
'billing',
|
|
3368
|
+
'technical',
|
|
3369
|
+
'general'
|
|
3370
|
+
]
|
|
1400
3371
|
},
|
|
1401
|
-
|
|
3372
|
+
summary: {
|
|
1402
3373
|
type: 'string',
|
|
1403
|
-
|
|
1404
|
-
|
|
1405
|
-
example: '4242'
|
|
3374
|
+
description: 'First 128 characters of the initial message body, with markdown formatting and newlines stripped. Used for ticket list previews.',
|
|
3375
|
+
example: 'My cluster cannot reach the registry. Logs attached.'
|
|
1406
3376
|
},
|
|
1407
|
-
|
|
1408
|
-
type: '
|
|
1409
|
-
|
|
1410
|
-
maximum: 12,
|
|
3377
|
+
closed_at: {
|
|
3378
|
+
type: 'string',
|
|
3379
|
+
format: 'date-time',
|
|
1411
3380
|
nullable: true,
|
|
1412
|
-
description:
|
|
1413
|
-
example: '
|
|
3381
|
+
description: 'Closure timestamp. Null while the ticket is open.',
|
|
3382
|
+
example: '2026-05-18T16:08:14.338Z'
|
|
1414
3383
|
},
|
|
1415
|
-
|
|
1416
|
-
type: '
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
|
|
1420
|
-
example: '2028'
|
|
3384
|
+
date_created: {
|
|
3385
|
+
type: 'string',
|
|
3386
|
+
format: 'date-time',
|
|
3387
|
+
description: 'Creation date of the ticket. ISO 8601 UTC.',
|
|
3388
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
1421
3389
|
},
|
|
1422
|
-
|
|
3390
|
+
date_updated: {
|
|
1423
3391
|
type: 'string',
|
|
1424
|
-
|
|
1425
|
-
description: '
|
|
1426
|
-
example: '
|
|
1427
|
-
|
|
3392
|
+
format: 'date-time',
|
|
3393
|
+
description: 'Last update date of the ticket. ISO 8601 UTC.',
|
|
3394
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3395
|
+
},
|
|
3396
|
+
messages: {
|
|
3397
|
+
type: 'array',
|
|
3398
|
+
items: {
|
|
3399
|
+
type: 'object',
|
|
3400
|
+
properties: {
|
|
3401
|
+
id: {
|
|
3402
|
+
type: 'string',
|
|
3403
|
+
description: 'Unique identifier of the message (Mongo ObjectId).',
|
|
3404
|
+
example: '60c72b2f9f1b2c001f8e4d3b'
|
|
3405
|
+
},
|
|
3406
|
+
type: {
|
|
3407
|
+
type: 'string',
|
|
3408
|
+
description: 'Message type. Internal notes are filtered out of customer-facing responses.',
|
|
3409
|
+
example: 'customer_reply',
|
|
3410
|
+
enum: [
|
|
3411
|
+
'customer_reply',
|
|
3412
|
+
'agent_reply'
|
|
3413
|
+
]
|
|
3414
|
+
},
|
|
3415
|
+
body: {
|
|
3416
|
+
type: 'string',
|
|
3417
|
+
description: 'Message body in markdown.',
|
|
3418
|
+
example: 'Thanks — that resolved it on my side.'
|
|
3419
|
+
},
|
|
3420
|
+
author_first_name: {
|
|
3421
|
+
type: 'string',
|
|
3422
|
+
description: 'First name of the author. Null when not provided.',
|
|
3423
|
+
example: 'Jane'
|
|
3424
|
+
},
|
|
3425
|
+
author_last_name: {
|
|
3426
|
+
type: 'string',
|
|
3427
|
+
description: 'Last name of the author. Null when not provided.',
|
|
3428
|
+
example: 'Doe'
|
|
3429
|
+
},
|
|
3430
|
+
attachments: {
|
|
3431
|
+
type: 'array',
|
|
3432
|
+
items: {
|
|
3433
|
+
type: 'object',
|
|
3434
|
+
properties: {
|
|
3435
|
+
id: {
|
|
3436
|
+
type: 'string',
|
|
3437
|
+
description: 'Unique identifier of the attachment (Mongo ObjectId).',
|
|
3438
|
+
example: '60c72b2f9f1b2c001f8e4d3c'
|
|
3439
|
+
},
|
|
3440
|
+
filename: {
|
|
3441
|
+
type: 'string',
|
|
3442
|
+
description: 'Original filename as uploaded.',
|
|
3443
|
+
example: 'debug.log'
|
|
3444
|
+
},
|
|
3445
|
+
content_type: {
|
|
3446
|
+
type: 'string',
|
|
3447
|
+
description: 'MIME content type of the attachment.',
|
|
3448
|
+
example: 'text/plain'
|
|
3449
|
+
},
|
|
3450
|
+
size: {
|
|
3451
|
+
type: 'integer',
|
|
3452
|
+
description: 'Size of the attachment in bytes.',
|
|
3453
|
+
example: 12345
|
|
3454
|
+
}
|
|
3455
|
+
},
|
|
3456
|
+
required: [
|
|
3457
|
+
'id',
|
|
3458
|
+
'filename',
|
|
3459
|
+
'content_type',
|
|
3460
|
+
'size'
|
|
3461
|
+
],
|
|
3462
|
+
additionalProperties: false
|
|
3463
|
+
},
|
|
3464
|
+
description: 'Attachments associated with this message.',
|
|
3465
|
+
example: []
|
|
3466
|
+
},
|
|
3467
|
+
date_created: {
|
|
3468
|
+
type: 'string',
|
|
3469
|
+
format: 'date-time',
|
|
3470
|
+
description: 'Creation date of the message. ISO 8601 UTC.',
|
|
3471
|
+
example: '2026-05-11T16:08:14.338Z'
|
|
3472
|
+
}
|
|
3473
|
+
},
|
|
3474
|
+
required: [
|
|
3475
|
+
'id',
|
|
3476
|
+
'type',
|
|
3477
|
+
'body',
|
|
3478
|
+
'date_created'
|
|
3479
|
+
],
|
|
3480
|
+
additionalProperties: false
|
|
3481
|
+
},
|
|
3482
|
+
description: 'Messages on the ticket in chronological order. Internal notes are excluded. Returned by the detail endpoint only.'
|
|
1428
3483
|
}
|
|
1429
3484
|
},
|
|
1430
|
-
required: [
|
|
3485
|
+
required: [
|
|
3486
|
+
'id',
|
|
3487
|
+
'status',
|
|
3488
|
+
'category',
|
|
3489
|
+
'summary',
|
|
3490
|
+
'date_created',
|
|
3491
|
+
'date_updated'
|
|
3492
|
+
],
|
|
1431
3493
|
additionalProperties: false
|
|
1432
3494
|
};
|
|
1433
3495
|
export const TokenCreateInputSchema = {
|
|
@@ -1445,10 +3507,16 @@ export const TokenCreateInputSchema = {
|
|
|
1445
3507
|
type: 'string',
|
|
1446
3508
|
description: 'Role assumed by the token.',
|
|
1447
3509
|
example: 'User',
|
|
1448
|
-
enum: [
|
|
3510
|
+
enum: [
|
|
3511
|
+
'Administrator',
|
|
3512
|
+
'User'
|
|
3513
|
+
]
|
|
1449
3514
|
}
|
|
1450
3515
|
},
|
|
1451
|
-
required: [
|
|
3516
|
+
required: [
|
|
3517
|
+
'name',
|
|
3518
|
+
'role'
|
|
3519
|
+
],
|
|
1452
3520
|
additionalProperties: false
|
|
1453
3521
|
};
|
|
1454
3522
|
export const TokenSchema = {
|
|
@@ -1466,7 +3534,10 @@ export const TokenSchema = {
|
|
|
1466
3534
|
type: 'string',
|
|
1467
3535
|
description: 'Role assumed by the token.',
|
|
1468
3536
|
example: 'User',
|
|
1469
|
-
enum: [
|
|
3537
|
+
enum: [
|
|
3538
|
+
'Administrator',
|
|
3539
|
+
'User'
|
|
3540
|
+
]
|
|
1470
3541
|
},
|
|
1471
3542
|
id: {
|
|
1472
3543
|
type: 'string',
|
|
@@ -1485,7 +3556,11 @@ export const TokenSchema = {
|
|
|
1485
3556
|
example: '2023-12-20T13:53:32.000Z'
|
|
1486
3557
|
}
|
|
1487
3558
|
},
|
|
1488
|
-
required: [
|
|
3559
|
+
required: [
|
|
3560
|
+
'name',
|
|
3561
|
+
'role',
|
|
3562
|
+
'date_created'
|
|
3563
|
+
],
|
|
1489
3564
|
additionalProperties: false
|
|
1490
3565
|
};
|
|
1491
3566
|
export const TokenUpdateInputSchema = {
|
|
@@ -1503,9 +3578,154 @@ export const TokenUpdateInputSchema = {
|
|
|
1503
3578
|
type: 'string',
|
|
1504
3579
|
description: 'Role assumed by the token.',
|
|
1505
3580
|
example: 'User',
|
|
1506
|
-
enum: [
|
|
3581
|
+
enum: [
|
|
3582
|
+
'Administrator',
|
|
3583
|
+
'User'
|
|
3584
|
+
]
|
|
3585
|
+
}
|
|
3586
|
+
},
|
|
3587
|
+
additionalProperties: false
|
|
3588
|
+
};
|
|
3589
|
+
export const UsageFacetsSchema = {
|
|
3590
|
+
type: 'object',
|
|
3591
|
+
properties: {
|
|
3592
|
+
cluster_id: {
|
|
3593
|
+
type: 'array',
|
|
3594
|
+
items: {
|
|
3595
|
+
type: 'string'
|
|
3596
|
+
},
|
|
3597
|
+
description: 'List of unique cluster IDs',
|
|
3598
|
+
example: [
|
|
3599
|
+
'6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3600
|
+
]
|
|
3601
|
+
},
|
|
3602
|
+
product: {
|
|
3603
|
+
type: 'array',
|
|
3604
|
+
items: {
|
|
3605
|
+
type: 'string',
|
|
3606
|
+
enum: [
|
|
3607
|
+
'cfke_controlplane_basic',
|
|
3608
|
+
'cfke_controlplane_pro',
|
|
3609
|
+
'cfke_controlplane_enterprise',
|
|
3610
|
+
'cfke_connected_nodes_basic',
|
|
3611
|
+
'cfke_connected_nodes_pro',
|
|
3612
|
+
'cfke_connected_nodes_enterprise',
|
|
3613
|
+
'cfcr_storage'
|
|
3614
|
+
]
|
|
3615
|
+
},
|
|
3616
|
+
description: 'List of unique products',
|
|
3617
|
+
example: [
|
|
3618
|
+
'cfke_controlplane_pro',
|
|
3619
|
+
'cfke_connected_nodes_pro'
|
|
3620
|
+
]
|
|
3621
|
+
}
|
|
3622
|
+
},
|
|
3623
|
+
additionalProperties: false
|
|
3624
|
+
};
|
|
3625
|
+
export const UsageResponseSchema = {
|
|
3626
|
+
type: 'object',
|
|
3627
|
+
properties: {
|
|
3628
|
+
data: {
|
|
3629
|
+
type: 'array',
|
|
3630
|
+
items: {
|
|
3631
|
+
type: 'object',
|
|
3632
|
+
properties: {
|
|
3633
|
+
hour: {
|
|
3634
|
+
type: 'string',
|
|
3635
|
+
description: 'Hour of the usage',
|
|
3636
|
+
example: '2019-01-01T00:00:00.000Z'
|
|
3637
|
+
},
|
|
3638
|
+
cluster_id: {
|
|
3639
|
+
type: 'string',
|
|
3640
|
+
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
3641
|
+
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3642
|
+
},
|
|
3643
|
+
product: {
|
|
3644
|
+
type: 'string',
|
|
3645
|
+
description: 'The product the usage is associated with',
|
|
3646
|
+
example: 'cfke_controlplane_pro',
|
|
3647
|
+
enum: [
|
|
3648
|
+
'cfke_controlplane_basic',
|
|
3649
|
+
'cfke_controlplane_pro',
|
|
3650
|
+
'cfke_controlplane_enterprise',
|
|
3651
|
+
'cfke_connected_nodes_basic',
|
|
3652
|
+
'cfke_connected_nodes_pro',
|
|
3653
|
+
'cfke_connected_nodes_enterprise',
|
|
3654
|
+
'cfcr_storage'
|
|
3655
|
+
]
|
|
3656
|
+
},
|
|
3657
|
+
value: {
|
|
3658
|
+
type: 'number',
|
|
3659
|
+
format: 'float',
|
|
3660
|
+
description: 'Consumption',
|
|
3661
|
+
example: 4
|
|
3662
|
+
},
|
|
3663
|
+
price: {
|
|
3664
|
+
type: 'number',
|
|
3665
|
+
format: 'float',
|
|
3666
|
+
description: 'Price per unit',
|
|
3667
|
+
example: 0.01
|
|
3668
|
+
},
|
|
3669
|
+
total: {
|
|
3670
|
+
type: 'number',
|
|
3671
|
+
format: 'float',
|
|
3672
|
+
description: 'Total cost'
|
|
3673
|
+
}
|
|
3674
|
+
},
|
|
3675
|
+
required: [
|
|
3676
|
+
'hour',
|
|
3677
|
+
'cluster_id',
|
|
3678
|
+
'product',
|
|
3679
|
+
'value',
|
|
3680
|
+
'price',
|
|
3681
|
+
'total'
|
|
3682
|
+
],
|
|
3683
|
+
additionalProperties: false
|
|
3684
|
+
},
|
|
3685
|
+
description: 'Usage data'
|
|
3686
|
+
},
|
|
3687
|
+
facets: {
|
|
3688
|
+
type: 'object',
|
|
3689
|
+
properties: {
|
|
3690
|
+
cluster_id: {
|
|
3691
|
+
type: 'array',
|
|
3692
|
+
items: {
|
|
3693
|
+
type: 'string'
|
|
3694
|
+
},
|
|
3695
|
+
description: 'List of unique cluster IDs',
|
|
3696
|
+
example: [
|
|
3697
|
+
'6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
3698
|
+
]
|
|
3699
|
+
},
|
|
3700
|
+
product: {
|
|
3701
|
+
type: 'array',
|
|
3702
|
+
items: {
|
|
3703
|
+
type: 'string',
|
|
3704
|
+
enum: [
|
|
3705
|
+
'cfke_controlplane_basic',
|
|
3706
|
+
'cfke_controlplane_pro',
|
|
3707
|
+
'cfke_controlplane_enterprise',
|
|
3708
|
+
'cfke_connected_nodes_basic',
|
|
3709
|
+
'cfke_connected_nodes_pro',
|
|
3710
|
+
'cfke_connected_nodes_enterprise',
|
|
3711
|
+
'cfcr_storage'
|
|
3712
|
+
]
|
|
3713
|
+
},
|
|
3714
|
+
description: 'List of unique products',
|
|
3715
|
+
example: [
|
|
3716
|
+
'cfke_controlplane_pro',
|
|
3717
|
+
'cfke_connected_nodes_pro'
|
|
3718
|
+
]
|
|
3719
|
+
}
|
|
3720
|
+
},
|
|
3721
|
+
additionalProperties: false,
|
|
3722
|
+
description: 'Facets for filtering'
|
|
1507
3723
|
}
|
|
1508
3724
|
},
|
|
3725
|
+
required: [
|
|
3726
|
+
'data',
|
|
3727
|
+
'facets'
|
|
3728
|
+
],
|
|
1509
3729
|
additionalProperties: false
|
|
1510
3730
|
};
|
|
1511
3731
|
export const UsageSchema = {
|
|
@@ -1518,90 +3738,49 @@ export const UsageSchema = {
|
|
|
1518
3738
|
},
|
|
1519
3739
|
cluster_id: {
|
|
1520
3740
|
type: 'string',
|
|
1521
|
-
format: 'uuid',
|
|
1522
3741
|
description: 'Unique identifier of the kubernetes cluster. UUID v4 string in canonical form',
|
|
1523
3742
|
example: '6b5439b1-923a-4f2b-a371-d554e5ea23fa'
|
|
1524
3743
|
},
|
|
1525
|
-
cluster_tier: {
|
|
1526
|
-
type: 'string',
|
|
1527
|
-
description: 'Tier of the cluster.',
|
|
1528
|
-
example: 'pro',
|
|
1529
|
-
enum: ['']
|
|
1530
|
-
},
|
|
1531
3744
|
product: {
|
|
1532
3745
|
type: 'string',
|
|
1533
3746
|
description: 'The product the usage is associated with',
|
|
1534
|
-
example: '
|
|
1535
|
-
enum: [
|
|
1536
|
-
|
|
1537
|
-
|
|
1538
|
-
|
|
1539
|
-
|
|
1540
|
-
|
|
1541
|
-
|
|
1542
|
-
|
|
1543
|
-
type: 'string',
|
|
1544
|
-
description: 'SKU of the Kubernetes node',
|
|
1545
|
-
example: 'GCP-NORTHAMERICA-NORTHEAST1-A-G1-SMALL-SPOT'
|
|
1546
|
-
},
|
|
1547
|
-
cpu: {
|
|
1548
|
-
anyOf: [
|
|
1549
|
-
{
|
|
1550
|
-
type: 'number',
|
|
1551
|
-
format: 'float',
|
|
1552
|
-
description: 'CPU core count of the node',
|
|
1553
|
-
example: 4
|
|
1554
|
-
},
|
|
1555
|
-
{
|
|
1556
|
-
type: 'string',
|
|
1557
|
-
enum: ['']
|
|
1558
|
-
}
|
|
1559
|
-
]
|
|
1560
|
-
},
|
|
1561
|
-
price: {
|
|
1562
|
-
anyOf: [
|
|
1563
|
-
{
|
|
1564
|
-
type: 'number',
|
|
1565
|
-
format: 'float',
|
|
1566
|
-
description: 'Price',
|
|
1567
|
-
example: 4
|
|
1568
|
-
},
|
|
1569
|
-
{
|
|
1570
|
-
type: 'string',
|
|
1571
|
-
enum: ['']
|
|
1572
|
-
}
|
|
3747
|
+
example: 'cfke_controlplane_pro',
|
|
3748
|
+
enum: [
|
|
3749
|
+
'cfke_controlplane_basic',
|
|
3750
|
+
'cfke_controlplane_pro',
|
|
3751
|
+
'cfke_controlplane_enterprise',
|
|
3752
|
+
'cfke_connected_nodes_basic',
|
|
3753
|
+
'cfke_connected_nodes_pro',
|
|
3754
|
+
'cfke_connected_nodes_enterprise',
|
|
3755
|
+
'cfcr_storage'
|
|
1573
3756
|
]
|
|
1574
3757
|
},
|
|
1575
3758
|
value: {
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
}
|
|
1587
|
-
]
|
|
3759
|
+
type: 'number',
|
|
3760
|
+
format: 'float',
|
|
3761
|
+
description: 'Consumption',
|
|
3762
|
+
example: 4
|
|
3763
|
+
},
|
|
3764
|
+
price: {
|
|
3765
|
+
type: 'number',
|
|
3766
|
+
format: 'float',
|
|
3767
|
+
description: 'Price per unit',
|
|
3768
|
+
example: 0.01
|
|
1588
3769
|
},
|
|
1589
3770
|
total: {
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1593
|
-
format: 'float',
|
|
1594
|
-
description: 'Total',
|
|
1595
|
-
example: 4
|
|
1596
|
-
},
|
|
1597
|
-
{
|
|
1598
|
-
type: 'string',
|
|
1599
|
-
enum: ['']
|
|
1600
|
-
}
|
|
1601
|
-
]
|
|
3771
|
+
type: 'number',
|
|
3772
|
+
format: 'float',
|
|
3773
|
+
description: 'Total cost'
|
|
1602
3774
|
}
|
|
1603
3775
|
},
|
|
1604
|
-
required: [
|
|
3776
|
+
required: [
|
|
3777
|
+
'hour',
|
|
3778
|
+
'cluster_id',
|
|
3779
|
+
'product',
|
|
3780
|
+
'value',
|
|
3781
|
+
'price',
|
|
3782
|
+
'total'
|
|
3783
|
+
],
|
|
1605
3784
|
additionalProperties: false
|
|
1606
3785
|
};
|
|
1607
3786
|
export const UserCreateInputSchema = {
|
|
@@ -1637,21 +3816,15 @@ export const UserCreateInputSchema = {
|
|
|
1637
3816
|
type: 'string',
|
|
1638
3817
|
minLength: 8,
|
|
1639
3818
|
description: 'User password. Must be at least 8 characters long.'
|
|
1640
|
-
},
|
|
1641
|
-
status: {
|
|
1642
|
-
type: 'string',
|
|
1643
|
-
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1644
|
-
example: 'active',
|
|
1645
|
-
enum: ['active', 'inactive']
|
|
1646
|
-
},
|
|
1647
|
-
role: {
|
|
1648
|
-
type: 'string',
|
|
1649
|
-
description: "User role. Can be 'Administrator', 'User'.",
|
|
1650
|
-
example: 'User',
|
|
1651
|
-
enum: ['Administrator', 'User']
|
|
1652
3819
|
}
|
|
1653
3820
|
},
|
|
1654
|
-
required: [
|
|
3821
|
+
required: [
|
|
3822
|
+
'email',
|
|
3823
|
+
'first_name',
|
|
3824
|
+
'last_name',
|
|
3825
|
+
'code',
|
|
3826
|
+
'password'
|
|
3827
|
+
],
|
|
1655
3828
|
additionalProperties: false
|
|
1656
3829
|
};
|
|
1657
3830
|
export const UserSchema = {
|
|
@@ -1679,15 +3852,21 @@ export const UserSchema = {
|
|
|
1679
3852
|
},
|
|
1680
3853
|
role: {
|
|
1681
3854
|
type: 'string',
|
|
1682
|
-
description:
|
|
3855
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1683
3856
|
example: 'User',
|
|
1684
|
-
enum: [
|
|
3857
|
+
enum: [
|
|
3858
|
+
'Administrator',
|
|
3859
|
+
'User'
|
|
3860
|
+
]
|
|
1685
3861
|
},
|
|
1686
3862
|
status: {
|
|
1687
3863
|
type: 'string',
|
|
1688
3864
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1689
3865
|
example: 'active',
|
|
1690
|
-
enum: [
|
|
3866
|
+
enum: [
|
|
3867
|
+
'active',
|
|
3868
|
+
'inactive'
|
|
3869
|
+
]
|
|
1691
3870
|
},
|
|
1692
3871
|
id: {
|
|
1693
3872
|
type: 'string',
|
|
@@ -1702,7 +3881,15 @@ export const UserSchema = {
|
|
|
1702
3881
|
example: '2023-11-02T16:08:14.338Z'
|
|
1703
3882
|
}
|
|
1704
3883
|
},
|
|
1705
|
-
required: [
|
|
3884
|
+
required: [
|
|
3885
|
+
'email',
|
|
3886
|
+
'first_name',
|
|
3887
|
+
'last_name',
|
|
3888
|
+
'role',
|
|
3889
|
+
'status',
|
|
3890
|
+
'id',
|
|
3891
|
+
'date_created'
|
|
3892
|
+
],
|
|
1706
3893
|
additionalProperties: false
|
|
1707
3894
|
};
|
|
1708
3895
|
export const UserUpdateInputSchema = {
|
|
@@ -1730,15 +3917,21 @@ export const UserUpdateInputSchema = {
|
|
|
1730
3917
|
},
|
|
1731
3918
|
role: {
|
|
1732
3919
|
type: 'string',
|
|
1733
|
-
description:
|
|
3920
|
+
description: 'User role. Can be \'Administrator\', \'User\'.',
|
|
1734
3921
|
example: 'User',
|
|
1735
|
-
enum: [
|
|
3922
|
+
enum: [
|
|
3923
|
+
'Administrator',
|
|
3924
|
+
'User'
|
|
3925
|
+
]
|
|
1736
3926
|
},
|
|
1737
3927
|
status: {
|
|
1738
3928
|
type: 'string',
|
|
1739
3929
|
description: 'Status of the user. Can be `active` or `inactive`. Inactive users cannot log in or manage organization resources.',
|
|
1740
3930
|
example: 'active',
|
|
1741
|
-
enum: [
|
|
3931
|
+
enum: [
|
|
3932
|
+
'active',
|
|
3933
|
+
'inactive'
|
|
3934
|
+
]
|
|
1742
3935
|
}
|
|
1743
3936
|
},
|
|
1744
3937
|
additionalProperties: false
|