@scrypted/server 0.123.46 → 0.123.48

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.
Files changed (39) hide show
  1. package/dist/cluster/cluster-labels.d.ts +1 -0
  2. package/dist/cluster/cluster-labels.js +4 -0
  3. package/dist/cluster/cluster-labels.js.map +1 -1
  4. package/dist/cluster/cluster-setup.d.ts +2 -0
  5. package/dist/cluster/cluster-setup.js +11 -3
  6. package/dist/cluster/cluster-setup.js.map +1 -1
  7. package/dist/cluster/connect-rpc-object.d.ts +18 -0
  8. package/dist/cluster/cpu-timer.d.ts +6 -0
  9. package/dist/cluster/cpu-timer.js +44 -0
  10. package/dist/cluster/cpu-timer.js.map +1 -0
  11. package/dist/plugin/plugin-api.d.ts +1 -0
  12. package/dist/plugin/plugin-api.js.map +1 -1
  13. package/dist/plugin/plugin-host.js +2 -0
  14. package/dist/plugin/plugin-host.js.map +1 -1
  15. package/dist/plugin/plugin-remote-worker.js +2 -1
  16. package/dist/plugin/plugin-remote-worker.js.map +1 -1
  17. package/dist/runtime.d.ts +1 -0
  18. package/dist/runtime.js +1 -0
  19. package/dist/runtime.js.map +1 -1
  20. package/dist/scrypted-cluster-main.d.ts +7 -3
  21. package/dist/scrypted-cluster-main.js +36 -13
  22. package/dist/scrypted-cluster-main.js.map +1 -1
  23. package/dist/services/cluster-fork.d.ts +2 -1
  24. package/dist/services/cluster-fork.js +3 -1
  25. package/dist/services/cluster-fork.js.map +1 -1
  26. package/dist/tsconfig.tsbuildinfo +1 -1
  27. package/package.json +2 -2
  28. package/python/cluster_setup.py +2 -2
  29. package/python/plugin_remote.py +5 -5
  30. package/src/cluster/cluster-labels.ts +4 -0
  31. package/src/cluster/cluster-setup.ts +13 -5
  32. package/src/cluster/connect-rpc-object.ts +18 -0
  33. package/src/cluster/cpu-timer.ts +48 -0
  34. package/src/plugin/plugin-api.ts +1 -0
  35. package/src/plugin/plugin-host.ts +2 -0
  36. package/src/plugin/plugin-remote-worker.ts +2 -1
  37. package/src/runtime.ts +1 -0
  38. package/src/scrypted-cluster-main.ts +43 -17
  39. package/src/services/cluster-fork.ts +7 -4
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { ClusterManager, ClusterWorker, ForkOptions } from '@scrypted/types';
1
+ import type { ClusterManager, ForkOptions } from '@scrypted/types';
2
2
  import tls from 'tls';
3
3
  import type { createSelfSignedCertificate } from './cert';
4
4
  import type { PluginAPI } from './plugin/plugin-api';
@@ -16,6 +16,7 @@ export interface ClusterForkOptions {
16
16
  }
17
17
  export interface ClusterWorkerProperties {
18
18
  labels: string[];
19
+ weight: number;
19
20
  }
