plugin-cluster-manager 1.1.15 → 1.1.16

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.
@@ -130,7 +130,7 @@ function getErrorMessage(error) {
130
130
  return error instanceof Error ? error.message : String(error);
131
131
  }
132
132
  function getNodeRole(node) {
133
- return (0, import_node.getNodeRoleFrom)({ workerMode: node.workerMode, isSandbox: node.isSandbox });
133
+ return (0, import_node.getNodeRoleFrom)({ workerMode: node.workerMode, appRole: node.appRole, isSandbox: node.isSandbox });
134
134
  }
135
135
  function getReferenceVersion(nodes) {
136
136
  var _a;
@@ -154,7 +154,7 @@ function countPackages(packages) {
154
154
  return packages.apt.length + packages.npm.length + packages.python.length;
155
155
  }
156
156
  function getNodeRole(node) {
157
- return (0, import_node.getNodeRoleFrom)({ workerMode: node.workerMode, isSandbox: node.isSandbox });
157
+ return (0, import_node.getNodeRoleFrom)({ workerMode: node.workerMode, appRole: node.appRole, isSandbox: node.isSandbox });
158
158
  }
159
159
  function getSafeEnv() {
160
160
  return {
@@ -354,11 +354,12 @@ async function getLocalPluginSnapshot(app) {
354
354
  }
355
355
  async function collectLocalDoctorSnapshot(app, options = {}) {
356
356
  const workerMode = process.env.WORKER_MODE || "main";
357
+ const appRole = process.env.APP_ROLE;
357
358
  const node = {
358
359
  hostname: import_os.default.hostname(),
359
360
  pid: process.pid,
360
361
  workerMode,
361
- role: getNodeRole({ workerMode, isSandbox: process.env.SKILL_HUB_SANDBOX === "true" }),
362
+ role: getNodeRole({ workerMode, appRole, isSandbox: process.env.SKILL_HUB_SANDBOX === "true" }),
362
363
  appVersion: process.env.NOCOBASE_VERSION || process.version,
363
364
  nodeVersion: process.version,
364
365
  platform: process.platform,
@@ -557,7 +558,7 @@ async function collectNodeSnapshots(app, nodes, options) {
557
558
  hostname: node.hostname || "unknown",
558
559
  pid: Number(node.pid || 0),
559
560
  workerMode,
560
- role: getNodeRole({ workerMode, isSandbox: node.isSandbox }),
561
+ role: getNodeRole({ workerMode, appRole: node.appRole, isSandbox: node.isSandbox }),
561
562
  appVersion: node.appVersion || "",
562
563
  nodeVersion: "",
563
564
  platform: "",
@@ -82,6 +82,7 @@ class RedisNodeRegistry {
82
82
  hostname: import_os.default.hostname(),
83
83
  appVersion: process.env.NOCOBASE_VERSION || process.version,
84
84
  workerMode: mode,
85
+ appRole: process.env.APP_ROLE,
85
86
  isSandbox: process.env.SKILL_HUB_SANDBOX === "true",
86
87
  pid: process.pid,
87
88
  url: process.env.APP_PUBLIC_URL || null,
@@ -119,13 +120,7 @@ class RedisNodeRegistry {
119
120
  }
120
121
  };
121
122
  try {
122
- await redis.sendCommand([
123
- "SET",
124
- key,
125
- JSON.stringify(metadata),
126
- "EX",
127
- this.ttlSecs.toString()
128
- ]);
123
+ await redis.sendCommand(["SET", key, JSON.stringify(metadata), "EX", this.ttlSecs.toString()]);
129
124
  } catch (err) {
130
125
  this.app.logger.error(`[RedisNodeRegistry] Heartbeat failed: ${err.message}`);
131
126
  }
@@ -88,7 +88,7 @@ class PluginClusterManagerServer extends import_server.Plugin {
88
88
  this.app.on("afterStart", () => {
89
89
  var _a;
90
90
  (_a = this.nodeRegistry) == null ? void 0 : _a.start();
91
- const isWorker = (0, import_node.isWorkerMode)(process.env.WORKER_MODE) || process.env.APP_ROLE === "worker" || process.env.APP_ROLE === "sandbox";
91
+ const isWorker = (0, import_node.isWorkerMode)(process.env.WORKER_MODE) || process.env.APP_ROLE === "worker" || process.env.APP_ROLE === "sandbox" || process.env.SKILL_HUB_SANDBOX === "true";
92
92
  if (isWorker) {
93
93
  setTimeout(async () => {
94
94
  try {
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "displayName": "Cluster Manager",
4
4
  "displayName.zh-CN": "Cluster Manager",
5
5
  "description": "Cluster node tracking, task orchestration, worker management, and package distribution",
6
- "version": "1.1.15",
6
+ "version": "1.1.16",
7
7
  "license": "Apache-2.0",
8
8
  "main": "dist/server/index.js",
9
9
  "keywords": [