From 2afb902ca4c33ae612f53d3b9841074e2c6606c4 Mon Sep 17 00:00:00 2001 From: chunkyen Date: Tue, 18 Aug 2026 06:19:45 +0000 Subject: [PATCH 1/2] doc: add API parameter syntax examples for nodeofferings and nodetemplates in createKubernetesCluster Add usage examples to the @Parameter descriptions for nodeofferings and nodetemplates in CreateKubernetesClusterCmd.java, showing how to specify different service offerings and templates for control vs worker nodes. Discussion: https://github.com/apache/cloudstack/discussions/13395 --- .../kubernetes/cluster/CreateKubernetesClusterCmd.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java index 8d64fee26206..dd4c56ad3fe9 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java +++ b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java @@ -116,13 +116,17 @@ public class CreateKubernetesClusterCmd extends BaseAsyncCreateCmd { @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.NODE_TYPE_OFFERING_MAP, type = CommandType.MAP, - description = "(Optional) Node Type to Service Offering ID mapping. If provided, it overrides the serviceofferingid parameter", + description = "(Optional) Node Type to Service Offering ID mapping. If provided, it overrides the serviceofferingid parameter. " + + "Example: nodeofferings[0].node=\"control\"&nodeofferings[0].offering=\"\"&" + + "nodeofferings[1].node=\"worker\"&nodeofferings[1].offering=\"\"", since = "4.21.0") private Map> serviceOfferingNodeTypeMap; @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.NODE_TYPE_TEMPLATE_MAP, type = CommandType.MAP, - description = "(Optional) Node Type to Template ID mapping. If provided, it overrides the default template: System VM template", + description = "(Optional) Node Type to Template ID mapping. If provided, it overrides the default template: System VM template. " + + "Example: nodetemplates[0].node=\"control\"&nodetemplates[0].template=\"\"&" + + "nodetemplates[1].node=\"worker\"&nodetemplates[1].template=\"\"", since = "4.21.0") private Map> templateNodeTypeMap; From bcfb264617162e799a20f64c1d9dea6ff0c6fd26 Mon Sep 17 00:00:00 2001 From: dahn Date: Thu, 3 Sep 2026 12:33:49 +0200 Subject: [PATCH 2/2] Update examples in CreateKubernetesClusterCmd.java MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit replace `\”` with `’` --- .../kubernetes/cluster/CreateKubernetesClusterCmd.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java index dd4c56ad3fe9..8bf0f3625508 100644 --- a/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java +++ b/plugins/integrations/kubernetes-service/src/main/java/org/apache/cloudstack/api/command/user/kubernetes/cluster/CreateKubernetesClusterCmd.java @@ -117,16 +117,16 @@ public class CreateKubernetesClusterCmd extends BaseAsyncCreateCmd { @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.NODE_TYPE_OFFERING_MAP, type = CommandType.MAP, description = "(Optional) Node Type to Service Offering ID mapping. If provided, it overrides the serviceofferingid parameter. " + - "Example: nodeofferings[0].node=\"control\"&nodeofferings[0].offering=\"\"&" + - "nodeofferings[1].node=\"worker\"&nodeofferings[1].offering=\"\"", + "Example: nodeofferings[0].node='control'&nodeofferings[0].offering=''&" + + "nodeofferings[1].node='worker'&nodeofferings[1].offering=''", since = "4.21.0") private Map> serviceOfferingNodeTypeMap; @ACL(accessType = AccessType.UseEntry) @Parameter(name = ApiConstants.NODE_TYPE_TEMPLATE_MAP, type = CommandType.MAP, description = "(Optional) Node Type to Template ID mapping. If provided, it overrides the default template: System VM template. " + - "Example: nodetemplates[0].node=\"control\"&nodetemplates[0].template=\"\"&" + - "nodetemplates[1].node=\"worker\"&nodetemplates[1].template=\"\"", + "Example: nodetemplates[0].node='control'&nodetemplates[0].template=''&" + + "nodetemplates[1].node='worker'&nodetemplates[1].template=''", since = "4.21.0") private Map> templateNodeTypeMap;