Avoid crashes on failed VM backups.
This commit is contained in:
parent
a2adbb19bd
commit
a2eca9589f
@ -655,12 +655,15 @@ export default class Xo extends EventEmitter {
|
|||||||
|
|
||||||
async backupVm ({vm, pathToFile, compress, onlyMetadata}) {
|
async backupVm ({vm, pathToFile, compress, onlyMetadata}) {
|
||||||
const targetStream = fs.createWriteStream(pathToFile, { flags: 'wx' })
|
const targetStream = fs.createWriteStream(pathToFile, { flags: 'wx' })
|
||||||
|
const promise = eventToPromise(targetStream, 'finish')
|
||||||
|
|
||||||
const sourceStream = await this.getXAPI(vm).exportVm(vm.id, {
|
const sourceStream = await this.getXAPI(vm).exportVm(vm.id, {
|
||||||
compress,
|
compress,
|
||||||
onlyMetadata: onlyMetadata || false
|
onlyMetadata: onlyMetadata || false
|
||||||
})
|
})
|
||||||
sourceStream.pipe(targetStream)
|
sourceStream.pipe(targetStream)
|
||||||
await eventToPromise(targetStream, 'finish')
|
|
||||||
|
await promise
|
||||||
}
|
}
|
||||||
|
|
||||||
async rollingBackupVm ({vm, path, tag, depth, compress, onlyMetadata}) {
|
async rollingBackupVm ({vm, path, tag, depth, compress, onlyMetadata}) {
|
||||||
|
Loading…
Reference in New Issue
Block a user