From 1f6b40c0b527c68a26661c55216691582abe0826 Mon Sep 17 00:00:00 2001 From: "Chen, Taiyue" Date: Thu, 16 Jul 2026 14:06:15 +0800 Subject: [PATCH 1/2] [platformservice]: persist service VM static network Persist static network metadata for service VMs on no-IPAM L3. Expose optional netmask and gateway fields in the generated SDK action. Related: ZSV-12702 Change-Id: I3648fa08104fdd7b47abc934027683bf1fb0a5df --- .../main/java/org/zstack/compute/vm/VmAllocateNicFlow.java | 3 +-- .../sdk/platformservice/DeployPlatformServiceAction.java | 6 ++++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/compute/src/main/java/org/zstack/compute/vm/VmAllocateNicFlow.java b/compute/src/main/java/org/zstack/compute/vm/VmAllocateNicFlow.java index d3652621408..f6a4d78cca7 100755 --- a/compute/src/main/java/org/zstack/compute/vm/VmAllocateNicFlow.java +++ b/compute/src/main/java/org/zstack/compute/vm/VmAllocateNicFlow.java @@ -165,8 +165,7 @@ public void run(final FlowTrigger trigger, final Map data) { protected String scripts() { VmNicVO nicVO = vnicFactory.createVmNic(nic, spec); if (!nw.enableIpAllocation() && nicNetworkInfoMap != null - && nicNetworkInfoMap.containsKey(nw.getUuid()) - && spec.getVmInventory().getType().equals(VmInstanceConstant.USER_VM_TYPE)) { + && nicNetworkInfoMap.containsKey(nw.getUuid())) { NicIpAddressInfo nicIpAddressInfo = nicNetworkInfoMap.get(nic.getL3NetworkUuid()); if (!StringUtils.isEmpty(nicIpAddressInfo.ipv6Address)) { UsedIpVO vo = new UsedIpVO(); diff --git a/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java b/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java index 75a7bcf2135..9ff1b6626ba 100644 --- a/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java +++ b/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java @@ -46,6 +46,12 @@ public Result throwExceptionIfError() { @Param(required = false, nonempty = false, nullElements = false, emptyString = true, noTrim = false) public java.lang.String staticIp; + @Param(required = false, nonempty = false, nullElements = false, emptyString = true, noTrim = false) + public java.lang.String netmask; + + @Param(required = false, nonempty = false, nullElements = false, emptyString = true, noTrim = false) + public java.lang.String gateway; + @Param(required = false, nonempty = false, nullElements = false, emptyString = true, noTrim = false) public java.lang.String clusterUuid; From 38fde38e4d28a19ac5ebd8cd9afac395e424ca1d Mon Sep 17 00:00:00 2001 From: "Chen, Taiyue" Date: Thu, 16 Jul 2026 17:07:02 +0800 Subject: [PATCH 2/2] [platformservice]: pass ZCenter deployment language Expose the ZCenter deployment language in the generated SDK action. Related: ZSV-12702 Change-Id: I6e61727a7566657a636e6a746f6c72666462706a --- .../sdk/platformservice/DeployPlatformServiceAction.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java b/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java index 9ff1b6626ba..c6596f2e43f 100644 --- a/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java +++ b/sdk/src/main/java/org/zstack/sdk/platformservice/DeployPlatformServiceAction.java @@ -64,6 +64,9 @@ public Result throwExceptionIfError() { @Param(required = false, maxLength = 255, nonempty = false, nullElements = false, emptyString = true, noTrim = false) public java.lang.String allocatorStrategy; + @Param(required = false, validValues = {"zh_CN","en_US"}, maxLength = 5, nonempty = false, nullElements = false, emptyString = true, noTrim = false) + public java.lang.String language; + @Param(required = false) public java.util.List systemTags;