kb-cloud-client-typescript 0.0.0-support-instance-template-ops.20260920.613 → 0.0.0-support-instance-template-ops.20260920.740

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.
Files changed (59) hide show
  1. package/dist/adminapi/models/component-item-create.d.ts +1 -1
  2. package/dist/adminapi/models/index.d.ts +1 -0
  3. package/dist/adminapi/models/index.d.ts.map +1 -1
  4. package/dist/adminapi/models/index.js +1 -0
  5. package/dist/adminapi/models/index.js.map +1 -1
  6. package/dist/adminapi/models/instance-template-create.d.ts +7 -1
  7. package/dist/adminapi/models/instance-template-create.d.ts.map +1 -1
  8. package/dist/adminapi/models/instance-template-overlay-field.d.ts +1 -0
  9. package/dist/adminapi/models/instance-template-overlay-field.d.ts.map +1 -1
  10. package/dist/adminapi/models/instance-template-overlay-field.js +1 -0
  11. package/dist/adminapi/models/instance-template-overlay-field.js.map +1 -1
  12. package/dist/adminapi/models/instance-template-vscale.d.ts +31 -0
  13. package/dist/adminapi/models/instance-template-vscale.d.ts.map +1 -0
  14. package/dist/adminapi/models/instance-template-vscale.js +16 -0
  15. package/dist/adminapi/models/instance-template-vscale.js.map +1 -0
  16. package/dist/adminapi/models/mode-component-instance-template.d.ts +1 -1
  17. package/dist/adminapi/models/ops-hscale.d.ts +1 -1
  18. package/dist/adminapi/models/ops-vscale.d.ts +5 -4
  19. package/dist/adminapi/models/ops-vscale.d.ts.map +1 -1
  20. package/dist/openapi/models/component-item-create.d.ts +1 -1
  21. package/dist/openapi/models/index.d.ts +1 -0
  22. package/dist/openapi/models/index.d.ts.map +1 -1
  23. package/dist/openapi/models/index.js +1 -0
  24. package/dist/openapi/models/index.js.map +1 -1
  25. package/dist/openapi/models/instance-template-create.d.ts +7 -1
  26. package/dist/openapi/models/instance-template-create.d.ts.map +1 -1
  27. package/dist/openapi/models/instance-template-overlay-field.d.ts +1 -0
  28. package/dist/openapi/models/instance-template-overlay-field.d.ts.map +1 -1
  29. package/dist/openapi/models/instance-template-overlay-field.js +1 -0
  30. package/dist/openapi/models/instance-template-overlay-field.js.map +1 -1
  31. package/dist/openapi/models/instance-template-vscale.d.ts +31 -0
  32. package/dist/openapi/models/instance-template-vscale.d.ts.map +1 -0
  33. package/dist/openapi/models/instance-template-vscale.js +16 -0
  34. package/dist/openapi/models/instance-template-vscale.js.map +1 -0
  35. package/dist/openapi/models/mode-component-instance-template.d.ts +1 -1
  36. package/dist/openapi/models/ops-hscale.d.ts +1 -1
  37. package/dist/openapi/models/ops-vscale.d.ts +5 -4
  38. package/dist/openapi/models/ops-vscale.d.ts.map +1 -1
  39. package/package.json +1 -1
  40. package/src/adminapi/.openapi-generator/FILES +1 -0
  41. package/src/adminapi/models/component-item-create.ts +1 -1
  42. package/src/adminapi/models/index.ts +1 -0
  43. package/src/adminapi/models/instance-template-create.ts +7 -1
  44. package/src/adminapi/models/instance-template-overlay-field.ts +1 -0
  45. package/src/adminapi/models/instance-template-vscale.ts +36 -0
  46. package/src/adminapi/models/mode-component-instance-template.ts +1 -1
  47. package/src/adminapi/models/ops-hscale.ts +1 -1
  48. package/src/adminapi/models/ops-vscale.ts +7 -4
  49. package/src/adminapi.yaml +26 -8
  50. package/src/openapi/.openapi-generator/FILES +1 -0
  51. package/src/openapi/models/component-item-create.ts +1 -1
  52. package/src/openapi/models/index.ts +1 -0
  53. package/src/openapi/models/instance-template-create.ts +7 -1
  54. package/src/openapi/models/instance-template-overlay-field.ts +1 -0
  55. package/src/openapi/models/instance-template-vscale.ts +36 -0
  56. package/src/openapi/models/mode-component-instance-template.ts +1 -1
  57. package/src/openapi/models/ops-hscale.ts +1 -1
  58. package/src/openapi/models/ops-vscale.ts +7 -4
  59. package/src/openapi.yaml +26 -8
