@xen-orchestra/backups 0.58.3 → 0.59.0

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/RemoteAdapter.mjs CHANGED
@@ -423,12 +423,20 @@ export class RemoteAdapter {
423
423
  async listAllVms() {
424
424
  const handler = this._handler
425
425
  const vmsUuids = []
426
- await asyncEach(await handler.list(BACKUP_DIR), async entry => {
427
- // ignore hidden and lock files
428
- if (entry[0] !== '.' && !entry.endsWith('.lock')) {
429
- vmsUuids.push(entry)
426
+ try {
427
+ await asyncEach(await handler.list(BACKUP_DIR), async entry => {
428
+ // ignore hidden and lock files
429
+ if (entry[0] !== '.' && !entry.endsWith('.lock')) {
430
+ vmsUuids.push(entry)
431
+ }
432
+ })
433
+ } catch (error) {
434
+ // remote without any VM backup are ok
435
+ if (error.code !== 'ENOENT') {
436
+ throw error
430
437
  }
431
- })
438
+ }
439
+
432
440
  return vmsUuids
433
441
  }
434
442
 
@@ -11,7 +11,6 @@ import { MixinXapiWriter } from './_MixinXapiWriter.mjs'
11
11
  import { listReplicatedVms } from './_listReplicatedVms.mjs'
12
12
  import { COPY_OF, setVmOtherConfig, BASE_DELTA_VDI } from '../../_otherConfig.mjs'
13
13
 
14
- import assert from 'node:assert'
15
14
  export class IncrementalXapiWriter extends MixinXapiWriter(AbstractIncrementalWriter) {
16
15
  async checkBaseVdis(baseUuidToSrcVdi) {
17
16
  const sr = this._sr
@@ -118,9 +117,10 @@ export class IncrementalXapiWriter extends MixinXapiWriter(AbstractIncrementalWr
118
117
  const baseReplicatedTo = replicatedVdis.find(
119
118
  replicatedVdi => replicatedVdi.other_config[COPY_OF] === vdi.other_config[BASE_DELTA_VDI]
120
119
  )
121
- assert.notStrictEqual(baseReplicatedTo, undefined)
120
+ // baseReplicatedTo can be undefined if a new disk is added and other are already replicated
122
121
  vdi.baseVdi = baseReplicatedTo
123
122
  } else {
123
+ // first replication of this disk
124
124
  vdi.baseVdi = undefined
125
125
  }
126
126
  // ensure the VDI are created on the target SR
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.58.3",
11
+ "version": "0.59.0",
12
12
  "engines": {
13
13
  "node": ">=14.18"
14
14
  },
@@ -28,7 +28,7 @@
28
28
  "@vates/nbd-client": "^3.1.2",
29
29
  "@vates/parse-duration": "^0.1.1",
30
30
  "@xen-orchestra/async-map": "^0.1.2",
31
- "@xen-orchestra/fs": "^4.4.0",
31
+ "@xen-orchestra/fs": "^4.5.0",
32
32
  "@xen-orchestra/log": "^0.7.1",
33
33
  "@xen-orchestra/template": "^0.1.0",
34
34
  "app-conf": "^3.0.0",
@@ -59,7 +59,7 @@
59
59
  "tmp": "^0.2.1"
60
60
  },
61
61
  "peerDependencies": {
62
- "@xen-orchestra/xapi": "^8.1.0"
62
+ "@xen-orchestra/xapi": "^8.1.1"
63
63
  },
64
64
  "license": "AGPL-3.0-or-later",
65
65
  "author": {