@xen-orchestra/backups 0.64.1 → 0.64.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/_incrementalVm.mjs
CHANGED
|
@@ -94,11 +94,13 @@ export async function exportIncrementalVm(
|
|
|
94
94
|
}
|
|
95
95
|
})
|
|
96
96
|
|
|
97
|
+
// Get a fresh list of VM's VTPM to avoid `vm.VTPMs: [undefined]`
|
|
98
|
+
const vmVtpms = await vm.$xapi.getField('VM', vm.$ref, 'VTPMs')
|
|
97
99
|
const vtpms = await Promise.all(
|
|
98
|
-
|
|
100
|
+
vmVtpms.map(async vtpmRef => {
|
|
99
101
|
let content
|
|
100
102
|
try {
|
|
101
|
-
content = await vm.$xapi.call('VTPM.get_contents',
|
|
103
|
+
content = await vm.$xapi.call('VTPM.get_contents', vtpmRef)
|
|
102
104
|
} catch (err) {
|
|
103
105
|
console.error(err)
|
|
104
106
|
}
|
|
@@ -45,6 +45,9 @@ export const IncrementalXapi = class IncrementalXapiVmBackupRunner extends Abstr
|
|
|
45
45
|
for (const key in deltaExport.disks) {
|
|
46
46
|
const disk = deltaExport.disks[key]
|
|
47
47
|
isVhdDifferencing[key] = disk.isDifferencing()
|
|
48
|
+
if (!isFull && !isVhdDifferencing[key] && key !== exportedVm.$suspend_VDI?.$ref) {
|
|
49
|
+
Task.warning('Backup fell back to a full')
|
|
50
|
+
}
|
|
48
51
|
deltaExport.disks[key] = new SynchronizedDisk(disk)
|
|
49
52
|
useNbd = useNbd || disk.useNbd()
|
|
50
53
|
}
|
|
@@ -25,7 +25,11 @@ export class IncrementalXapiWriter extends MixinXapiWriter(AbstractIncrementalWr
|
|
|
25
25
|
const replicatedVdis = sr.$VDIs
|
|
26
26
|
.filter(vdi => {
|
|
27
27
|
// REPLICATED_TO_SR_UUID is not used here since we are already filtering from sr.$VDIs
|
|
28
|
-
return
|
|
28
|
+
return (
|
|
29
|
+
vdi?.managed &&
|
|
30
|
+
!vdi?.is_a_snapshot /* only look for real vdi */ &&
|
|
31
|
+
baseUuidToSrcVdi.has(vdi?.other_config[COPY_OF])
|
|
32
|
+
)
|
|
29
33
|
})
|
|
30
34
|
.map(({ other_config }) => other_config?.[COPY_OF])
|
|
31
35
|
.filter(_ => !!_)
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"type": "git",
|
|
9
9
|
"url": "https://github.com/vatesfr/xen-orchestra.git"
|
|
10
10
|
},
|
|
11
|
-
"version": "0.64.
|
|
11
|
+
"version": "0.64.3",
|
|
12
12
|
"engines": {
|
|
13
13
|
"node": ">=14.18"
|
|
14
14
|
},
|
|
@@ -62,7 +62,7 @@
|
|
|
62
62
|
"tmp": "^0.2.1"
|
|
63
63
|
},
|
|
64
64
|
"peerDependencies": {
|
|
65
|
-
"@xen-orchestra/xapi": "^8.4.
|
|
65
|
+
"@xen-orchestra/xapi": "^8.4.1"
|
|
66
66
|
},
|
|
67
67
|
"license": "AGPL-3.0-or-later",
|
|
68
68
|
"author": {
|