kb-cloud-client-typescript 2.4.0-alpha.66 → 2.4.0-alpha.68

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 (153) hide show
  1. package/dist/adminapi/apis/task-api.d.ts +16 -7
  2. package/dist/adminapi/apis/task-api.d.ts.map +1 -1
  3. package/dist/adminapi/apis/task-api.js +14 -9
  4. package/dist/adminapi/apis/task-api.js.map +1 -1
  5. package/dist/adminapi/apis/vip-pool-api.d.ts +72 -0
  6. package/dist/adminapi/apis/vip-pool-api.d.ts.map +1 -1
  7. package/dist/adminapi/apis/vip-pool-api.js +80 -0
  8. package/dist/adminapi/apis/vip-pool-api.js.map +1 -1
  9. package/dist/adminapi/models/cluster-create.d.ts +6 -0
  10. package/dist/adminapi/models/cluster-create.d.ts.map +1 -1
  11. package/dist/adminapi/models/component-item-create.d.ts +8 -1
  12. package/dist/adminapi/models/component-item-create.d.ts.map +1 -1
  13. package/dist/adminapi/models/index.d.ts +9 -0
  14. package/dist/adminapi/models/index.d.ts.map +1 -1
  15. package/dist/adminapi/models/index.js +9 -0
  16. package/dist/adminapi/models/index.js.map +1 -1
  17. package/dist/adminapi/models/instance-template-attribute.d.ts +23 -0
  18. package/dist/adminapi/models/instance-template-attribute.d.ts.map +1 -0
  19. package/dist/adminapi/models/instance-template-attribute.js +27 -0
  20. package/dist/adminapi/models/instance-template-attribute.js.map +1 -0
  21. package/dist/adminapi/models/instance-template-create-env-inner.d.ts +31 -0
  22. package/dist/adminapi/models/instance-template-create-env-inner.d.ts.map +1 -0
  23. package/dist/adminapi/models/instance-template-create-env-inner.js +16 -0
  24. package/dist/adminapi/models/instance-template-create-env-inner.js.map +1 -0
  25. package/dist/adminapi/models/instance-template-create.d.ts +54 -0
  26. package/dist/adminapi/models/instance-template-create.d.ts.map +1 -0
  27. package/dist/adminapi/models/instance-template-create.js +16 -0
  28. package/dist/adminapi/models/instance-template-create.js.map +1 -0
  29. package/dist/adminapi/models/instance-template-env.d.ts +50 -0
  30. package/dist/adminapi/models/instance-template-env.d.ts.map +1 -0
  31. package/dist/adminapi/models/instance-template-env.js +16 -0
  32. package/dist/adminapi/models/instance-template-env.js.map +1 -0
  33. package/dist/adminapi/models/instance-template-op.d.ts +22 -0
  34. package/dist/adminapi/models/instance-template-op.d.ts.map +1 -0
  35. package/dist/adminapi/models/instance-template-op.js +26 -0
  36. package/dist/adminapi/models/instance-template-op.js.map +1 -0
  37. package/dist/adminapi/models/instance-template-replicas.d.ts +31 -0
  38. package/dist/adminapi/models/instance-template-replicas.d.ts.map +1 -0
  39. package/dist/adminapi/models/instance-template-replicas.js +16 -0
  40. package/dist/adminapi/models/instance-template-replicas.js.map +1 -0
  41. package/dist/adminapi/models/mode-component-instance-template.d.ts +46 -0
  42. package/dist/adminapi/models/mode-component-instance-template.d.ts.map +1 -0
  43. package/dist/adminapi/models/mode-component-instance-template.js +16 -0
  44. package/dist/adminapi/models/mode-component-instance-template.js.map +1 -0
  45. package/dist/adminapi/models/mode-component.d.ts +7 -0
  46. package/dist/adminapi/models/mode-component.d.ts.map +1 -1
  47. package/dist/adminapi/models/ops-hscale.d.ts +8 -1
  48. package/dist/adminapi/models/ops-hscale.d.ts.map +1 -1
  49. package/dist/adminapi/models/ops-vscale.d.ts +1 -1
  50. package/dist/adminapi/models/task-retry-mode.d.ts +22 -0
  51. package/dist/adminapi/models/task-retry-mode.d.ts.map +1 -0
  52. package/dist/adminapi/models/task-retry-mode.js +26 -0
  53. package/dist/adminapi/models/task-retry-mode.js.map +1 -0
  54. package/dist/adminapi/models/task.d.ts +7 -0
  55. package/dist/adminapi/models/task.d.ts.map +1 -1
  56. package/dist/adminapi/models/vip-pool-create.d.ts +6 -0
  57. package/dist/adminapi/models/vip-pool-create.d.ts.map +1 -1
  58. package/dist/adminapi/models/vip-pool-update.d.ts +25 -0
  59. package/dist/adminapi/models/vip-pool-update.d.ts.map +1 -0
  60. package/dist/adminapi/models/vip-pool-update.js +16 -0
  61. package/dist/adminapi/models/vip-pool-update.js.map +1 -0
  62. package/dist/adminapi/models/vip-pool.d.ts +12 -0
  63. package/dist/adminapi/models/vip-pool.d.ts.map +1 -1
  64. package/dist/openapi/models/cluster-create.d.ts +6 -0
  65. package/dist/openapi/models/cluster-create.d.ts.map +1 -1
  66. package/dist/openapi/models/component-item-create.d.ts +8 -1
  67. package/dist/openapi/models/component-item-create.d.ts.map +1 -1
  68. package/dist/openapi/models/index.d.ts +8 -0
  69. package/dist/openapi/models/index.d.ts.map +1 -1
  70. package/dist/openapi/models/index.js +8 -0
  71. package/dist/openapi/models/index.js.map +1 -1
  72. package/dist/openapi/models/instance-template-attribute.d.ts +23 -0
  73. package/dist/openapi/models/instance-template-attribute.d.ts.map +1 -0
  74. package/dist/openapi/models/instance-template-attribute.js +27 -0
  75. package/dist/openapi/models/instance-template-attribute.js.map +1 -0
  76. package/dist/openapi/models/instance-template-create-env-inner.d.ts +31 -0
  77. package/dist/openapi/models/instance-template-create-env-inner.d.ts.map +1 -0
  78. package/dist/openapi/models/instance-template-create-env-inner.js +16 -0
  79. package/dist/openapi/models/instance-template-create-env-inner.js.map +1 -0
  80. package/dist/openapi/models/instance-template-create.d.ts +54 -0
  81. package/dist/openapi/models/instance-template-create.d.ts.map +1 -0
  82. package/dist/openapi/models/instance-template-create.js +16 -0
  83. package/dist/openapi/models/instance-template-create.js.map +1 -0
  84. package/dist/openapi/models/instance-template-env.d.ts +50 -0
  85. package/dist/openapi/models/instance-template-env.d.ts.map +1 -0
  86. package/dist/openapi/models/instance-template-env.js +16 -0
  87. package/dist/openapi/models/instance-template-env.js.map +1 -0
  88. package/dist/openapi/models/instance-template-op.d.ts +22 -0
  89. package/dist/openapi/models/instance-template-op.d.ts.map +1 -0
  90. package/dist/openapi/models/instance-template-op.js +26 -0
  91. package/dist/openapi/models/instance-template-op.js.map +1 -0
  92. package/dist/openapi/models/instance-template-replicas.d.ts +31 -0
  93. package/dist/openapi/models/instance-template-replicas.d.ts.map +1 -0
  94. package/dist/openapi/models/instance-template-replicas.js +16 -0
  95. package/dist/openapi/models/instance-template-replicas.js.map +1 -0
  96. package/dist/openapi/models/mode-component-instance-template.d.ts +46 -0
  97. package/dist/openapi/models/mode-component-instance-template.d.ts.map +1 -0
  98. package/dist/openapi/models/mode-component-instance-template.js +16 -0
  99. package/dist/openapi/models/mode-component-instance-template.js.map +1 -0
  100. package/dist/openapi/models/mode-component.d.ts +7 -0
  101. package/dist/openapi/models/mode-component.d.ts.map +1 -1
  102. package/dist/openapi/models/ops-hscale.d.ts +8 -1
  103. package/dist/openapi/models/ops-hscale.d.ts.map +1 -1
  104. package/dist/openapi/models/ops-vscale.d.ts +1 -1
  105. package/dist/openapi/models/task-retry-mode.d.ts +22 -0
  106. package/dist/openapi/models/task-retry-mode.d.ts.map +1 -0
  107. package/dist/openapi/models/task-retry-mode.js +26 -0
  108. package/dist/openapi/models/task-retry-mode.js.map +1 -0
  109. package/dist/openapi/models/task.d.ts +7 -0
  110. package/dist/openapi/models/task.d.ts.map +1 -1
  111. package/dist/openapi/models/vip-pool.d.ts +12 -0
  112. package/dist/openapi/models/vip-pool.d.ts.map +1 -1
  113. package/package.json +1 -1
  114. package/src/adminapi/.openapi-generator/FILES +9 -0
  115. package/src/adminapi/apis/task-api.ts +25 -10
  116. package/src/adminapi/apis/vip-pool-api.ts +128 -0
  117. package/src/adminapi/models/cluster-create.ts +6 -0
  118. package/src/adminapi/models/component-item-create.ts +10 -1
  119. package/src/adminapi/models/index.ts +9 -0
  120. package/src/adminapi/models/instance-template-attribute.ts +32 -0
  121. package/src/adminapi/models/instance-template-create-env-inner.ts +36 -0
  122. package/src/adminapi/models/instance-template-create.ts +57 -0
  123. package/src/adminapi/models/instance-template-env.ts +57 -0
  124. package/src/adminapi/models/instance-template-op.ts +31 -0
  125. package/src/adminapi/models/instance-template-replicas.ts +36 -0
  126. package/src/adminapi/models/mode-component-instance-template.ts +57 -0
  127. package/src/adminapi/models/mode-component.ts +9 -0
  128. package/src/adminapi/models/ops-hscale.ts +10 -1
  129. package/src/adminapi/models/ops-vscale.ts +1 -1
  130. package/src/adminapi/models/task-retry-mode.ts +31 -0
  131. package/src/adminapi/models/task.ts +9 -0
  132. package/src/adminapi/models/vip-pool-create.ts +6 -0
  133. package/src/adminapi/models/vip-pool-update.ts +30 -0
  134. package/src/adminapi/models/vip-pool.ts +12 -0
  135. package/src/adminapi.yaml +253 -4
  136. package/src/openapi/.openapi-generator/FILES +8 -0
  137. package/src/openapi/models/cluster-create.ts +6 -0
  138. package/src/openapi/models/component-item-create.ts +10 -1
  139. package/src/openapi/models/index.ts +8 -0
  140. package/src/openapi/models/instance-template-attribute.ts +32 -0
  141. package/src/openapi/models/instance-template-create-env-inner.ts +36 -0
  142. package/src/openapi/models/instance-template-create.ts +57 -0
  143. package/src/openapi/models/instance-template-env.ts +57 -0
  144. package/src/openapi/models/instance-template-op.ts +31 -0
  145. package/src/openapi/models/instance-template-replicas.ts +36 -0
  146. package/src/openapi/models/mode-component-instance-template.ts +57 -0
  147. package/src/openapi/models/mode-component.ts +9 -0
  148. package/src/openapi/models/ops-hscale.ts +10 -1
  149. package/src/openapi/models/ops-vscale.ts +1 -1
  150. package/src/openapi/models/task-retry-mode.ts +31 -0
  151. package/src/openapi/models/task.ts +9 -0
  152. package/src/openapi/models/vip-pool.ts +12 -0
  153. package/src/openapi.yaml +187 -3
