fix(vm.delete): IP addresses should always be deallocated (#488)

Fixes vatesfr/xo-web#1906
This commit is contained in:
Pierre Donias
2017-01-25 15:46:33 +01:00
committed by Julien Fontanet
parent 8fe6a56dfc
commit 0c7768f5d2

View File

@@ -301,6 +301,20 @@ delete_ = $coroutine ({vm, delete_disks: deleteDisks}) ->
xapi = @getXapi(vm)
# Update IP pools
yield Promise.all(map(vm.VIFs, (vifId) =>
vif = xapi.getObject(vifId)
return pCatch.call(
this.allocIpAddresses(
vifId,
null,
concat(vif.ipv4_allowed, vif.ipv6_allowed)
),
noop
)
))
# Update resource sets
resourceSet = xapi.xo.getData(vm._xapiId, 'resourceSet')
if resourceSet?
disk = 0
@@ -317,18 +331,6 @@ delete_ = $coroutine ({vm, delete_disks: deleteDisks}) ->
return
)
yield Promise.all(map(vm.VIFs, (vifId) =>
vif = xapi.getObject(vifId)
return pCatch.call(
this.allocIpAddresses(
vifId,
null,
concat(vif.ipv4_allowed, vif.ipv6_allowed)
),
noop
)
))
resourceSetUsage = @computeVmResourcesUsage(vm)
ipPoolsUsage = yield @computeVmIpPoolsUsage(vm)