@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.
@@ -1,3 +1,4 @@
1
1
  export declare function getScryptedVolume(): string;
2
+ export declare function getPluginsVolume(): string;
2
3
  export declare function getPluginVolume(pluginId: string): string;
3
4
  export declare function ensurePluginVolume(pluginId: string): string;
@@ -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 getPluginVolume(pluginId) {
15
+ function getPluginsVolume() {
16
16
  const volume = getScryptedVolume();
17
- const pluginVolume = path_1.default.join(volume, 'plugins', pluginId);
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,iBAAiB,EAAE,CAAC;IACnC,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC5D,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"}
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"}
@@ -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
- await fs_1.default.promises.rm(volumeDir, {
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
- await fs_1.default.promises.mkdir(volumeDir, {
54
- recursive: true
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,2DAA4D;AAC5D,sDAA6B;AAG7B,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,MAAM,YAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,SAAS,EAAE;YAC5B,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,YAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE;YAC/B,SAAS,EAAE,IAAI;SAClB,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;AAtDD,wBAsDC"}
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@scrypted/server",
3
- "version": "0.91.6",
3
+ "version": "0.92.0",
4
4
  "description": "",
5
5
  "dependencies": {
6
6
  "@mapbox/node-pre-gyp": "^1.0.11",
@@ -7,9 +7,15 @@ export function getScryptedVolume() {
7
7
  return volumeDir;
8
8
  }
9
9
 
10
- export function getPluginVolume(pluginId: string) {
10
+ export function getPluginsVolume() {
11
11
  const volume = getScryptedVolume();
12
- const pluginVolume = path.join(volume, 'plugins', pluginId);
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
 
@@ -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
- await fs.promises.rm(volumeDir, {
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
- await fs.promises.mkdir(volumeDir, {
57
- recursive: true
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);