package/src/adminapi.yaml CHANGED
@@ -11407,6 +11407,44 @@ paths:
11407
11407
  $ref: '#/components/responses/404'
11408
11408
  tags:
11409
11409
  - vipPool
11410
+ put:
11411
+ operationId: updateVIPPool
11412
+ summary: Update environment VIP Pool
11413
+ parameters:
11414
+ - description: name of the environment
11415
+ in: path
11416
+ name: environmentName
11417
+ required: true
11418
+ schema:
11419
+ type: string
11420
+ - description: id of the VIP Pool
11421
+ in: path
11422
+ name: poolID
11423
+ required: true
11424
+ schema:
11425
+ type: string
11426
+ requestBody:
11427
+ content:
11428
+ application/json:
11429
+ schema:
11430
+ $ref: '#/components/schemas/vipPoolUpdate'
11431
+ required: true
11432
+ responses:
11433
+ '200':
11434
+ content:
11435
+ application/json:
11436
+ schema:
11437
+ $ref: '#/components/schemas/vipPool'
11438
+ description: A successful response.
11439
+ '400':
11440
+ $ref: '#/components/responses/400'
11441
+ '403':
11442
+ $ref: '#/components/responses/403'
11443
+ '404':
11444
+ $ref: '#/components/responses/404'
11445
+ tags:
11446
+ - vipPool
11447
+ x-codegen-request-body-name: body
11410
11448
  /admin/v1/environments/{environmentName}/storageClasses:
