Skip to content

Commit 66b4eb4

Browse files
author
wenhao.zhang
committed
Merge branch 'zsv-ldap-2@@2' into 'feature-zsv-5.0.0-vm-support-vtpm-and-secuceboot'
<fix>[compute]: add allowed.tpm.vm.without.kms global config See merge request zstackio/zstack!9521
2 parents c7c24cf + 1d7126c commit 66b4eb4

2 files changed

Lines changed: 11 additions & 1 deletion

File tree

compute/src/main/java/org/zstack/compute/vm/VmGlobalConfig.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,4 +139,8 @@ public class VmGlobalConfig {
139139
@GlobalConfigValidation(validValues = {"true", "false"})
140140
@BindResourceConfig(value = {VmInstanceVO.class, ClusterVO.class})
141141
public static GlobalConfig RESET_TPM_AFTER_VM_CLONE = new GlobalConfig(CATEGORY, "reset.tpm.after.vm.clone");
142+
143+
@GlobalConfigDef(defaultValue = "false", type = Boolean.class, description = "allowed TPM VM start without KMS")
144+
@GlobalConfigValidation(validValues = {"true", "false"})
145+
public static GlobalConfig ALLOWED_TPM_VM_WITHOUT_KMS = new GlobalConfig(CATEGORY, "allowed.tpm.vm.without.kms");
142146
}

plugin/kvm/src/main/java/org/zstack/kvm/tpm/KvmTpmExtensions.java

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import org.apache.commons.lang.StringUtils;
44
import org.springframework.beans.factory.annotation.Autowired;
5+
import org.zstack.compute.vm.VmGlobalConfig;
56
import org.zstack.compute.vm.devices.TpmEncryptedResourceKeyBackend;
67
import org.zstack.core.Platform;
78
import org.zstack.core.cloudbus.CloudBus;
@@ -171,7 +172,12 @@ public void fail(ErrorCode errorCode) {
171172

172173
@Override
173174
public boolean skip(Map data) {
174-
return false;
175+
boolean shouldSkip = VmGlobalConfig.ALLOWED_TPM_VM_WITHOUT_KMS.value(Boolean.class) &&
176+
(StringUtils.isBlank(context.providerUuid) || StringUtils.isBlank(context.providerName));
177+
if (shouldSkip) {
178+
logger.info("skip create-dek: allowed.tpm.vm.without.kms is enabled and no KMS provider bound");
179+
}
180+
return shouldSkip;
175181
}
176182

177183
@Override

0 commit comments

Comments
 (0)