Skip to content

Commit efaafc2

Browse files
author
Zhang Wenhao
committed
<feature>[kvm]: clean VmHostFileVO after VM destroy
Resolves: ZSV-11439 Related: ZSV-11310 Change-Id: I68696b7776656f78677679686370707a70616665
1 parent 5397303 commit efaafc2

3 files changed

Lines changed: 17 additions & 1 deletion

File tree

conf/springConfigXml/Kvm.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,7 @@
270270
<zstack:plugin>
271271
<zstack:extension interface="org.zstack.kvm.KVMStartVmExtensionPoint" />
272272
<zstack:extension interface="org.zstack.header.vm.PreVmInstantiateResourceExtensionPoint" />
273+
<zstack:extension interface="org.zstack.header.vm.VmReleaseResourceExtensionPoint" />
273274
</zstack:plugin>
274275
</bean>
275276

plugin/kvm/src/main/java/org/zstack/kvm/efi/KvmSecureBootExtensions.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.zstack.header.vm.PreVmInstantiateResourceExtensionPoint;
2929
import org.zstack.header.vm.VmInstanceSpec;
3030
import org.zstack.header.vm.VmInstantiateResourceException;
31+
import org.zstack.header.vm.VmReleaseResourceExtensionPoint;
3132
import org.zstack.header.vm.additions.VmHostBackupFileVO;
3233
import org.zstack.header.vm.additions.VmHostBackupFileVO_;
3334
import org.zstack.header.vm.additions.VmHostFileContentFormat;
@@ -76,7 +77,8 @@
7677
import static org.zstack.utils.CollectionUtils.transform;
7778

7879
public class KvmSecureBootExtensions implements KVMStartVmExtensionPoint,
79-
PreVmInstantiateResourceExtensionPoint {
80+
PreVmInstantiateResourceExtensionPoint,
81+
VmReleaseResourceExtensionPoint {
8082
private static final CLogger logger = Utils.getLogger(KvmSecureBootExtensions.class);
8183

8284
@Autowired
@@ -742,4 +744,16 @@ public void run(MessageReply reply) {
742744
}
743745
});
744746
}
747+
748+
@Override
749+
public void releaseVmResource(VmInstanceSpec spec, Completion completion) {
750+
String vmUuid = spec.getVmInventory().getUuid();
751+
SQL.New(VmHostFileVO.class)
752+
.eq(VmHostFileVO_.vmInstanceUuid, vmUuid)
753+
.delete();
754+
SQL.New(VmHostBackupFileVO.class)
755+
.eq(VmHostBackupFileVO_.vmInstanceUuid, vmUuid)
756+
.delete();
757+
completion.success();
758+
}
745759
}

test/src/test/resources/springConfigXml/Kvm.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,7 @@
269269
<zstack:plugin>
270270
<zstack:extension interface="org.zstack.kvm.KVMStartVmExtensionPoint" />
271271
<zstack:extension interface="org.zstack.header.vm.PreVmInstantiateResourceExtensionPoint" />
272+
<zstack:extension interface="org.zstack.header.vm.VmReleaseResourceExtensionPoint" />
272273
</zstack:plugin>
273274
</bean>
274275

0 commit comments

Comments
 (0)