11411
11449
  get:
11412
11450
  description: Provides a summary of storage class statistics.
@@ -17776,7 +17814,7 @@ paths:
17776
17814
  /admin/v1/tasks/{taskId}/retry:
17777
17815
  patch:
17778
17816
  summary: Retry a task
17779
- description: retry task
17817
+ description: Restart a failed or stopped task. Resume requires the task type to declare resume in allowActions. The default mode is restart, which reruns all steps; resume preserves successful steps.
17780
17818
  operationId: retryTask
17781
17819
  parameters:
17782
17820
  - description: ID of the task
@@ -17785,6 +17823,12 @@ paths:
17785
17823
  required: true
17786
17824
  schema:
17787
17825
  type: string
17826
+ - name: mode
17827
+ in: query
17828
+ description: restart reruns all steps; resume preserves successful steps and reruns unfinished steps and PreFinish hooks.
17829
+ required: false
17830
+ schema:
17831
+ $ref: '#/components/schemas/taskRetryMode'
17788
17832
  responses:
17789
17833
  '200':
17790
17834
  description: Current status of the task
@@ -17800,6 +17844,12 @@ paths:
17800
17844
  $ref: '#/components/responses/403'
17801
17845
  '404':
17802
17846
  $ref: '#/components/responses/404'
17847
+ '405':
17848
+ description: The task type does not support resume.
17849
+ content:
17850
+ application/json:
17851
+ schema:
17852
+ $ref: '#/components/schemas/APIErrorResponse'
17803
17853
  '500':