@@ -11,7 +11,7 @@
11
11
  */
12
12
  import type { InstanceTemplateCreateEnvInner } from './instance-template-create-env-inner';
13
13
  /**
14
- * Create assignment for one instance template. name and replicas are required. storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. classCode and volume sizes are defined once on the component and copied onto each template.
14
+ * Create assignment for one instance template. name and replicas are required. classCode, storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. Volume sizes are defined once on the component and copied onto each template.
15
15
  * @export
16
16
  * @interface InstanceTemplateCreate
17
17
  */
@@ -28,6 +28,12 @@ export interface InstanceTemplateCreate {
28
28
  * @memberof InstanceTemplateCreate
29
29
  */
30
30
  'replicas': number;
31
+ /**
32
+ * Class code for this template. Omit to inherit the component classCode.
33
+ * @type {string}
34
+ * @memberof InstanceTemplateCreate
35
+ */
36
+ 'classCode'?: string;
31
37
  /**
32
38
  * StorageClass for this template. Omit to inherit the component storageClass.
33
39
  * @type {string}
@@ -1 +1 @@
1
- {"version":3,"file":"instance-template-create.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-create.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAE3F;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC9C;;;;OAIG;IACH,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KAAE,CAAC;CAC9C"}
1
+ {"version":3,"file":"instance-template-create.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-create.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,sCAAsC,CAAC;AAE3F;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC9C;;;;OAIG;IACH,aAAa,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KAAE,CAAC;CAC9C"}
@@ -15,6 +15,7 @@
15
15
  * @enum {string}
16
16
  */
17
17
  export declare const InstanceTemplateOverlayField: {
18
+ readonly classCode: "classCode";
18
19
  readonly storageClass: "storageClass";
19
20
  readonly availabilityZone: "availabilityZone";
20
21
  readonly env: "env";
@@ -1 +1 @@
1
- {"version":3,"file":"instance-template-overlay-field.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-overlay-field.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAIH;;;;GAIG;AAEH,eAAO,MAAM,4BAA4B;;;;;CAK/B,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG,OAAO,4BAA4B,CAAC,MAAM,OAAO,4BAA4B,CAAC,CAAC"}
1
+ {"version":3,"file":"instance-template-overlay-field.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-overlay-field.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAIH;;;;GAIG;AAEH,eAAO,MAAM,4BAA4B;;;;;;CAM/B,CAAC;AAEX,MAAM,MAAM,4BAA4B,GAAG,OAAO,4BAA4B,CAAC,MAAM,OAAO,4BAA4B,CAAC,CAAC"}
@@ -20,6 +20,7 @@ exports.InstanceTemplateOverlayField = void 0;
20
20
  * @enum {string}
21
21
  */
22
22
  exports.InstanceTemplateOverlayField = {
23
+ classCode: 'classCode',
23
24
  storageClass: 'storageClass',
24
25
  availabilityZone: 'availabilityZone',
25
26
  env: 'env',
@@ -1 +1 @@
1
- {"version":3,"file":"instance-template-overlay-field.js","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-overlay-field.ts"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG;;;AAIH;;;;GAIG;AAEU,QAAA,4BAA4B,GAAG;IACxC,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,kBAAkB;IACpC,GAAG,EAAE,KAAK;IACV,WAAW,EAAE,aAAa;CACpB,CAAC"}
1
+ {"version":3,"file":"instance-template-overlay-field.js","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-overlay-field.ts"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG;;;AAIH;;;;GAIG;AAEU,QAAA,4BAA4B,GAAG;IACxC,SAAS,EAAE,WAAW;IACtB,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,kBAAkB;IACpC,GAAG,EAAE,KAAK;IACV,WAAW,EAAE,aAAa;CACpB,CAAC"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * KubeBlocks Cloud API
3
+ * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources. The API is organized around REST. Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs. We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
4
+ *
5
+ * The version of the OpenAPI document: 1.0.0
6
+ * Contact: support@apecloud.com
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ /**
13
+ * VScale assignment for one instance template. name and classCode are required.
14
+ * @export
15
+ * @interface InstanceTemplateVScale
16
+ */
17
+ export interface InstanceTemplateVScale {
18
+ /**
19
+ * Instance template name declared on the engine option.
20
+ * @type {string}
21
+ * @memberof InstanceTemplateVScale
22
+ */
23
+ 'name': string;
24
+ /**
25
+ * Class code to apply to this instance template.
26
+ * @type {string}
27
+ * @memberof InstanceTemplateVScale
28
+ */
29
+ 'classCode': string;
30
+ }
31
+ //# sourceMappingURL=instance-template-vscale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instance-template-vscale.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-vscale.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAIH;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACnC;;;;OAIG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;CACvB"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * KubeBlocks Cloud API
6
+ * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources. The API is organized around REST. Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs. We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
7
+ *
8
+ * The version of the OpenAPI document: 1.0.0
9
+ * Contact: support@apecloud.com
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ //# sourceMappingURL=instance-template-vscale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instance-template-vscale.js","sourceRoot":"","sources":["../../../src/openapi/models/instance-template-vscale.ts"],"names":[],"mappings":";AAAA,oBAAoB;AACpB,oBAAoB;AACpB;;;;;;;;;;GAUG"}
@@ -13,7 +13,7 @@ import type { InstanceTemplateEnv } from './instance-template-env';
13
13
  import type { InstanceTemplateOp } from './instance-template-op';
14
14
  import type { InstanceTemplateOverlayField } from './instance-template-overlay-field';
15
15
  /**
16
- * Declares instance-template support for this mode component. Create requires instanceTemplates with name and replicas. HScale replica changes require instanceTemplates with name and replicas; shard-count changes use shards and cannot be combined with instanceTemplates. VScale uses one classCode and requires instanceTemplates names; only those names are updated. The platform does not even-split or fill in missing templates. Instance online/offline can be set together with instanceTemplates. When absent, the component uses component-level operations.
16
+ * Declares instance-template support for this mode component. Create requires instanceTemplates with name and replicas. HScale replica changes require instanceTemplates with name and replicas; shard-count changes use shards and cannot be combined with instanceTemplates. VScale requires instanceTemplates with name and classCode; only those names are updated. The platform does not even-split or fill in missing templates. Instance online/offline can be set together with instanceTemplates. When absent, the component uses component-level operations.
17
17
  * @export
18
18
  * @interface ModeComponentInstanceTemplate
19
19
  */
@@ -36,7 +36,7 @@ export interface OpsHScale {
36
36
  */
37
37
  'replicas'?: number | null;
38
38
  /**
39
- * Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with replicas and shards. Names must be unique and declared; unspecified templates are left unchanged.
39
+ * Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with shards. Top-level replicas does not override these counts; KB ops fill component replicaChanges and per-template instances together. Names must be unique and declared; unspecified templates are left unchanged.
40
40
  * @type {Array<InstanceTemplateReplicas>}
41
41
  * @memberof OpsHScale
42
42
  */
@@ -9,6 +9,7 @@
9
9
  * https://openapi-generator.tech
10
10
  * Do not edit the class manually.
11
11
  */
12
+ import type { InstanceTemplateVScale } from './instance-template-vscale';
12
13
  import type { TaskSchedule } from './task-schedule';
13
14
  /**
14
15
  * OpsVScale is the payload to vertically scale a KubeBlocks cluster
@@ -35,17 +36,17 @@ export interface OpsVScale {
35
36
  */
36
37
  'memory'?: string;
37
38
  /**
38
- * Class code for this vscale. One classCode per request; all targeted instance templates receive the same resources.
39
+ * Class code for the component-level VerticalScaling resources. Does not override instanceTemplates[].classCode. Required when instanceTemplates is omitted. When both are set, KB ops fill component resources and per-template Instances together.
39
40
  * @type {string}
40
41
  * @memberof OpsVScale
41
42
  */
42
43
  'classCode'?: string;
43
44
  /**
44
- * Instance template names to apply the single classCode to. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Names must be unique and declared.
45
- * @type {Set<string>}
45
+ * Per-template classCode assignments. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Each item sets name and classCode independently. Top-level classCode does not replace these values.
46
+ * @type {Array<InstanceTemplateVScale>}
46
47
  * @memberof OpsVScale
47
48
  */
48
- 'instanceTemplates'?: Set<string> | null;
49
+ 'instanceTemplates'?: Array<InstanceTemplateVScale> | null;
49
50
  /**
50
51
  *
51
52
  * @type {TaskSchedule}
@@ -1 +1 @@
1
- {"version":3,"file":"ops-vscale.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/ops-vscale.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACtB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;IACzC;;;;OAIG;IACH,UAAU,CAAC,EAAE,YAAY,CAAC;CAC7B"}
1
+ {"version":3,"file":"ops-vscale.d.ts","sourceRoot":"","sources":["../../../src/openapi/models/ops-vscale.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;GAUG;AAKH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAGzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEpD;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACtB;;;;OAIG;IACH,WAAW,EAAE,MAAM,CAAC;IACpB;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,KAAK,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC;IAC3D;;;;OAIG;IACH,UAAU,CAAC,EAAE,YAAY,CAAC;CAC7B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kb-cloud-client-typescript",
3
- "version": "0.0.0-support-instance-template-ops.20260920.613",
3
+ "version": "0.0.0-support-instance-template-ops.20260920.740",
4
4
  "description": "Auto-generated TypeScript SDK for KubeBlocks Cloud API",
5
5
  "private": false,
6
6
  "license": "Apache-2.0",
@@ -689,6 +689,7 @@ models/instance-template-env.ts
689
689
  models/instance-template-op.ts
690
690
  models/instance-template-overlay-field.ts
691
691
  models/instance-template-replicas.ts
692
+ models/instance-template-vscale.ts
692
693
  models/instance.ts
693
694
  models/integer-option.ts
694
695
  models/international-desc.ts
@@ -48,7 +48,7 @@ export interface ComponentItemCreate {
48
48
  */
49
49
  'replicas'?: number | null;
50
50
  /**
51
- * Per-template replicas and optional overlays (storageClass, availabilityZone, env, annotations). Node group is cluster-level and inherited by every component and template. Required when the engine option declares instanceTemplate. Names must match instanceTemplate.names exactly. classCode and volumes on the component are copied onto each template; the apiserver does not even-split replicas.
51
+ * Per-template replicas and optional overlays (classCode, storageClass, availabilityZone, env, annotations). Node group is cluster-level and inherited by every component and template. Required when the engine option declares instanceTemplate. Names must match instanceTemplate.names exactly. classCode and volumes on the component are copied onto each template; the apiserver does not even-split replicas.
52
52
  * @type {Array<InstanceTemplateCreate>}
53
53
  * @memberof ComponentItemCreate
54
54
  */
@@ -584,6 +584,7 @@ export * from './instance-template-env';
584
584
  export * from './instance-template-op';
585
585
  export * from './instance-template-overlay-field';
586
586
  export * from './instance-template-replicas';
587
+ export * from './instance-template-vscale';
587
588
  export * from './integer-option';
588
589
  export * from './international-desc';
589
590
  export * from './io-quantity';
@@ -18,7 +18,7 @@
18
18
  import type { InstanceTemplateCreateEnvInner } from './instance-template-create-env-inner';
19
19
 
20
20
  /**
21
- * Create assignment for one instance template. name and replicas are required. storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. classCode and volume sizes are defined once on the component and copied onto each template.
21
+ * Create assignment for one instance template. name and replicas are required. classCode, storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. Volume sizes are defined once on the component and copied onto each template.
22
22
  * @export
23
23
  * @interface InstanceTemplateCreate
24
24
  */
@@ -35,6 +35,12 @@ export interface InstanceTemplateCreate {
35
35
  * @memberof InstanceTemplateCreate
36
36
  */
37
37
  'replicas': number;
38
+ /**
39
+ * Class code for this template. Omit to inherit the component classCode.
40
+ * @type {string}
41
+ * @memberof InstanceTemplateCreate
42
+ */
43
+ 'classCode'?: string;
38
44
  /**
39
45
  * StorageClass for this template. Omit to inherit the component storageClass.
40
46
  * @type {string}
@@ -21,6 +21,7 @@
21
21
  */
22
22
 
23
23
  export const InstanceTemplateOverlayField = {
24
+ classCode: 'classCode',
24
25
  storageClass: 'storageClass',
25
26
  availabilityZone: 'availabilityZone',
26
27
  env: 'env',
@@ -0,0 +1,36 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Admin API
5
+ * The Admin API is used to manage the ApeCloud platform.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@apecloud.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ * VScale assignment for one instance template. name and classCode are required.
19
+ * @export
20
+ * @interface InstanceTemplateVScale
21
+ */
22
+ export interface InstanceTemplateVScale {
23
+ /**
24
+ * Instance template name declared on the engine option.
25
+ * @type {string}
26
+ * @memberof InstanceTemplateVScale
27
+ */
28
+ 'name': string;
29
+ /**
30
+ * Class code to apply to this instance template.
31
+ * @type {string}
32
+ * @memberof InstanceTemplateVScale
33
+ */
34
+ 'classCode': string;
35
+ }
36
+
@@ -24,7 +24,7 @@ import type { InstanceTemplateOp } from './instance-template-op';
24
24
  import type { InstanceTemplateOverlayField } from './instance-template-overlay-field';
25
25
 
26
26
  /**
27
- * Declares instance-template support for this mode component. Create requires instanceTemplates with name and replicas. HScale replica changes require instanceTemplates with name and replicas; shard-count changes use shards and cannot be combined with instanceTemplates. VScale uses one classCode and requires instanceTemplates names; only those names are updated. The platform does not even-split or fill in missing templates. Instance online/offline can be set together with instanceTemplates. When absent, the component uses component-level operations.
27
+ * Declares instance-template support for this mode component. Create requires instanceTemplates with name and replicas. HScale replica changes require instanceTemplates with name and replicas; shard-count changes use shards and cannot be combined with instanceTemplates. VScale requires instanceTemplates with name and classCode; only those names are updated. The platform does not even-split or fill in missing templates. Instance online/offline can be set together with instanceTemplates. When absent, the component uses component-level operations.
28
28
  * @export
29
29
  * @interface ModeComponentInstanceTemplate
30
30
  */
@@ -45,7 +45,7 @@ export interface OpsHScale {
45
45
  */
46
46
  'replicas'?: number | null;
47
47
  /**
48
- * Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with replicas and shards. Names must be unique and declared; unspecified templates are left unchanged.
48
+ * Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with shards. Top-level replicas does not override these counts; KB ops fill component replicaChanges and per-template instances together. Names must be unique and declared; unspecified templates are left unchanged.
49
49
  * @type {Array<InstanceTemplateReplicas>}
50
50
  * @memberof OpsHScale
51
51
  */
@@ -13,6 +13,9 @@
13
13
  */
14
14
 
15
15
 
16
+ // May contain unused imports in some cases
17
+ // @ts-ignore
18
+ import type { InstanceTemplateVScale } from './instance-template-vscale';
16
19
  // May contain unused imports in some cases
17
20
  // @ts-ignore
18
21
  import type { TaskSchedule } from './task-schedule';
@@ -42,17 +45,17 @@ export interface OpsVScale {
42
45
  */
43
46
  'memory'?: string;
44
47
  /**
45
- * Class code for this vscale. One classCode per request; all targeted instance templates receive the same resources.
48
+ * Class code for the component-level VerticalScaling resources. Does not override instanceTemplates[].classCode. Required when instanceTemplates is omitted. When both are set, KB ops fill component resources and per-template Instances together.
46
49
  * @type {string}
47
50
  * @memberof OpsVScale
48
51
  */
49
52
  'classCode'?: string;
50
53
  /**
51
- * Instance template names to apply the single classCode to. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Names must be unique and declared.
52
- * @type {Set<string>}
54
+ * Per-template classCode assignments. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Each item sets name and classCode independently. Top-level classCode does not replace these values.
55
+ * @type {Array<InstanceTemplateVScale>}
53
56
  * @memberof OpsVScale
54
57
  */
55
- 'instanceTemplates'?: Set<string> | null;
58
+ 'instanceTemplates'?: Array<InstanceTemplateVScale> | null;
56
59
  /**
57
60
  *
58
61
  * @type {TaskSchedule}
package/src/adminapi.yaml CHANGED
@@ -28950,7 +28950,7 @@ components:
28950
28950
  instanceTemplateCreate:
28951
28951
  type: object
28952
28952
  description: |
28953
- Create assignment for one instance template. name and replicas are required. storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. classCode and volume sizes are defined once on the component and copied onto each template.
28953
+ Create assignment for one instance template. name and replicas are required. classCode, storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. Volume sizes are defined once on the component and copied onto each template.
28954
28954
  required:
28955
28955
  - name
28956
28956
  - replicas
@@ -28963,6 +28963,9 @@ components:
28963
28963
  type: integer
28964
28964
  minimum: 1
28965
28965
  description: Replica count for this instance template.
28966
+ classCode:
28967
+ type: string
28968
+ description: Class code for this template. Omit to inherit the component classCode.
28966
28969
  storageClass:
28967
28970
  type: string
28968
28971
  description: StorageClass for this template. Omit to inherit the component storageClass.
@@ -29073,7 +29076,7 @@ components:
29073
29076
  instanceTemplates:
29074
29077
  type: array
29075
29078
  minItems: 1
29076
- description: Per-template replicas and optional overlays (storageClass, availabilityZone, env, annotations). Node group is cluster-level and inherited by every component and template. Required when the engine option declares instanceTemplate. Names must match instanceTemplate.names exactly. classCode and volumes on the component are copied onto each template; the apiserver does not even-split replicas.
29079
+ description: Per-template replicas and optional overlays (classCode, storageClass, availabilityZone, env, annotations). Node group is cluster-level and inherited by every component and template. Required when the engine option declares instanceTemplate. Names must match instanceTemplate.names exactly. classCode and volumes on the component are copied onto each template; the apiserver does not even-split replicas.
29077
29080
  items:
29078
29081
  $ref: '#/components/schemas/instanceTemplateCreate'
29079
29082
  availabilityZone:
@@ -30484,7 +30487,7 @@ components:
30484
30487
  instanceTemplates:
30485
30488
  type: array
30486
30489
  minItems: 1
30487
- description: Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with replicas and shards. Names must be unique and declared; unspecified templates are left unchanged.
30490
+ description: Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with shards. Top-level replicas does not override these counts; KB ops fill component replicaChanges and per-template instances together. Names must be unique and declared; unspecified templates are left unchanged.
30488
30491
  items:
30489
30492
  $ref: '#/components/schemas/instanceTemplateReplicas'
30490
30493
  onlineInstancesToOffline:
@@ -34513,6 +34516,21 @@ components:
34513
34516
  - volumes
34514
34517
  - component
34515
34518
  type: object
34519
+ instanceTemplateVScale:
34520
+ type: object
34521
+ description: VScale assignment for one instance template. name and classCode are required.
34522
+ required:
34523
+ - name
34524
+ - classCode
34525
+ properties:
34526
+ name:
34527
+ type: string
34528
+ minLength: 1
34529
+ description: Instance template name declared on the engine option.
34530
+ classCode:
34531
+ type: string
34532
+ minLength: 1
34533
+ description: Class code to apply to this instance template.
34516
34534
  opsVScale:
34517
34535
  description: OpsVScale is the payload to vertically scale a KubeBlocks cluster
34518
34536
  required:
@@ -34530,15 +34548,14 @@ components:
34530
34548
  type: string
34531
34549
  classCode:
34532
34550
  description: |
34533
- Class code for this vscale. One classCode per request; all targeted instance templates receive the same resources.
34551
+ Class code for the component-level VerticalScaling resources. Does not override instanceTemplates[].classCode. Required when instanceTemplates is omitted. When both are set, KB ops fill component resources and per-template Instances together.
34534
34552
  type: string
34535
34553
  instanceTemplates:
34536
34554
  type: array
34537
34555
  minItems: 1
34538
- uniqueItems: true
34539
34556
  items:
34540
- type: string
34541
- description: Instance template names to apply the single classCode to. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Names must be unique and declared.
34557
+ $ref: '#/components/schemas/instanceTemplateVScale'
34558
+ description: Per-template classCode assignments. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Each item sets name and classCode independently. Top-level classCode does not replace these values.
34542
34559
  nullable: true
34543
34560
  schedule:
34544
34561
  $ref: '#/components/schemas/taskSchedule'
@@ -38226,6 +38243,7 @@ components:
38226
38243
  type: string
38227
38244
  description: Overlay field the frontend may render on an instance template.
38228
38245
  enum:
38246
+ - classCode
38229
38247
  - storageClass
38230
38248
  - availabilityZone
38231
38249
  - env
@@ -38278,7 +38296,7 @@ components:
38278
38296
  Create requires instanceTemplates with name and replicas.
38279
38297
  HScale replica changes require instanceTemplates with name and replicas;
38280
38298
  shard-count changes use shards and cannot be combined with instanceTemplates.
38281
- VScale uses one classCode and requires instanceTemplates names;
38299
+ VScale requires instanceTemplates with name and classCode;
38282
38300
  only those names are updated.
38283
38301
  The platform does not even-split or fill in missing templates.
38284
38302
  Instance online/offline can be set together with instanceTemplates.
@@ -600,6 +600,7 @@ models/instance-template-env.ts
600
600
  models/instance-template-op.ts
601
601
  models/instance-template-overlay-field.ts
602
602
  models/instance-template-replicas.ts
603
+ models/instance-template-vscale.ts
603
604
  models/instance.ts
604
605
  models/integer-option.ts
605
606
  models/international-desc.ts
@@ -48,7 +48,7 @@ export interface ComponentItemCreate {
48
48
  */
49
49
  'replicas'?: number | null;
50
50
  /**
51
- * Per-template replicas and optional overlays (storageClass, availabilityZone, env, annotations). Node group is cluster-level and inherited by every component and template. Required when the engine option declares instanceTemplate. Names must match instanceTemplate.names exactly. classCode and volumes on the component are copied onto each template; the apiserver does not even-split replicas.
51
+ * Per-template replicas and optional overlays (classCode, storageClass, availabilityZone, env, annotations). Node group is cluster-level and inherited by every component and template. Required when the engine option declares instanceTemplate. Names must match instanceTemplate.names exactly. classCode and volumes on the component are copied onto each template; the apiserver does not even-split replicas.
52
52
  * @type {Array<InstanceTemplateCreate>}
53
53
  * @memberof ComponentItemCreate
54
54
  */
@@ -508,6 +508,7 @@ export * from './instance-template-env';
508
508
  export * from './instance-template-op';
509
509
  export * from './instance-template-overlay-field';
510
510
  export * from './instance-template-replicas';
511
+ export * from './instance-template-vscale';
511
512
  export * from './integer-option';
512
513
  export * from './international-desc';
513
514
  export * from './io-quantity';
@@ -18,7 +18,7 @@
18
18
  import type { InstanceTemplateCreateEnvInner } from './instance-template-create-env-inner';
19
19
 
20
20
  /**
21
- * Create assignment for one instance template. name and replicas are required. storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. classCode and volume sizes are defined once on the component and copied onto each template.
21
+ * Create assignment for one instance template. name and replicas are required. classCode, storageClass, availabilityZone, env, and annotations are optional overlays; omitted fields inherit the component. Node group is cluster-level and is inherited by every component and template. Volume sizes are defined once on the component and copied onto each template.
22
22
  * @export
23
23
  * @interface InstanceTemplateCreate
24
24
  */
@@ -35,6 +35,12 @@ export interface InstanceTemplateCreate {
35
35
  * @memberof InstanceTemplateCreate
36
36
  */
37
37
  'replicas': number;
38
+ /**
39
+ * Class code for this template. Omit to inherit the component classCode.
40
+ * @type {string}
41
+ * @memberof InstanceTemplateCreate
42
+ */
43
+ 'classCode'?: string;
38
44
  /**
39
45
  * StorageClass for this template. Omit to inherit the component storageClass.
40
46
  * @type {string}
@@ -21,6 +21,7 @@
21
21
  */
22
22
 
23
23
  export const InstanceTemplateOverlayField = {
24
+ classCode: 'classCode',
24
25
  storageClass: 'storageClass',
25
26
  availabilityZone: 'availabilityZone',
26
27
  env: 'env',
@@ -0,0 +1,36 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * KubeBlocks Cloud API
5
+ * KubeBlocks Cloud API is a RESTful API for managing KubeBlocks Cloud resources. The API is organized around REST. Our API has predictable resource-oriented URLs, accepts `JSON-encoded` request bodies, returns `JSON-encoded` responses, and uses standard HTTP response codes, authentication, and verbs. We use standard HTTP authentication and provide API keys to identify who you are. Your API keys carry many privileges, so be sure to keep them secret! Do not share your secret API keys in publicly accessible areas such as GitHub, client-side code, and so forth.
6
+ *
7
+ * The version of the OpenAPI document: 1.0.0
8
+ * Contact: support@apecloud.com
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+
16
+
17
+ /**
18
+ * VScale assignment for one instance template. name and classCode are required.
19
+ * @export
20
+ * @interface InstanceTemplateVScale
21
+ */
22
+ export interface InstanceTemplateVScale {
23
+ /**
24
+ * Instance template name declared on the engine option.
25
+ * @type {string}
26
+ * @memberof InstanceTemplateVScale
27
+ */
28
+ 'name': string;
29
+ /**
30
+ * Class code to apply to this instance template.
31
+ * @type {string}
32
+ * @memberof InstanceTemplateVScale
33
+ */
34
+ 'classCode': string;
35
+ }
36
+
@@ -24,7 +24,7 @@ import type { InstanceTemplateOp } from './instance-template-op';
24
24
  import type { InstanceTemplateOverlayField } from './instance-template-overlay-field';
25
25
 
26
26
  /**
27
- * Declares instance-template support for this mode component. Create requires instanceTemplates with name and replicas. HScale replica changes require instanceTemplates with name and replicas; shard-count changes use shards and cannot be combined with instanceTemplates. VScale uses one classCode and requires instanceTemplates names; only those names are updated. The platform does not even-split or fill in missing templates. Instance online/offline can be set together with instanceTemplates. When absent, the component uses component-level operations.
27
+ * Declares instance-template support for this mode component. Create requires instanceTemplates with name and replicas. HScale replica changes require instanceTemplates with name and replicas; shard-count changes use shards and cannot be combined with instanceTemplates. VScale requires instanceTemplates with name and classCode; only those names are updated. The platform does not even-split or fill in missing templates. Instance online/offline can be set together with instanceTemplates. When absent, the component uses component-level operations.
28
28
  * @export
29
29
  * @interface ModeComponentInstanceTemplate
30
30
  */
@@ -45,7 +45,7 @@ export interface OpsHScale {
45
45
  */
46
46
  'replicas'?: number | null;
47
47
  /**
48
- * Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with replicas and shards. Names must be unique and declared; unspecified templates are left unchanged.
48
+ * Target replica count for one or more instance templates. Required for replica hscale when the engine option declares instanceTemplate with hscale. Mutually exclusive with shards. Top-level replicas does not override these counts; KB ops fill component replicaChanges and per-template instances together. Names must be unique and declared; unspecified templates are left unchanged.
49
49
  * @type {Array<InstanceTemplateReplicas>}
50
50
  * @memberof OpsHScale
51
51
  */
@@ -13,6 +13,9 @@
13
13
  */
14
14
 
15
15
 
16
+ // May contain unused imports in some cases
17
+ // @ts-ignore
18
+ import type { InstanceTemplateVScale } from './instance-template-vscale';
16
19
  // May contain unused imports in some cases
17
20
  // @ts-ignore
18
21
  import type { TaskSchedule } from './task-schedule';
@@ -42,17 +45,17 @@ export interface OpsVScale {
42
45
  */
43
46
  'memory'?: string;
44
47
  /**
45
- * Class code for this vscale. One classCode per request; all targeted instance templates receive the same resources.
48
+ * Class code for the component-level VerticalScaling resources. Does not override instanceTemplates[].classCode. Required when instanceTemplates is omitted. When both are set, KB ops fill component resources and per-template Instances together.
46
49
  * @type {string}
47
50
  * @memberof OpsVScale
48
51
  */
49
52
  'classCode'?: string;
50
53
  /**
51
- * Instance template names to apply the single classCode to. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Names must be unique and declared.
52
- * @type {Set<string>}
54
+ * Per-template classCode assignments. Required when the engine option declares instanceTemplate with vscale. Only these names are updated. Each item sets name and classCode independently. Top-level classCode does not replace these values.
55
+ * @type {Array<InstanceTemplateVScale>}
53
56
  * @memberof OpsVScale
54
57
  */
55
- 'instanceTemplates'?: Set<string> | null;
58
+ 'instanceTemplates'?: Array<InstanceTemplateVScale> | null;
56
59
  /**
57
60
  *
58
61
  * @type {TaskSchedule}