@scrypted/server 0.91.6 → 0.92.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/dist/plugin/plugin-volume.d.ts +1 -0
- package/dist/plugin/plugin-volume.js +9 -3
- package/dist/plugin/plugin-volume.js.map +1 -1
- package/dist/services/backup.js +7 -3
- package/dist/services/backup.js.map +1 -1
- package/package.json +1 -1
- package/src/plugin/plugin-volume.ts +8 -2
- package/src/services/backup.ts +9 -4
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
4
|
};
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
-
exports.ensurePluginVolume = exports.getPluginVolume = exports.getScryptedVolume = void 0;
|
6
|
+
exports.ensurePluginVolume = exports.getPluginVolume = exports.getPluginsVolume = exports.getScryptedVolume = void 0;
|
7
7
|
const fs_1 = __importDefault(require("fs"));
|
8
8
|
const os_1 = __importDefault(require("os"));
|
9
9
|
const path_1 = __importDefault(require("path"));
|
@@ -12,9 +12,15 @@ function getScryptedVolume() {
|
|
12
12
|
return volumeDir;
|
13
13
|
}
|
14
14
|
exports.getScryptedVolume = getScryptedVolume;
|
15
|
-
function
|
15
|
+
function getPluginsVolume() {
|
16
16
|
const volume = getScryptedVolume();
|
17
|
-
const
|
17
|
+
const pluginsVolume = path_1.default.join(volume, 'plugins');
|
18
|
+
return pluginsVolume;
|
19
|
+
}
|
20
|
+
exports.getPluginsVolume = getPluginsVolume;
|
21
|
+
function getPluginVolume(pluginId) {
|
22
|
+
const volume = getPluginsVolume();
|
23
|
+
const pluginVolume = path_1.default.join(volume, pluginId);
|
18
24
|
return pluginVolume;
|
19
25
|
}
|
20
26
|
exports.getPluginVolume = getPluginVolume;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"plugin-volume.js","sourceRoot":"","sources":["../../src/plugin/plugin-volume.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AAExB,SAAgB,iBAAiB;IAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAChG,OAAO,SAAS,CAAC;AACrB,CAAC;AAHD,8CAGC;AAED,SAAgB,eAAe,CAAC,QAAgB;IAC5C,MAAM,MAAM,GAAG,
|
1
|
+
{"version":3,"file":"plugin-volume.js","sourceRoot":"","sources":["../../src/plugin/plugin-volume.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,4CAAoB;AACpB,gDAAwB;AAExB,SAAgB,iBAAiB;IAC7B,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;IAChG,OAAO,SAAS,CAAC;AACrB,CAAC;AAHD,8CAGC;AAED,SAAgB,gBAAgB;IAC5B,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACnD,OAAO,aAAa,CAAC;AACzB,CAAC;AAJD,4CAIC;AAED,SAAgB,eAAe,CAAC,QAAgB;IAC5C,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IACjD,OAAO,YAAY,CAAC;AACxB,CAAC;AAJD,0CAIC;AAED,SAAgB,kBAAkB,CAAC,QAAgB;IAC/C,MAAM,YAAY,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,CAAC;QACD,YAAE,CAAC,SAAS,CAAC,YAAY,EAAE;YACvB,SAAS,EAAE,IAAI;SAClB,CAAC,CAAA;IACN,CAAC;IACD,OAAO,CAAC,EAAE,CAAC;IACX,CAAC;IACD,OAAO,YAAY,CAAC;AACxB,CAAC;AAVD,gDAUC"}
|
package/dist/services/backup.js
CHANGED
@@ -46,12 +46,16 @@ class Backup {
|
|
46
46
|
this.runtime.kill();
|
47
47
|
await (0, sleep_1.sleep)(5000);
|
48
48
|
await this.runtime.datastore.close();
|
49
|
-
|
49
|
+
// nuke the existing database path
|
50
|
+
await fs_1.default.promises.rm(dbPath, {
|
50
51
|
recursive: true,
|
51
52
|
force: true,
|
52
53
|
});
|
53
|
-
|
54
|
-
|
54
|
+
// nuke all the plugins and associated files downloaded by thhem.
|
55
|
+
// first run after restore will reinstall everything.
|
56
|
+
await fs_1.default.promises.rm((0, plugin_volume_1.getPluginsVolume)(), {
|
57
|
+
recursive: true,
|
58
|
+
force: true,
|
55
59
|
});
|
56
60
|
zip.extractAllTo(dbPath, true);
|
57
61
|
this.runtime.serviceControl.restart();
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/services/backup.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,qDAA6B;AAC7B,oCAAiC;AACjC,
|
1
|
+
{"version":3,"file":"backup.js","sourceRoot":"","sources":["../../src/services/backup.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,gDAAwB;AACxB,qDAA6B;AAC7B,oCAAiC;AACjC,2DAA8E;AAC9E,sDAA6B;AAI7B,MAAa,MAAM;IACI;IAAnB,YAAmB,OAAwB;QAAxB,YAAO,GAAP,OAAO,CAAiB;IAAG,CAAC;IAE/C,KAAK,CAAC,YAAY;QACd,MAAM,SAAS,GAAG,IAAA,iCAAiB,GAAE,CAAC;QAEtC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QACvD,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,YAAY,EAAE;YAC/B,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,IAAI,eAAK,CAAC,YAAY,CAAC,CAAC;QACzC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtB,IAAI,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjE,MAAM,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACnC,CAAC;QACD,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QAEvB,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACrD,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE;YAC5B,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,GAAG,GAAG,IAAI,iBAAM,EAAE,CAAC;QACzB,MAAM,GAAG,CAAC,qBAAqB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAClD,OAAO,GAAG,CAAC,eAAe,EAAE,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,CAAS;QACnB,MAAM,SAAS,GAAG,IAAA,iCAAiB,GAAE,CAAC;QACtC,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAEnD,MAAM,GAAG,GAAG,IAAI,iBAAM,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAE/C,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACpB,MAAM,IAAA,aAAK,EAAC,IAAI,CAAC,CAAC;QAClB,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QAErC,kCAAkC;QAClC,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE;YACzB,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,iEAAiE;QACjE,qDAAqD;QACrD,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAA,gCAAgB,GAAE,EAAE;YACrC,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC;IAC1C,CAAC;CACJ;AA1DD,wBA0DC"}
|
package/package.json
CHANGED
@@ -7,9 +7,15 @@ export function getScryptedVolume() {
|
|
7
7
|
return volumeDir;
|
8
8
|
}
|
9
9
|
|
10
|
-
export function
|
10
|
+
export function getPluginsVolume() {
|
11
11
|
const volume = getScryptedVolume();
|
12
|
-
const
|
12
|
+
const pluginsVolume = path.join(volume, 'plugins');
|
13
|
+
return pluginsVolume;
|
14
|
+
}
|
15
|
+
|
16
|
+
export function getPluginVolume(pluginId: string) {
|
17
|
+
const volume = getPluginsVolume();
|
18
|
+
const pluginVolume = path.join(volume, pluginId);
|
13
19
|
return pluginVolume;
|
14
20
|
}
|
15
21
|
|
package/src/services/backup.ts
CHANGED
@@ -2,9 +2,10 @@ import fs from 'fs';
|
|
2
2
|
import path from 'path';
|
3
3
|
import Level from '../level';
|
4
4
|
import { sleep } from '../sleep';
|
5
|
-
import { getScryptedVolume } from '../plugin/plugin-volume';
|
5
|
+
import { getPluginsVolume, getScryptedVolume } from '../plugin/plugin-volume';
|
6
6
|
import AdmZip from 'adm-zip';
|
7
7
|
import { ScryptedRuntime } from '../runtime';
|
8
|
+
import { getPluginNodePath } from '../plugin/plugin-npm-dependencies';
|
8
9
|
|
9
10
|
export class Backup {
|
10
11
|
constructor(public runtime: ScryptedRuntime) {}
|
@@ -48,13 +49,17 @@ export class Backup {
|
|
48
49
|
await sleep(5000);
|
49
50
|
await this.runtime.datastore.close();
|
50
51
|
|
51
|
-
|
52
|
+
// nuke the existing database path
|
53
|
+
await fs.promises.rm(dbPath, {
|
52
54
|
recursive: true,
|
53
55
|
force: true,
|
54
56
|
});
|
55
57
|
|
56
|
-
|
57
|
-
|
58
|
+
// nuke all the plugins and associated files downloaded by thhem.
|
59
|
+
// first run after restore will reinstall everything.
|
60
|
+
await fs.promises.rm(getPluginsVolume(), {
|
61
|
+
recursive: true,
|
62
|
+
force: true,
|
58
63
|
});
|
59
64
|
|
60
65
|
zip.extractAllTo(dbPath, true);
|