17804
17854
  $ref: '#/components/responses/500'
17805
17855
  tags:
@@ -30107,6 +30157,48 @@ components:
30107
30157
  enum:
30108
30158
  - DoNotTerminate
30109
30159
  - Delete
30160
+ instanceTemplateCreate:
30161
+ type: object
30162
+ additionalProperties: false
30163
+ description: |
30164
+ Create assignment for one instance template. name and replicas are required. env, annotations, and labels are optional overlays onto the chart-rendered instance. The request must include every chart-rendered instance template exactly once.
30165
+ required:
30166
+ - name
30167
+ - replicas
30168
+ properties:
30169
+ name:
30170
+ type: string
30171
+ minLength: 1
30172
+ description: Instance template name; must match a chart-rendered instance.
30173
+ replicas:
30174
+ type: integer
30175
+ minimum: 0
30176
+ description: Replica count for this instance template.
30177
+ env:
30178
+ type: array
30179
+ description: Simple env vars (name and value only) merged into this template. valueFrom is not supported; overlaying a name clears any chart valueFrom.
30180
+ items:
30181
+ type: object
30182
+ required:
30183
+ - name
30184
+ - value
30185
+ properties:
30186
+ name:
30187
+ type: string
30188
+ value:
30189
+ type: string
30190
+ minLength: 1
30191
+ description: Plain string value only. valueFrom is not supported.
30192
+ annotations:
30193
+ type: object
30194
+ additionalProperties:
30195
+ type: string
30196
+ description: Annotation map (string key to string value). Merged into this template; same-name keys overwritten. Chart keys are not deleted.
30197
+ labels:
30198
+ type: object
30199
+ additionalProperties:
30200
+ type: string
30201
+ description: Label map (string key to string value). Merged into this template; same-name keys overwritten. Chart keys are not deleted.
30110
30202
  ioQuantity:
30111
30203
  description: IO Quantity describes IOPS and BPS of a volume
30112
30204
  properties:
@@ -30190,7 +30282,13 @@ components:
30190
30282
  title: Replicas
30191
30283
  type: integer
30192
30284
  x-nullable: true
30193
- description: Omit to use the cluster chart default. Set zero to disable the component when its resource constraints allow zero replicas.
30285
+ description: Omit to use the cluster chart default. Set zero to disable the component when its resource constraints allow zero replicas. If the rendered component has instance templates, this must equal the sum of all template replica counts in the complete instanceTemplates list.
30286
+ instanceTemplates:
30287
+ type: array
30288
+ minItems: 1
30289
+ description: Per-template replicas and optional overlays (env, annotations, labels). Required when the chart renders instance templates. Names must exactly match all chart-rendered instances, without missing, extra, or duplicate names; order does not matter. Component replicas must equal the sum of all requested instance template replica counts.
30290
+ items:
30291
+ $ref: '#/components/schemas/instanceTemplateCreate'
30194
30292
  skipResourceConstraints:
30195
30293
  type: boolean
30196
30294
  description: Whether to skip resource constraint validation when creating cluster
@@ -30484,6 +30582,10 @@ components:
30484
30582
  networkMode:
30485
30583
  description: Specify the network mode for intra-cluster communication
30486
30584
  $ref: '#/components/schemas/networkMode'
30585
+ vipPoolName:
30586
+ title: VIP Pool Name
30587
+ description: Name of the VIP Pool (VIP Pool poolName) used as the MetalLB address pool for LoadBalancer services. Only effective when networkMode is LoadBalancer.
30588
+ type: string
30487
30589
  serviceRefs:
30488
30590
  type: array
30489
30591
  items:
@@ -31561,8 +31663,23 @@ components:
31561
31663
  x-nullable: true
31562
31664
  required:
31563
31665
  - type