20
21
  export interface RunningClusterWorker extends ClusterWorkerProperties {
21
22
  id: string;
@@ -24,6 +25,8 @@ export interface RunningClusterWorker extends ClusterWorkerProperties {
24
25
  fork: Promise<ClusterForkParam>;
25
26
  forks: Set<ClusterForkOptions>;
26
27
  address: string;
28
+ weight: number;
29
+ cpuUsage: number;
27
30
  }
28
31
  export declare class PeerLiveness {
29
32
  private killed;
@@ -50,11 +53,12 @@ export declare function startClusterClient(mainFilename: string, serviceControl?
50
53
  export declare function createClusterServer(mainFilename: string, scryptedRuntime: ScryptedRuntime, certificate: ReturnType<typeof createSelfSignedCertificate>): tls.Server;
51
54
  export declare class ClusterManagerImpl implements ClusterManager {
52
55
  private api;
56
+ private clusterWorkerId;
53
57
  private clusterServicePromise;
54
58
  private clusterMode;
55
- constructor(api: PluginAPI);
59
+ constructor(api: PluginAPI, clusterWorkerId: string);
56
60
  getClusterWorkerId(): string;
57
61
  getClusterMode(): 'server' | 'client' | undefined;
58
- getClusterWorkers(): Promise<Record<string, ClusterWorker>>;
62
+ getClusterWorkers(): Promise<Record<string, import("@scrypted/types").ClusterWorker>>;
59
63
  private getClusterService;
60
64
  }
@@ -15,14 +15,15 @@ const tls_1 = __importDefault(require("tls"));
15
15
  const cluster_hash_1 = require("./cluster/cluster-hash");
16
16
  const cluster_labels_1 = require("./cluster/cluster-labels");
17
17
  const cluster_setup_1 = require("./cluster/cluster-setup");
18
+ const cpu_timer_1 = require("./cluster/cpu-timer");
18
19
  const plugin_volume_1 = require("./plugin/plugin-volume");
19
20
  const node_worker_common_1 = require("./plugin/runtime/node-worker-common");
20
21
  const runtime_host_1 = require("./plugin/runtime/runtime-host");
21
22
  const rpc_1 = require("./rpc");
22
23
  const rpc_serializer_1 = require("./rpc-serializer");
23
- const sleep_1 = require("./sleep");
24
24
  const env_1 = require("./services/env");
25
25
  const info_1 = require("./services/info");
26
+ const sleep_1 = require("./sleep");
26
27
  (0, source_map_support_1.install)({
27
28
  environment: 'node',
28
29
  });
@@ -79,7 +80,7 @@ class ClusterForkResult extends PeerLiveness {
79
80
  }
80
81
  }
81
82
  exports.ClusterForkResult = ClusterForkResult;
82
- function createClusterForkParam(mainFilename, clusterId, clusterSecret) {
83
+ function createClusterForkParam(mainFilename, clusterId, clusterSecret, clusterWorkerId) {
83
84
  const clusterForkParam = async (runtime, runtimeWorkerOptions, peerLiveness, getZip) => {
84
85
  let runtimeWorker;
85
86
  const builtins = (0, runtime_host_1.getBuiltinRuntimeHosts)();
@@ -118,7 +119,7 @@ function createClusterForkParam(mainFilename, clusterId, clusterSecret) {
118
119
  let ping;
119
120
  try {
120
121
  const initializeCluster = await threadPeer.getParam('initializeCluster');
121
- await initializeCluster({ clusterId, clusterSecret });
122
+ await initializeCluster({ clusterId, clusterSecret, clusterWorkerId });
122
123
  getRemote = await threadPeer.getParam('getRemote');
123
124
  ping = await threadPeer.getParam('ping');
124
125
  }
@@ -152,8 +153,10 @@ function createClusterForkParam(mainFilename, clusterId, clusterSecret) {
152
153
  function startClusterClient(mainFilename, serviceControl) {
153
154
  console.log('Cluster client starting.');
154
155
  const envControl = new env_1.EnvControl();
156
+ const cpuTimer = new cpu_timer_1.CpuTimer();
155
157
  const originalClusterAddress = process.env.SCRYPTED_CLUSTER_ADDRESS;
156
158
  const labels = (0, cluster_labels_1.getClusterLabels)();
159
+ const weight = (0, cluster_labels_1.getClusterWorkerWeight)();
157
160
  const clusterSecret = process.env.SCRYPTED_CLUSTER_SECRET;
158
161
  const clusterMode = (0, cluster_setup_1.getScryptedClusterMode)();
159
162
  const [, host, port] = clusterMode;
@@ -196,6 +199,7 @@ function startClusterClient(mainFilename, serviceControl) {
196
199
  peer.params['service-control'] = serviceControl;
197
200
  peer.params['env-control'] = envControl;
198
201
  peer.params['info'] = new info_1.Info();
202
+ peer.params['cpu'] = async () => cpuTimer.sample();
199
203
  const { localAddress, localPort } = socket;
200
204
  console.log('Cluster server connected.', localAddress, localPort);
201
205
  socket.on('close', () => {
@@ -214,12 +218,12 @@ function startClusterClient(mainFilename, serviceControl) {
214
218
  auth.sha256 = (0, cluster_hash_1.computeClusterObjectHash)(auth, clusterSecret);
215
219
  const properties = {
216
220
  labels,
221
+ weight,
217
222
  };
218
223
  const { clusterId, clusterWorkerId } = await connectForkWorker(auth, properties);
219
- process.env.SCRYPTED_CLUSTER_WORKER_ID = clusterWorkerId;
220
224
  const clusterPeerSetup = (0, cluster_setup_1.setupCluster)(peer);
221
- await clusterPeerSetup.initializeCluster({ clusterId, clusterSecret });
222
- peer.params['fork'] = createClusterForkParam(mainFilename, clusterId, clusterSecret);
225
+ await clusterPeerSetup.initializeCluster({ clusterId, clusterSecret, clusterWorkerId });
226
+ peer.params['fork'] = createClusterForkParam(mainFilename, clusterId, clusterSecret, clusterWorkerId);
223
227
  await peer.killed;
224
228
  }
225
229
  catch (e) {
@@ -234,18 +238,25 @@ function startClusterClient(mainFilename, serviceControl) {
234
238
  })();
235
239
  }
236
240
  function createClusterServer(mainFilename, scryptedRuntime, certificate) {
237
- const serverClusterWorkerId = crypto_1.default.randomUUID();
238
- process.env.SCRYPTED_CLUSTER_WORKER_ID = serverClusterWorkerId;
241
+ scryptedRuntime.serverClusterWorkerId = crypto_1.default.randomUUID();
239
242
  const serverWorker = {
240
243
  labels: (0, cluster_labels_1.getClusterLabels)(),
241
- id: serverClusterWorkerId,
244
+ id: scryptedRuntime.serverClusterWorkerId,
242
245
  peer: undefined,
243
- fork: Promise.resolve(createClusterForkParam(mainFilename, scryptedRuntime.clusterId, scryptedRuntime.clusterSecret)),
246
+ fork: Promise.resolve(createClusterForkParam(mainFilename, scryptedRuntime.clusterId, scryptedRuntime.clusterSecret, scryptedRuntime.serverClusterWorkerId)),
244
247
  name: process.env.SCRYPTED_CLUSTER_WORKER_NAME || os_1.default.hostname(),
245
248
  address: process.env.SCRYPTED_CLUSTER_ADDRESS,
249
+ weight: (0, cluster_labels_1.getClusterWorkerWeight)(),
246
250
  forks: new Set(),
251
+ cpuUsage: 0,
247
252
  };
248
- scryptedRuntime.clusterWorkers.set(serverClusterWorkerId, serverWorker);
253
+ scryptedRuntime.clusterWorkers.set(scryptedRuntime.serverClusterWorkerId, serverWorker);
254
+ {
255
+ const cpuTimer = new cpu_timer_1.CpuTimer();
256
+ setInterval(() => {
257
+ serverWorker.cpuUsage = cpuTimer.sample();
258
+ }, 1000);
259
+ }
249
260
  const server = tls_1.default.createServer({
250
261
  key: certificate.serviceKey,
251
262
  cert: certificate.certificate,
@@ -276,6 +287,7 @@ function createClusterServer(mainFilename, scryptedRuntime, certificate) {
276
287
  name: auth.id,
277
288
  address: socket.remoteAddress,
278
289
  forks: new Set(),
290
+ cpuUsage: 0,
279
291
  };
280
292
  scryptedRuntime.clusterWorkers.set(id, worker);
281
293
  peer.killedSafe.finally(() => {
@@ -285,6 +297,15 @@ function createClusterServer(mainFilename, scryptedRuntime, certificate) {
285
297
  scryptedRuntime.clusterWorkers.delete(id);
286
298
  });
287
299
  console.log('Cluster client authenticated.', socket.remoteAddress, socket.remotePort, properties);
300
+ let cpu;
301
+ const cpuTimer = setInterval(async () => {
302
+ cpu ||= peer.getParam('cpu');
303
+ const usage = await (await cpu)();
304
+ worker.cpuUsage = usage;
305
+ }, 1000);
306
+ peer.killedSafe.finally(() => {
307
+ clearInterval(cpuTimer);
308
+ });
288
309
  }
289
310
  catch (e) {
290
311
  peer.kill(e);
@@ -301,13 +322,15 @@ function createClusterServer(mainFilename, scryptedRuntime, certificate) {
301
322
  }
302
323
  class ClusterManagerImpl {
303
324
  api;
325
+ clusterWorkerId;
304
326
  clusterServicePromise;
305
327
  clusterMode = (0, cluster_setup_1.getScryptedClusterMode)()?.[0];
306
- constructor(api) {
328
+ constructor(api, clusterWorkerId) {
307
329
  this.api = api;
330
+ this.clusterWorkerId = clusterWorkerId;
308
331
  }
309
332
  getClusterWorkerId() {
310
- return process.env.SCRYPTED_CLUSTER_WORKER_ID;
333
+ return this.clusterWorkerId;
311
334
  }
312
335
  getClusterMode() {
313
336
  return this.clusterMode;
@@ -1 +1 @@
1
- {"version":3,"file":"scrypted-cluster-main.js","sourceRoot":"","sources":["../src/scrypted-cluster-main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scrypted-cluster-main.js","sourceRoot":"","sources":["../src/scrypted-cluster-main.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { ClusterWorker } from "@scrypted/types";
1
2
  import type { RuntimeWorkerOptions } from "../plugin/runtime/runtime-worker";
2
3
  import type { ScryptedRuntime } from "../runtime";
3
4
  import type { ClusterForkOptions, ClusterForkResultInterface, PeerLiveness } from "../scrypted-cluster-main";
@@ -5,7 +6,7 @@ export declare class ClusterForkService {
5
6
  runtime: ScryptedRuntime;
6
7
  constructor(runtime: ScryptedRuntime);
7
8
  fork(runtimeWorkerOptions: RuntimeWorkerOptions, options: ClusterForkOptions, peerLiveness: PeerLiveness, getZip: () => Promise<Buffer>): Promise<ClusterForkResultInterface>;
8
- getClusterWorkers(): Promise<any>;
9
+ getClusterWorkers(): Promise<Record<string, ClusterWorker>>;
9
10
  getEnvControl(clusterWorkerId: string): Promise<any>;
10
11
  getServiceControl(clusterWorkerId: string): Promise<any>;
11
12
  getInfo(clusterWorkerId: string): Promise<any>;
@@ -62,7 +62,7 @@ class ClusterForkService {
62
62
  // this enforces the "prefer" label.
63
63
  matchingWorkers = matchingWorkers.filter(({ matches }) => matches === bestMatch.matches)
64
64
  // sort by number of forks, to distribute load.
65
- .sort((a, b) => a.worker.forks.size - b.worker.forks.size);
65
+ .sort((a, b) => a.worker.forks.size * a.worker.weight - b.worker.forks.size * b.worker.weight);
66
66
  worker = matchingWorkers[0]?.worker;
67
67
  }
68
68
  console.log('forking to worker', worker.id, options);
@@ -90,9 +90,11 @@ class ClusterForkService {
90
90
  const ret = {};
91
91
  for (const worker of this.runtime.clusterWorkers.values()) {
92
92
  ret[worker.id] = {
93
+ id: worker.id,
93
94
  name: worker.name,
94
95
  labels: worker.labels,
95
96
  forks: [...worker.forks],
97
+ cpuUsage: worker.cpuUsage,
96
98
  };
97
99
  }
98
100
  return ret;
@@ -1 +1 @@
1
- {"version":3,"file":"cluster-fork.js","sourceRoot":"","sources":["../../src/services/cluster-fork.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cluster-fork.js","sourceRoot":"","sources":["../../src/services/cluster-fork.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"root":["../src/cert.ts","../src/db-types.ts","../src/deferred.ts","../src/event-registry.ts","../src/http-interfaces.ts","../src/infer-defaults.ts","../src/io.ts","../src/ip.ts","../src/level.ts","../src/listen-zero.ts","../src/logger.ts","../src/media-helpers.ts","../src/rpc-buffer-serializer.ts","../src/rpc-peer-eval.ts","../src/rpc-serializer.ts","../src/rpc.ts","../src/runtime.ts","../src/scrypted-cluster-main.ts","../src/scrypted-main-exports.ts","../src/scrypted-main.ts","../src/scrypted-plugin-main.ts","../src/scrypted-server-main.ts","../src/server-settings.ts","../src/sleep.ts","../src/state.ts","../src/threading.ts","../src/usertoken.ts","../src/cluster/cluster-hash.ts","../src/cluster/cluster-labels.ts","../src/cluster/cluster-setup.ts","../src/cluster/connect-rpc-object.ts","../src/fetch/http-fetch.ts","../src/fetch/index.ts","../src/mixin/mixin-cycle.ts","../src/plugin/acl.ts","../src/plugin/descriptor.ts","../src/plugin/device.ts","../src/plugin/endpoint.ts","../src/plugin/media.ts","../src/plugin/mediaobject.ts","../src/plugin/plugin-api.ts","../src/plugin/plugin-console.ts","../src/plugin/plugin-debug.ts","../src/plugin/plugin-device.ts","../src/plugin/plugin-error.ts","../src/plugin/plugin-host-api.ts","../src/plugin/plugin-host.ts","../src/plugin/plugin-http.ts","../src/plugin/plugin-lazy-remote.ts","../src/plugin/plugin-npm-dependencies.ts","../src/plugin/plugin-remote-websocket.ts","../src/plugin/plugin-remote-worker.ts","../src/plugin/plugin-remote.ts","../src/plugin/plugin-repl.ts","../src/plugin/plugin-state-check.ts","../src/plugin/plugin-volume.ts","../src/plugin/socket-serializer.ts","../src/plugin/system.ts","../src/plugin/runtime/child-process-worker.ts","../src/plugin/runtime/cluster-fork-worker.ts","../src/plugin/runtime/custom-worker.ts","../src/plugin/runtime/node-fork-worker.ts","../src/plugin/runtime/node-thread-worker.ts","../src/plugin/runtime/node-worker-common.ts","../src/plugin/runtime/python-worker.ts","../src/plugin/runtime/runtime-host.ts","../src/plugin/runtime/runtime-worker.ts","../src/services/addresses.ts","../src/services/alerts.ts","../src/services/backup.ts","../src/services/cluster-fork.ts","../src/services/cors.ts","../src/services/env.ts","../src/services/info.ts","../src/services/plugin.ts","../src/services/service-control.ts","../src/services/users.ts"],"version":"5.7.2"}
1
+ {"root":["../src/cert.ts","../src/db-types.ts","../src/deferred.ts","../src/event-registry.ts","../src/http-interfaces.ts","../src/infer-defaults.ts","../src/io.ts","../src/ip.ts","../src/level.ts","../src/listen-zero.ts","../src/logger.ts","../src/media-helpers.ts","../src/rpc-buffer-serializer.ts","../src/rpc-peer-eval.ts","../src/rpc-serializer.ts","../src/rpc.ts","../src/runtime.ts","../src/scrypted-cluster-main.ts","../src/scrypted-main-exports.ts","../src/scrypted-main.ts","../src/scrypted-plugin-main.ts","../src/scrypted-server-main.ts","../src/server-settings.ts","../src/sleep.ts","../src/state.ts","../src/threading.ts","../src/usertoken.ts","../src/cluster/cluster-hash.ts","../src/cluster/cluster-labels.ts","../src/cluster/cluster-setup.ts","../src/cluster/connect-rpc-object.ts","../src/cluster/cpu-timer.ts","../src/fetch/http-fetch.ts","../src/fetch/index.ts","../src/mixin/mixin-cycle.ts","../src/plugin/acl.ts","../src/plugin/descriptor.ts","../src/plugin/device.ts","../src/plugin/endpoint.ts","../src/plugin/media.ts","../src/plugin/mediaobject.ts","../src/plugin/plugin-api.ts","../src/plugin/plugin-console.ts","../src/plugin/plugin-debug.ts","../src/plugin/plugin-device.ts","../src/plugin/plugin-error.ts","../src/plugin/plugin-host-api.ts","../src/plugin/plugin-host.ts","../src/plugin/plugin-http.ts","../src/plugin/plugin-lazy-remote.ts","../src/plugin/plugin-npm-dependencies.ts","../src/plugin/plugin-remote-websocket.ts","../src/plugin/plugin-remote-worker.ts","../src/plugin/plugin-remote.ts","../src/plugin/plugin-repl.ts","../src/plugin/plugin-state-check.ts","../src/plugin/plugin-volume.ts","../src/plugin/socket-serializer.ts","../src/plugin/system.ts","../src/plugin/runtime/child-process-worker.ts","../src/plugin/runtime/cluster-fork-worker.ts","../src/plugin/runtime/custom-worker.ts","../src/plugin/runtime/node-fork-worker.ts","../src/plugin/runtime/node-thread-worker.ts","../src/plugin/runtime/node-worker-common.ts","../src/plugin/runtime/python-worker.ts","../src/plugin/runtime/runtime-host.ts","../src/plugin/runtime/runtime-worker.ts","../src/services/addresses.ts","../src/services/alerts.ts","../src/services/backup.ts","../src/services/cluster-fork.ts","../src/services/cors.ts","../src/services/env.ts","../src/services/info.ts","../src/services/plugin.ts","../src/services/service-control.ts","../src/services/users.ts"],"version":"5.7.2"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@scrypted/server",
3
- "version": "0.123.46",
3
+ "version": "0.123.48",
4
4
  "description": "",
5
5
  "dependencies": {
6
6
  "@scrypted/ffmpeg-static": "^6.1.0-build3",
7
7
  "@scrypted/node-pty": "^1.0.22",
8
- "@scrypted/types": "^0.3.82",
8
+ "@scrypted/types": "^0.3.87",
9
9
  "adm-zip": "^0.5.16",
10
10
  "body-parser": "^1.20.3",
11
11
  "cookie-parser": "^1.4.7",
@@ -21,7 +21,6 @@ class ClusterObject(TypedDict):
21
21
  sourceKey: str
22
22
  sha256: str
23
23
 
24
-
25
24
  def isClusterAddress(address: str):
26
25
  return not address or address == os.environ.get("SCRYPTED_CLUSTER_ADDRESS", None)
27
26
 
@@ -99,6 +98,7 @@ class ClusterSetup:
99
98
  return
100
99
  self.clusterId = options["clusterId"]
101
100
  self.clusterSecret = options["clusterSecret"]
101
+ self.clusterWorkerId = options["clusterWorkerId"]
102
102
  self.SCRYPTED_CLUSTER_ADDRESS = os.environ.get("SCRYPTED_CLUSTER_ADDRESS", None)
103
103
 
104
104
  async def handleClusterClient(
@@ -144,7 +144,7 @@ class ClusterSetup:
144
144
  m = hashlib.sha256()
145
145
  m.update(
146
146
  bytes(
147
- f"{o['id']}{o.get('address') or ''}{o['port']}{o.get('sourceKey', None) or ''}{o['proxyId']}{self.clusterSecret}",
147
+ f"{o['id']}{o.get('address', '')}{o['port']}{o.get('sourceKey', '')}{o['proxyId']}{self.clusterSecret}",
148
148
  "utf8",
149
149
  )
150
150
  )
@@ -229,21 +229,21 @@ class EventRegistry(object):
229
229
 
230
230
 
231
231
  class ClusterManager(scrypted_python.scrypted_sdk.types.ClusterManager):
232
- def __init__(self, api: Any):
233
- self.api = api
232
+ def __init__(self, remote: PluginRemote):
233
+ self.remote = remote
234
234
  self.clusterService = None
235
235
 
236
236
  def getClusterMode(self) -> Any | Any:
237
237
  return os.getenv("SCRYPTED_CLUSTER_MODE", None)
238
238
 
239
239
  def getClusterWorkerId(self) -> str:
240
- return os.getenv("SCRYPTED_CLUSTER_WORKER_ID", None)
240
+ return self.remote.clusterSetup.clusterWorkerId
241
241
 
242
242
  async def getClusterWorkers(
243
243
  self,
244
244
  ) -> Mapping[str, scrypted_python.scrypted_sdk.types.ClusterWorker]:
245
245
  self.clusterService = self.clusterService or asyncio.ensure_future(
246
- self.api.getComponent("cluster-fork")
246
+ self.remote.api.getComponent("cluster-fork")
247
247
  )
248
248
  cs = await self.clusterService
249
249
  return await cs.getClusterWorkers()
@@ -839,7 +839,7 @@ class PluginRemote:
839
839
  self.systemManager = SystemManager(self.api, self.systemState)
840
840
  self.deviceManager = DeviceManager(self.nativeIds, self.systemManager)
841
841
  self.mediaManager = MediaManager(await self.api.getMediaManager())
842
- self.clusterManager = ClusterManager(self.api)
842
+ self.clusterManager = ClusterManager(self)
843
843
 
844
844
  try:
845
845
  sdk.systemManager = self.systemManager
@@ -41,6 +41,10 @@ export function getClusterLabels() {
41
41
  return labels;
42
42
  }
43
43
 
44
+ export function getClusterWorkerWeight() {
45
+ return parseFloat(process.env.SCRYPTED_CLUSTER_WEIGHT) || 1;
46
+ }
47
+
44
48
  export function needsClusterForkWorker(options: ClusterForkOptions) {
45
49
  return process.env.SCRYPTED_CLUSTER_ADDRESS
46
50
  && options
@@ -17,6 +17,13 @@ export function isClusterAddress(address: string) {
17
17
  return !address || address === process.env.SCRYPTED_CLUSTER_ADDRESS;
18
18
  }
19
19
 
20
+ export function getClusterObject(clusterId: string, value: any) {
21
+ const clusterObject: ClusterObject = value?.__cluster;
22
+ if (clusterObject?.id !== clusterId)
23
+ return;
24
+ return clusterObject;
25
+ }
26
+
20
27
  async function peerConnectRPCObject(peer: RpcPeer, o: ClusterObject) {
21
28
  let peerConnectRPCObject: Promise<ConnectRPCObject> = peer.tags['connectRPCObject'];
22
29
  if (!peerConnectRPCObject) {
@@ -32,6 +39,7 @@ export function setupCluster(peer: RpcPeer) {
32
39
  let clusterId: string;
33
40
  let clusterSecret: string;
34
41
  let clusterPort: number;
42
+ let clusterWorkerId: string;
35
43
 
36
44
  // all cluster clients, incoming and outgoing, connect with random ports which can be used as peer ids
37
45
  // on the cluster server that is listening on the actual port.
@@ -236,8 +244,8 @@ export function setupCluster(peer: RpcPeer) {
236
244
  }
237
245
 
238
246
  const connectRPCObject = async (value: any) => {
239
- const clusterObject: ClusterObject = value?.__cluster;
240
- if (clusterObject?.id !== clusterId)
247
+ const clusterObject = getClusterObject(clusterId, value);
248
+ if (!clusterObject)
241
249
  return value;
242
250
  const { address, port, proxyId } = clusterObject;
243
251
  // handle the case when trying to connect to an object is on this cluster node,
@@ -315,12 +323,12 @@ export function setupCluster(peer: RpcPeer) {
315
323
  const initializeCluster: InitializeCluster = async (options: {
316
324
  clusterId: string;
317
325
  clusterSecret: string;
326
+ clusterWorkerId: string;
318
327
  }) => {
319
328
  if (clusterPort)
320
329
  return;
321
330
 
322
- ({ clusterId, clusterSecret } = options);
323
-
331
+ ({ clusterId, clusterSecret, clusterWorkerId, } = options);
324
332
 
325
333
  const clients = new Set<net.Socket>();
326
334
 
@@ -379,7 +387,7 @@ export function setupCluster(peer: RpcPeer) {
379
387
  }
380
388
  }
381
389
 
382
- export type InitializeCluster = (cluster: { clusterId: string, clusterSecret: string }) => Promise<void>;
390
+ export type InitializeCluster = (cluster: { clusterId: string, clusterSecret: string, clusterWorkerId: string, }) => Promise<void>;
383
391
 
384
392
  export function getScryptedClusterMode(): ['server' | 'client', string, number] {
385
393
  const mode = process.env.SCRYPTED_CLUSTER_MODE as 'server' | 'client';