fix(region): clean vm misc options

This commit is contained in:
ioito
2022-06-02 10:11:39 +08:00
parent d5ceb1e425
commit 250c7fdb91
2 changed files with 13 additions and 4 deletions
+11 -4
View File
@@ -4791,6 +4791,9 @@ func (manager *SGuestManager) CleanPendingDeleteServers(ctx context.Context, use
for i := 0; i < len(guests); i += 1 {
opts := api.ServerDeleteInput{
OverridePendingDelete: true,
DeleteSnapshots: options.Options.DeleteSnapshotExpiredRelease,
DeleteEip: options.Options.DeleteEipExpiredRelease,
DeleteDisks: options.Options.DeleteDisksExpiredRelease,
}
guests[i].StartDeleteGuestTask(ctx, userCred, "", opts)
}
@@ -4863,7 +4866,6 @@ func (manager *SGuestManager) DeleteExpiredPrepaidServers(ctx context.Context, u
if guests == nil {
return
}
deleteSnapshot := options.Options.DeleteSnapshotExpiredRelease
for i := 0; i < len(guests); i += 1 {
// fake delete expired prepaid servers
if len(guests[i].ExternalId) > 0 {
@@ -4874,7 +4876,9 @@ func (manager *SGuestManager) DeleteExpiredPrepaidServers(ctx context.Context, u
}
guests[i].SetDisableDelete(userCred, false)
opts := api.ServerDeleteInput{
DeleteSnapshots: deleteSnapshot,
DeleteSnapshots: options.Options.DeleteSnapshotExpiredRelease,
DeleteEip: options.Options.DeleteEipExpiredRelease,
DeleteDisks: options.Options.DeleteDisksExpiredRelease,
}
guests[i].StartDeleteGuestTask(ctx, userCred, "", opts)
}
@@ -4903,7 +4907,6 @@ func (manager *SGuestManager) DeleteExpiredPostpaidServers(ctx context.Context,
log.Infof("No expired postpaid guest")
return
}
deleteSnapshot := options.Options.DeleteSnapshotExpiredRelease
for i := 0; i < len(guests); i++ {
if len(guests[i].ExternalId) > 0 {
err := guests[i].doExternalSync(ctx, userCred)
@@ -4912,7 +4915,11 @@ func (manager *SGuestManager) DeleteExpiredPostpaidServers(ctx context.Context,
}
}
guests[i].SetDisableDelete(userCred, false)
opts := api.ServerDeleteInput{DeleteSnapshots: deleteSnapshot}
opts := api.ServerDeleteInput{
DeleteSnapshots: options.Options.DeleteSnapshotExpiredRelease,
DeleteEip: options.Options.DeleteEipExpiredRelease,
DeleteDisks: options.Options.DeleteDisksExpiredRelease,
}
guests[i].StartDeleteGuestTask(ctx, userCred, "", opts)
}
}
+2
View File
@@ -169,6 +169,8 @@ type ComputeOptions struct {
EnableAutoMergeSecurityGroup bool `help:"Enable auto merge secgroup when sync security group from cloud, default False" default:"false"`
DeleteSnapshotExpiredRelease bool `help:"Should the virtual machine be automatically deleted when the virtual machine expires?" default:"false"`
DeleteEipExpiredRelease bool `help:"Should the EIP be automatically deleted when the virtual machine expires?" default:"false"`
DeleteDisksExpiredRelease bool `help:"Should the Disks be automatically deleted when the virtual machine expires?" default:"false"`
DefaultNetworkGatewayAddressEsxi uint32 `help:"Default address for network gateway" default:"1"`