31666
+ instanceTemplateReplicas:
31667
+ type: object
31668
+ description: HScale assignment for one instance template. name and replicas only.
31669
+ required:
31670
+ - name
31671
+ - replicas
31672
+ properties:
31673
+ name:
31674
+ type: string
31675
+ minLength: 1
31676
+ description: Instance template name on the live Cluster spec.
31677
+ replicas:
31678
+ type: integer
31679
+ minimum: 0
31680
+ description: Target replica count for this instance template.
31564
31681
  opsHScale:
31565
- description: OpsHScale is the payload to horizontally scale a KubeBlocks cluster. It requires specifying either the number of replicas or the number of shards.
31682
+ description: OpsHScale is the payload to horizontally scale a KubeBlocks cluster. Specify replicas or shards. instanceTemplates is an optional overlay and requires top-level replicas.
31566
31683
  required:
31567
31684
  - component
31568
31685
  properties:
@@ -31578,6 +31695,12 @@ components:
31578
31695
  description: number of replicas
31579
31696
  type: integer
31580
31697
  nullable: true
31698
+ instanceTemplates:
31699
+ type: array
31700
+ minItems: 1
31701
+ description: Target replica count for named instance templates. Requires top-level replicas. Mapped onto the live Cluster spec to build scaleIn/scaleOut.instances. Required for replica scaling when the live component has instance templates. Names must exactly match all live instance templates, without missing, extra, or duplicate names; order does not matter. Top-level replicas must equal the sum of all requested template replica counts. Shard-count scaling does not check templates and cannot include this list.
31702
+ items:
31703
+ $ref: '#/components/schemas/instanceTemplateReplicas'
31581
31704
  onlineInstancesToOffline:
31582
31705
  type: array
31583
31706
  items:
@@ -35620,7 +35743,7 @@ components:
35620
35743
  description: memory size
35621
35744
  type: string
35622
35745
  classCode:
35623
- description: class code of the cluster
35746
+ description: Class code for component-level vertical scaling.
35624
35747
  type: string
35625
35748
  schedule:
35626
35749
  $ref: '#/components/schemas/taskSchedule'
@@ -37226,6 +37349,14 @@ components:
37226
37349
  description: ID of VIP Pool
37227
37350
  title: ID
37228
37351
  type: string
37352
+ name:
37353
+ description: Name of VIP Pool. It is the MetalLB IPAddressPool resource name, generated as kb-<id>.
37354
+ title: Name
37355
+ type: string
37356
+ poolName:
37357
+ description: User facing name of the VIP Pool, used to select the pool when creating a cluster. It falls back to the IPAddressPool resource name.
37358
+ title: Pool Name
37359
+ type: string
37229
37360
  total:
37230
37361
  description: Total number of IP addresses
37231
37362
  format: int64
@@ -37262,6 +37393,21 @@ components:
37262
37393
  type: object
37263
37394
  vipPoolCreate:
37264
37395
  description: VIP Pool create
37396
+ properties:
37397
+ addresses:
37398
+ description: IP Addresses
37399
+ title: IP Addresses
37400
+ type: string
37401
+ poolName:
37402
+ description: Name of the VIP Pool. It is what a cluster selects the pool by, so it is not restricted by Kubernetes resource naming rules. The MetalLB IPAddressPool resource name stays the generated kb-<id>.
37403
+ title: Pool Name
37404
+ type: string
37405
+ required:
37406
+ - addresses
37407
+ - poolName
37408
+ type: object
37409
+ vipPoolUpdate:
37410
+ description: VIP Pool update
37265
37411
  properties:
37266
37412
  addresses:
37267
37413
  description: IP Addresses
@@ -39298,6 +39444,39 @@ components:
39298
39444
  enum:
39299
39445
  - '0.9'
39300
39446
  - '1.0'
39447
+ instanceTemplateOp:
39448
+ type: string
39449
+ description: Operation that can be declared on instanceTemplate.ops.
39450
+ enum:
39451
+ - hscale
39452
+ - vscale
39453
+ instanceTemplateAttribute:
39454
+ type: string
39455
+ description: Heterogeneous attribute the frontend may render on an instance template at create.
39456
+ enum:
39457
+ - env
39458
+ - annotations
39459
+ - labels
39460
+ instanceTemplateEnv:
39461
+ type: object
39462
+ description: One fillable env var on an instance template, for frontend rendering.
39463
+ required:
39464
+ - name
39465
+ properties:
39466
+ name:
39467
+ type: string
39468
+ minLength: 1
39469
+ description: Env var name written to the instance template.
39470
+ label:
39471
+ $ref: '#/components/schemas/localizedDescription'
39472
+ description:
39473
+ $ref: '#/components/schemas/localizedDescription'
39474
+ required:
39475
+ type: boolean
39476
+ description: If true, the frontend should treat this env as required. Create does not re-check.
39477
+ default:
39478
+ type: string
39479
+ description: Default value shown by the frontend.
39301
39480
  modeReadonlyEndpoint:
39302
39481
  type: object
39303
39482
  required:
@@ -39319,6 +39498,64 @@ components:
39319
39498
  type: boolean
39320
39499
  hideOnCreate:
39321
39500
  type: boolean
39501
+ instanceTemplate:
39502
+ type: object
39503
+ description: |
39504
+ Frontend catalog of instance templates for this mode component.
39505
+ names, ops, attributes, and env are for UI rendering. Create
39506
+ validates the request against chart-rendered Cluster instances,
39507
+ not this catalog. HScale does not re-check this catalog; it
39508
+ builds the OpsRequest from the request and the live Cluster.
39509
+ HScale instanceTemplates still requires top-level replicas.
39510
+ ops lists hscale and vscale for the UI (vscale is reserved;
39511
+ class stays component-level). Only HScale processes instance templates.
39512
+ VolumeExpansion, VScale, Upgrade, Restart, and other operations silently
39513
+ ignore instance templates and keep their component-level behavior.
39514
+ Template-level volumeexpansion is not implemented.
39515
+ The platform does not even-split or fill in missing templates.
39516
+ When absent, the frontend should use component-level operations.
39517
+ required:
39518
+ - names
39519
+ - ops
39520
+ properties:
39521
+ names:
39522
+ type: array
39523
+ minItems: 1
39524
+ uniqueItems: true
39525
+ items:
39526
+ type: string
39527
+ description: |
39528
+ Instance template names the frontend should render.
39529
+ Create and hscale check names against the chart or live Cluster,
39530
+ not this list.
39531
+ ops:
39532
+ type: array
39533
+ minItems: 1
39534
+ items:
39535
+ $ref: '#/components/schemas/instanceTemplateOp'
39536
+ description: |
39537
+ Operations the frontend should offer per template: hscale, vscale.
39538
+ Not re-checked when creating a cluster or building an hscale OpsRequest.
39539
+ Only hscale currently acts per template; vscale is reserved.
39540
+ VolumeExpansion, VScale, Upgrade, and Restart ignore instance templates
39541
+ and keep their component-level behavior.
39542
+ attributes:
39543
+ type: array
39544
+ uniqueItems: true
39545
+ items:
39546
+ $ref: '#/components/schemas/instanceTemplateAttribute'
39547
+ description: |
39548
+ Heterogeneous attributes the frontend should render on each
39549
+ instance template at create. Omitted or empty means only name
39550
+ and replicas. Create overlays the request onto the chart and
39551
+ does not re-check this list.
39552
+ env:
39553
+ type: array
39554
+ description: |
39555
+ Env vars the frontend may render when attributes includes env.
39556
+ Create does not re-check this list.
39557
+ items:
39558
+ $ref: '#/components/schemas/instanceTemplateEnv'
39322
39559
  serviceRef:
39323
39560
  type: string
39324
39561
  description: |
@@ -43819,6 +44056,13 @@ components:
43819
44056
  - interrupt
43820
44057
  - ignore
43821
44058
  description: Policy to handle failures
44059
+ taskRetryMode:
44060
+ type: string
44061
+ enum:
44062
+ - restart
44063
+ - resume
44064
+ default: restart
44065
+ description: restart reruns all steps; resume preserves successful steps.
43822
44066
  task:
43823
44067
  type: object
43824
44068
  required:
@@ -43884,6 +44128,11 @@ components:
43884
44128
  description: Degree of parallelism for the task
43885
44129
  failurePolicy:
43886
44130
  $ref: '#/components/schemas/taskFailurePolicy'
44131
+ retryModes:
44132
+ type: array
44133
+ description: Supported manual retry modes for this task. Runtime conflicts are checked when retrying.
44134
+ items:
44135
+ $ref: '#/components/schemas/taskRetryMode'
43887
44136
  retryLimit:
43888
44137
  type: integer
43889
44138
  description: Maximum number of retries for the task
@@ -604,6 +604,12 @@ models/instance-metrics-list.ts
604
604
  models/instance-metrics.ts
605
605
  models/instance-status.ts
606
606
  models/instance-storage-item.ts
607
+ models/instance-template-attribute.ts
608
+ models/instance-template-create-env-inner.ts
609
+ models/instance-template-create.ts
610
+ models/instance-template-env.ts
611
+ models/instance-template-op.ts
612
+ models/instance-template-replicas.ts
607
613
  models/instance.ts
608
614
  models/integer-option.ts
609
615
  models/international-desc.ts
@@ -666,6 +672,7 @@ models/milvus-role-list.ts
666
672
  models/milvus-role-request.ts
667
673
  models/milvus-role.ts
668
674
  models/mode-compatible-kubeblocks-version.ts
675
+ models/mode-component-instance-template.ts
669
676
  models/mode-component.ts
670
677
  models/mode-object-storage-additional-helm-value-path.ts
671
678
  models/mode-object-storage-service-ref.ts
@@ -978,6 +985,7 @@ models/tag.ts
978
985
  models/task-failure-policy.ts
979
986
  models/task-list-item.ts
980
987
  models/task-list.ts
988
+ models/task-retry-mode.ts
981
989
  models/task-schedule-type.ts
982
990
  models/task-schedule.ts
983
991
  models/task-status.ts
@@ -191,6 +191,12 @@ export interface ClusterCreate {
191
191
  * @memberof ClusterCreate
192
192
  */
193
193
  'networkMode'?: NetworkMode;
194
+ /**
195
+ * Name of the VIP Pool (VIP Pool poolName) used as the MetalLB address pool for LoadBalancer services. Only effective when networkMode is LoadBalancer.
196
+ * @type {string}
197
+ * @memberof ClusterCreate
198
+ */
199
+ 'vipPoolName'?: string;
194
200
  /**
195
201
  *
196
202
  * @type {Array<ServiceRef>}
@@ -19,6 +19,9 @@ import type { ComponentNetwork } from './component-network';
19
19
  // May contain unused imports in some cases
20
20
  // @ts-ignore
21
21
  import type { ComponentVolumeItem } from './component-volume-item';
22
+ // May contain unused imports in some cases
23
+ // @ts-ignore
24
+ import type { InstanceTemplateCreate } from './instance-template-create';
22
25
 
23
26
  /**
24
27
  * ComponentItem is the information of a component
@@ -39,11 +42,17 @@ export interface ComponentItemCreate {
39
42
  */
40
43
  'compNum'?: number;
41
44
  /**
42
- * Omit to use the cluster chart default. Set zero to disable the component when its resource constraints allow zero replicas.
45
+ * Omit to use the cluster chart default. Set zero to disable the component when its resource constraints allow zero replicas. If the rendered component has instance templates, this must equal the sum of all template replica counts in the complete instanceTemplates list.
43
46
  * @type {number}
44
47
  * @memberof ComponentItemCreate
45
48
  */
46
49
  'replicas'?: number | null;
50
+ /**
51
+ * Per-template replicas and optional overlays (env, annotations, labels). Required when the chart renders instance templates. Names must exactly match all chart-rendered instances, without missing, extra, or duplicate names; order does not matter. Component replicas must equal the sum of all requested instance template replica counts.
52
+ * @type {Array<InstanceTemplateCreate>}
53
+ * @memberof ComponentItemCreate
54
+ */
55
+ 'instanceTemplates'?: Array<InstanceTemplateCreate>;
47
56
  /**
48
57
  * Whether to skip resource constraint validation when creating cluster
49
58
  * @type {boolean}
@@ -510,6 +510,12 @@ export * from './instance-metrics';
510
510
  export * from './instance-metrics-list';
511
511
  export * from './instance-status';
512
512
  export * from './instance-storage-item';
513
+ export * from './instance-template-attribute';
514
+ export * from './instance-template-create';
515
+ export * from './instance-template-create-env-inner';
516
+ export * from './instance-template-env';
517
+ export * from './instance-template-op';
518
+ export * from './instance-template-replicas';
513
519
  export * from './integer-option';
514
520
  export * from './international-desc';
515
521
  export * from './io-quantity';
@@ -572,6 +578,7 @@ export * from './milvus-role-list';
572
578
  export * from './milvus-role-request';
573
579
  export * from './mode-compatible-kubeblocks-version';
574
580
  export * from './mode-component';
581
+ export * from './mode-component-instance-template';
575
582
  export * from './mode-object-storage';
576
583
  export * from './mode-object-storage-additional-helm-value-path';
577
584
  export * from './mode-object-storage-service-ref';
@@ -884,6 +891,7 @@ export * from './task';
884
891
  export * from './task-failure-policy';
885
892
  export * from './task-list';
886
893
  export * from './task-list-item';
894
+ export * from './task-retry-mode';
887
895
  export * from './task-schedule';
888
896
  export * from './task-schedule-type';
889
897
  export * from './task-status';
@@ -0,0 +1,32 @@
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
+ * Heterogeneous attribute the frontend may render on an instance template at create.
19
+ * @export
20
+ * @enum {string}
21
+ */
22
+
23
+ export const InstanceTemplateAttribute = {
24
+ env: 'env',
25
+ annotations: 'annotations',
26
+ labels: 'labels'
27
+ } as const;
28
+
29
+ export type InstanceTemplateAttribute = typeof InstanceTemplateAttribute[keyof typeof InstanceTemplateAttribute];
30
+
31
+
32
+
@@ -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
+ *
19
+ * @export
20
+ * @interface InstanceTemplateCreateEnvInner
21
+ */
22
+ export interface InstanceTemplateCreateEnvInner {
23
+ /**
24
+ *
25
+ * @type {string}
26
+ * @memberof InstanceTemplateCreateEnvInner
27
+ */
28
+ 'name': string;
29
+ /**
30
+ * Plain string value only. valueFrom is not supported.
31
+ * @type {string}
32
+ * @memberof InstanceTemplateCreateEnvInner
33
+ */
34
+ 'value': string;
35
+ }
36
+
@@ -0,0 +1,57 @@
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
+ // May contain unused imports in some cases
17
+ // @ts-ignore
18
+ import type { InstanceTemplateCreateEnvInner } from './instance-template-create-env-inner';
19
+
20
+ /**
21
+ * Create assignment for one instance template. name and replicas are required. env, annotations, and labels are optional overlays onto the chart-rendered instance. The request must include every chart-rendered instance template exactly once.
22
+ * @export
23
+ * @interface InstanceTemplateCreate
24
+ */
25
+ export interface InstanceTemplateCreate {
26
+ /**
27
+ * Instance template name; must match a chart-rendered instance.
28
+ * @type {string}
29
+ * @memberof InstanceTemplateCreate
30
+ */
31
+ 'name': string;
32
+ /**
33
+ * Replica count for this instance template.
34
+ * @type {number}
35
+ * @memberof InstanceTemplateCreate
36
+ */
37
+ 'replicas': number;
38
+ /**
39
+ * Simple env vars (name and value only) merged into this template. valueFrom is not supported; overlaying a name clears any chart valueFrom.
40
+ * @type {Array<InstanceTemplateCreateEnvInner>}
41
+ * @memberof InstanceTemplateCreate
42
+ */
43
+ 'env'?: Array<InstanceTemplateCreateEnvInner>;
44
+ /**
45
+ * Annotation map (string key to string value). Merged into this template; same-name keys overwritten. Chart keys are not deleted.
46
+ * @type {{ [key: string]: string; }}
47
+ * @memberof InstanceTemplateCreate
48
+ */
49
+ 'annotations'?: { [key: string]: string; };
50
+ /**
51
+ * Label map (string key to string value). Merged into this template; same-name keys overwritten. Chart keys are not deleted.
52
+ * @type {{ [key: string]: string; }}
53
+ * @memberof InstanceTemplateCreate
54
+ */
55
+ 'labels'?: { [key: string]: string; };
56
+ }
57
+
@@ -0,0 +1,57 @@
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
+ // May contain unused imports in some cases
17
+ // @ts-ignore
18
+ import type { LocalizedDescription } from './localized-description';
19
+
20
+ /**
21
+ * One fillable env var on an instance template, for frontend rendering.
22
+ * @export
23
+ * @interface InstanceTemplateEnv
24
+ */
25
+ export interface InstanceTemplateEnv {
26
+ /**
27
+ * Env var name written to the instance template.
28
+ * @type {string}
29
+ * @memberof InstanceTemplateEnv
30
+ */
31
+ 'name': string;
32
+ /**
33
+ *
34
+ * @type {LocalizedDescription}
35
+ * @memberof InstanceTemplateEnv
36
+ */
37
+ 'label'?: LocalizedDescription;
38
+ /**
39
+ *
40
+ * @type {LocalizedDescription}
41
+ * @memberof InstanceTemplateEnv
42
+ */
43
+ 'description'?: LocalizedDescription;
44
+ /**
45
+ * If true, the frontend should treat this env as required. Create does not re-check.
46
+ * @type {boolean}
47
+ * @memberof InstanceTemplateEnv
48
+ */
49
+ 'required'?: boolean;
50
+ /**
51
+ * Default value shown by the frontend.
52
+ * @type {string}
53
+ * @memberof InstanceTemplateEnv
54
+ */
55
+ 'default'?: string;
56
+ }
57
+
@@ -0,0 +1,31 @@
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
+ * Operation that can be declared on instanceTemplate.ops.
19
+ * @export
20
+ * @enum {string}
21
+ */
22
+
23
+ export const InstanceTemplateOp = {
24
+ hscale: 'hscale',
25
+ vscale: 'vscale'
26
+ } as const;
27
+
28
+ export type InstanceTemplateOp = typeof InstanceTemplateOp[keyof typeof InstanceTemplateOp];
29
+
30
+
31
+