plugin-cluster-manager 1.1.7 → 1.1.11

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 (108) hide show
  1. package/client.js +1 -0
  2. package/dist/client/AclCacheManager.d.ts +2 -0
  3. package/dist/client/CacheMonitor.d.ts +2 -0
  4. package/dist/client/ClusterManagerLayout.d.ts +2 -0
  5. package/dist/client/ClusterNodes.d.ts +2 -0
  6. package/dist/client/ContainerOrchestrator.d.ts +2 -0
  7. package/dist/client/Doctor.d.ts +2 -0
  8. package/dist/client/EventQueueMonitor.d.ts +2 -0
  9. package/dist/client/LockMonitor.d.ts +2 -0
  10. package/dist/client/NginxCacheManager.d.ts +2 -0
  11. package/dist/client/PackageInstaller.d.ts +2 -0
  12. package/dist/client/PluginOperations.d.ts +2 -0
  13. package/dist/client/RedisMonitor.d.ts +2 -0
  14. package/dist/client/TaskManager.d.ts +2 -0
  15. package/dist/client/WorkflowExecutions.d.ts +2 -0
  16. package/dist/client/index.d.ts +5 -0
  17. package/dist/client/index.js +1 -1
  18. package/dist/client/utils/clientSafeCache.d.ts +3 -0
  19. package/dist/client/utils/requestDedupInterceptor.d.ts +2 -0
  20. package/dist/client/utils.d.ts +12 -0
  21. package/dist/externalVersion.js +5 -5
  22. package/dist/index.d.ts +2 -0
  23. package/dist/locale/en-US.json +97 -1
  24. package/dist/locale/vi-VN.json +98 -1
  25. package/dist/locale/zh-CN.json +98 -1
  26. package/dist/server/actions/acl-cache.d.ts +53 -0
  27. package/dist/server/actions/acl-cache.js +1 -1
  28. package/dist/server/actions/cache-monitor.d.ts +33 -0
  29. package/dist/server/actions/cache-monitor.js +301 -0
  30. package/dist/server/actions/cluster-nodes.d.ts +64 -0
  31. package/dist/server/actions/cluster-nodes.js +394 -10
  32. package/dist/server/actions/doctor.d.ts +82 -0
  33. package/dist/server/actions/doctor.js +1250 -0
  34. package/dist/server/actions/event-queue-monitor.d.ts +13 -0
  35. package/dist/server/actions/lock-monitor.d.ts +19 -0
  36. package/dist/server/actions/orchestrator.d.ts +58 -0
  37. package/dist/server/actions/package-manager.d.ts +6 -0
  38. package/dist/server/actions/plugin-operations.d.ts +6 -0
  39. package/dist/server/actions/redis-monitor.d.ts +12 -0
  40. package/dist/server/actions/tasks.d.ts +7 -0
  41. package/dist/server/actions/workflow-executions.d.ts +7 -0
  42. package/dist/server/adapters/redis-lock-adapter.d.ts +15 -0
  43. package/dist/server/adapters/redis-node-registry.d.ts +12 -0
  44. package/dist/server/adapters/redis-pubsub-adapter.d.ts +16 -0
  45. package/dist/server/collections/app.d.ts +8 -0
  46. package/dist/server/collections/cluster-manager-acl-cache.d.ts +22 -0
  47. package/dist/server/collections/cluster-manager-cache-mgr.d.ts +22 -0
  48. package/dist/server/collections/cluster-manager-cluster.d.ts +22 -0
  49. package/dist/server/collections/cluster-manager-doctor-runs.d.ts +3 -0
  50. package/dist/server/collections/cluster-manager-doctor-runs.js +52 -0
  51. package/dist/server/collections/cluster-manager-doctor.d.ts +18 -0
  52. package/dist/server/collections/cluster-manager-doctor.js +44 -0
  53. package/dist/server/collections/cluster-manager-lock.d.ts +22 -0
  54. package/dist/server/collections/cluster-manager-plugins.d.ts +18 -0
  55. package/dist/server/collections/cluster-manager-queue.d.ts +22 -0
  56. package/dist/server/collections/cluster-manager-redis.d.ts +22 -0
  57. package/dist/server/collections/cluster-manager-workflow.d.ts +22 -0
  58. package/dist/server/collections/cluster-manager.d.ts +22 -0
  59. package/dist/server/collections/orchestrator-settings.d.ts +59 -0
  60. package/dist/server/collections/orchestrator-stacks.d.ts +102 -0
  61. package/dist/server/collections/worker-orchestrator.d.ts +22 -0
  62. package/dist/server/collections/worker-packages-configs.d.ts +3 -0
  63. package/dist/server/collections/worker-packages.d.ts +22 -0
  64. package/dist/server/hooks/cacheInvalidationHooks.d.ts +1 -0
  65. package/dist/server/hooks/cacheInvalidationHooks.js +81 -0
  66. package/dist/server/index.d.ts +1 -0
  67. package/dist/server/middlewares/listMetaCacheMiddleware.d.ts +2 -0
  68. package/dist/server/middlewares/listMetaCacheMiddleware.js +79 -0
  69. package/dist/server/orchestrator/PackageManager.d.ts +39 -0
  70. package/dist/server/orchestrator/PackageManager.js +83 -27
  71. package/dist/server/orchestrator/docker-adapter.d.ts +41 -0
  72. package/dist/server/orchestrator/index.d.ts +4 -0
  73. package/dist/server/orchestrator/k8s-adapter.d.ts +50 -0
  74. package/dist/server/orchestrator/leader-election.d.ts +48 -0
  75. package/dist/server/orchestrator/types.d.ts +84 -0
  76. package/dist/server/plugin.d.ts +26 -0
  77. package/dist/server/plugin.js +70 -8
  78. package/dist/server/utils/node.d.ts +6 -0
  79. package/dist/server/utils/redis.d.ts +29 -0
  80. package/dist/server/utils/versionManager.d.ts +10 -0
  81. package/dist/server/utils/versionManager.js +91 -0
  82. package/dist/shared/packages.d.ts +23 -0
  83. package/package.json +41 -41
  84. package/server.js +1 -0
  85. package/src/client/CacheMonitor.tsx +166 -179
  86. package/src/client/ClusterManagerLayout.tsx +48 -42
  87. package/src/client/ClusterNodes.tsx +691 -418
  88. package/src/client/Doctor.tsx +559 -0
  89. package/src/client/NginxCacheManager.tsx +415 -0
  90. package/src/client/PluginOperations.tsx +234 -234
  91. package/src/client/index.tsx +22 -14
  92. package/src/client/utils/clientSafeCache.ts +41 -0
  93. package/src/client/utils/requestDedupInterceptor.ts +213 -0
  94. package/src/locale/en-US.json +97 -1
  95. package/src/locale/vi-VN.json +98 -1
  96. package/src/locale/zh-CN.json +98 -1
  97. package/src/server/__tests__/doctor.test.ts +53 -0
  98. package/src/server/actions/acl-cache.ts +272 -272
  99. package/src/server/actions/cache-monitor.ts +453 -116
  100. package/src/server/actions/cluster-nodes.ts +882 -378
  101. package/src/server/actions/doctor.ts +1540 -0
  102. package/src/server/collections/cluster-manager-doctor-runs.ts +23 -0
  103. package/src/server/collections/cluster-manager-doctor.ts +19 -0
  104. package/src/server/hooks/cacheInvalidationHooks.ts +58 -0
  105. package/src/server/middlewares/listMetaCacheMiddleware.ts +55 -0
  106. package/src/server/orchestrator/PackageManager.ts +19 -15
  107. package/src/server/plugin.ts +353 -263
  108. package/src/server/utils/versionManager.ts +69 -0
@@ -0,0 +1,13 @@
1
+ import { Context } from '@nocobase/actions';
2
+ export declare const eventQueueActions: {
3
+ /**
4
+ * GET /clusterManagerQueue:stats
5
+ * Returns event queue statistics
6
+ */
7
+ stats(ctx: Context, next: () => Promise<void>): Promise<void>;
8
+ /**
9
+ * GET /clusterManagerQueue:messages
10
+ * List pending messages in a specific channel (memory adapter only)
11
+ */
12
+ messages(ctx: Context, next: () => Promise<void>): Promise<void>;
13
+ };
@@ -0,0 +1,19 @@
1
+ import { Context } from '@nocobase/actions';
2
+ export declare const lockActions: {
3
+ /**
4
+ * GET /clusterManagerLock:info
5
+ * Returns lock manager info
6
+ */
7
+ info(ctx: Context, next: () => Promise<void>): Promise<void>;
8
+ /**
9
+ * GET /clusterManagerLock:list
10
+ * List active locks
11
+ */
12
+ list(ctx: Context, next: () => Promise<void>): Promise<void>;
13
+ /**
14
+ * POST /clusterManagerLock:release
15
+ * Force release a stuck lock (admin emergency action)
16
+ * Uses compare-and-swap via DEL for Redis locks with the correct key prefix.
17
+ */
18
+ release(ctx: Context, next: () => Promise<void>): Promise<void>;
19
+ };
@@ -0,0 +1,58 @@
1
+ /**
2
+ * Orchestrator Actions
3
+ *
4
+ * API endpoints for container management. Write operations (scale, start, stop, remove)
5
+ * are guarded by leader election — only the leader node can execute them.
6
+ */
7
+ import { Context } from '@nocobase/actions';
8
+ export declare const orchestratorActions: {
9
+ /**
10
+ * GET /workerOrchestrator:ping
11
+ * Test connectivity to the container runtime
12
+ */
13
+ ping(ctx: Context, next: () => Promise<void>): Promise<void>;
14
+ /**
15
+ * GET /workerOrchestrator:containers?stackId=1
16
+ * List live containers for a stack
17
+ */
18
+ containers(ctx: Context, next: () => Promise<void>): Promise<void>;
19
+ /**
20
+ * POST /workerOrchestrator:scale
21
+ * Body: { stackId: 1, replicas: 3 }
22
+ * Leader-only
23
+ */
24
+ scale(ctx: Context, next: () => Promise<void>): Promise<void>;
25
+ /**
26
+ * POST /workerOrchestrator:start
27
+ * Body: { stackId: 1, containerId: "abc123" }
28
+ * Leader-only
29
+ */
30
+ start(ctx: Context, next: () => Promise<void>): Promise<void>;
31
+ /**
32
+ * POST /workerOrchestrator:stop
33
+ * Body: { stackId: 1, containerId: "abc123" }
34
+ * Leader-only
35
+ */
36
+ stop(ctx: Context, next: () => Promise<void>): Promise<void>;
37
+ /**
38
+ * POST /workerOrchestrator:remove
39
+ * Body: { stackId: 1, containerId: "abc123" }
40
+ * Leader-only
41
+ */
42
+ remove(ctx: Context, next: () => Promise<void>): Promise<void>;
43
+ /**
44
+ * GET /workerOrchestrator:stats?containerId=abc123
45
+ * Get real-time stats for a container
46
+ */
47
+ stats(ctx: Context, next: () => Promise<void>): Promise<void>;
48
+ /**
49
+ * GET /workerOrchestrator:logs?containerId=abc123&tail=100
50
+ * Get tail logs from a container
51
+ */
52
+ logs(ctx: Context, next: () => Promise<void>): Promise<void>;
53
+ /**
54
+ * GET /workerOrchestrator:networks
55
+ * List available networks (if supported by adapter)
56
+ */
57
+ networks(ctx: Context, next: () => Promise<void>): Promise<void>;
58
+ };
@@ -0,0 +1,6 @@
1
+ export declare const packageManagerActions: {
2
+ installPackages(ctx: any, next: () => Promise<void>): Promise<void>;
3
+ getPackageConfig(ctx: any, next: () => Promise<void>): Promise<void>;
4
+ savePackageConfig(ctx: any, next: () => Promise<void>): Promise<void>;
5
+ resetInitStatus(ctx: any, next: () => Promise<void>): Promise<void>;
6
+ };
@@ -0,0 +1,6 @@
1
+ import { Context } from '@nocobase/actions';
2
+ export declare const pluginOperationsActions: {
3
+ list(ctx: Context, next: () => Promise<void>): Promise<void>;
4
+ forceDisable(ctx: Context, next: () => Promise<void>): Promise<void>;
5
+ forceRemove(ctx: Context, next: () => Promise<void>): Promise<void>;
6
+ };
@@ -0,0 +1,12 @@
1
+ import { Context } from '@nocobase/actions';
2
+ export declare const redisActions: {
3
+ info(ctx: Context, next: () => Promise<void>): Promise<void>;
4
+ clients(ctx: Context, next: () => Promise<void>): Promise<void>;
5
+ pubsub(ctx: Context, next: () => Promise<void>): Promise<void>;
6
+ slowlog(ctx: Context, next: () => Promise<void>): Promise<void>;
7
+ /**
8
+ * GET /clusterManagerRedis:syncMessages
9
+ * Returns info about NocoBase sync message channels (pub/sub layer)
10
+ */
11
+ syncMessages(ctx: Context, next: () => Promise<void>): Promise<void>;
12
+ };
@@ -0,0 +1,7 @@
1
+ import { Context } from '@nocobase/actions';
2
+ export declare const tasksActions: {
3
+ list(ctx: Context, next: () => Promise<void>): Promise<void>;
4
+ cancel(ctx: Context, next: () => Promise<void>): Promise<void>;
5
+ retry(ctx: Context, next: () => Promise<void>): Promise<void>;
6
+ purge(ctx: Context, next: () => Promise<void>): Promise<void>;
7
+ };
@@ -0,0 +1,7 @@
1
+ import { Context } from '@nocobase/actions';
2
+ export declare const workflowActions: {
3
+ list(ctx: Context, next: () => Promise<void>): Promise<void>;
4
+ getJobs(ctx: Context, next: () => Promise<void>): Promise<void>;
5
+ cancel(ctx: Context, next: () => Promise<void>): Promise<void>;
6
+ purge(ctx: Context, next: () => Promise<void>): Promise<void>;
7
+ };
@@ -0,0 +1,15 @@
1
+ import { ILockAdapter, ILock, Releaser } from '@nocobase/lock-manager';
2
+ import { Application } from '@nocobase/server';
3
+ export declare class RedisLockAdapter implements ILockAdapter {
4
+ private options;
5
+ private client;
6
+ constructor(options: {
7
+ url?: string;
8
+ app: Application;
9
+ });
10
+ connect(): Promise<void>;
11
+ close(): Promise<void>;
12
+ acquire(key: string, ttl: number): Promise<Releaser>;
13
+ runExclusive<T>(key: string, fn: () => Promise<T>, ttl: number): Promise<T>;
14
+ tryAcquire(key: string, timeout?: number): Promise<ILock>;
15
+ }
@@ -0,0 +1,12 @@
1
+ export declare class RedisNodeRegistry {
2
+ private app;
3
+ private timer;
4
+ private readonly ttlSecs;
5
+ private readonly intervalMs;
6
+ private readonly keyPrefix;
7
+ constructor(app: any);
8
+ start(): void;
9
+ stop(): void;
10
+ private heartbeat;
11
+ getNodes(): Promise<any[]>;
12
+ }
@@ -0,0 +1,16 @@
1
+ import { IPubSubAdapter, PubSubCallback } from '@nocobase/server';
2
+ export declare class RedisPubSubAdapter implements IPubSubAdapter {
3
+ private url;
4
+ private logger?;
5
+ private publisher;
6
+ private subscriber;
7
+ private connected;
8
+ private subscriptions;
9
+ constructor(url: string, logger?: any);
10
+ isConnected(): boolean;
11
+ connect(): Promise<void>;
12
+ close(): Promise<void>;
13
+ subscribe(channel: string, callback: PubSubCallback): Promise<void>;
14
+ unsubscribe(channel: string, callback: PubSubCallback): Promise<void>;
15
+ publish(channel: string, message: string): Promise<void>;
16
+ }
@@ -0,0 +1,8 @@
1
+ declare const _default: {
2
+ name: string;
3
+ autoCreate: boolean;
4
+ dumpRules: string;
5
+ model: string;
6
+ fields: any[];
7
+ };
8
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerAclCache" not found'
5
+ *
6
+ * Since 'clusterManagerAclCache' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerCacheMgr" not found'
5
+ *
6
+ * Since 'clusterManagerCacheMgr' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerCluster" not found'
5
+ *
6
+ * Since 'clusterManagerCluster' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,3 @@
1
+ import { CollectionOptions } from '@nocobase/database';
2
+ declare const _default: CollectionOptions;
3
+ export default _default;
@@ -0,0 +1,52 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var cluster_manager_doctor_runs_exports = {};
28
+ __export(cluster_manager_doctor_runs_exports, {
29
+ default: () => cluster_manager_doctor_runs_default
30
+ });
31
+ module.exports = __toCommonJS(cluster_manager_doctor_runs_exports);
32
+ var cluster_manager_doctor_runs_default = {
33
+ name: "clusterManagerDoctorRuns",
34
+ title: "Cluster Manager Doctor Runs",
35
+ fields: [
36
+ { name: "id", type: "bigInt", autoIncrement: true, primaryKey: true },
37
+ { name: "runId", type: "string", length: 64, unique: true, allowNull: false },
38
+ { name: "status", type: "string", length: 20, defaultValue: "running", allowNull: false },
39
+ { name: "durationMs", type: "integer", defaultValue: 12e4, allowNull: false },
40
+ { name: "progress", type: "integer", defaultValue: 0, allowNull: false },
41
+ { name: "startedAt", type: "date", allowNull: false },
42
+ { name: "deadlineAt", type: "date", allowNull: false },
43
+ { name: "finishedAt", type: "date", allowNull: true },
44
+ { name: "finishReason", type: "string", length: 40, allowNull: true },
45
+ { name: "startedBy", type: "string", length: 200, allowNull: true },
46
+ { name: "summary", type: "json", allowNull: true },
47
+ { name: "report", type: "json", allowNull: true },
48
+ { name: "error", type: "text", allowNull: true },
49
+ { name: "createdAt", type: "date" },
50
+ { name: "updatedAt", type: "date" }
51
+ ]
52
+ };
@@ -0,0 +1,18 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * Keeps the `clusterManagerDoctor` resourcer compatible with NocoBase
4
+ * workflow/ACL collection lookups. Diagnostic run data lives in
5
+ * `clusterManagerDoctorRuns`.
6
+ */
7
+ declare const _default: {
8
+ name: string;
9
+ dumpRules: string;
10
+ autoGenId: boolean;
11
+ createdAt: boolean;
12
+ updatedAt: boolean;
13
+ fields: {
14
+ name: string;
15
+ type: string;
16
+ }[];
17
+ };
18
+ export default _default;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
14
+ var __export = (target, all) => {
15
+ for (var name in all)
16
+ __defProp(target, name, { get: all[name], enumerable: true });
17
+ };
18
+ var __copyProps = (to, from, except, desc) => {
19
+ if (from && typeof from === "object" || typeof from === "function") {
20
+ for (let key of __getOwnPropNames(from))
21
+ if (!__hasOwnProp.call(to, key) && key !== except)
22
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
23
+ }
24
+ return to;
25
+ };
26
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
27
+ var cluster_manager_doctor_exports = {};
28
+ __export(cluster_manager_doctor_exports, {
29
+ default: () => cluster_manager_doctor_default
30
+ });
31
+ module.exports = __toCommonJS(cluster_manager_doctor_exports);
32
+ var cluster_manager_doctor_default = {
33
+ name: "clusterManagerDoctor",
34
+ dumpRules: "skip",
35
+ autoGenId: true,
36
+ createdAt: false,
37
+ updatedAt: false,
38
+ fields: [
39
+ {
40
+ name: "name",
41
+ type: "string"
42
+ }
43
+ ]
44
+ };
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerLock" not found'
5
+ *
6
+ * Since 'clusterManagerLock' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * Keeps the `clusterManagerPlugins` resourcer compatible with NocoBase
4
+ * workflow/ACL collection lookups. The actual plugin records live in
5
+ * the core `applicationPlugins` collection.
6
+ */
7
+ declare const _default: {
8
+ name: string;
9
+ dumpRules: string;
10
+ autoGenId: boolean;
11
+ createdAt: boolean;
12
+ updatedAt: boolean;
13
+ fields: {
14
+ name: string;
15
+ type: string;
16
+ }[];
17
+ };
18
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerQueue" not found'
5
+ *
6
+ * Since 'clusterManagerQueue' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerRedis" not found'
5
+ *
6
+ * Since 'clusterManagerRedis' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManagerWorkflow" not found'
5
+ *
6
+ * Since 'clusterManagerWorkflow' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * DUMMY COLLECTION
3
+ * This collection is created to prevent NocoBase workflow/ACL from throwing the error:
4
+ * '[Workflow pre-action]: collection "clusterManager" not found'
5
+ *
6
+ * Since 'clusterManager' is registered as a resourcer in plugin.ts, NocoBase
7
+ * implicitly looks for a collection with the same name.
8
+ * We set dumpRules: 'skip' and avoid timestamps to ensure this collection
9
+ * is completely ignored during backups/migrations and doesn't pollute the actual DB.
10
+ */
11
+ declare const _default: {
12
+ name: string;
13
+ dumpRules: string;
14
+ autoGenId: boolean;
15
+ createdAt: boolean;
16
+ updatedAt: boolean;
17
+ fields: {
18
+ name: string;
19
+ type: string;
20
+ }[];
21
+ };
22
+ export default _default;
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Plugin settings stored in DB — configurable via NocoBase admin UI.
3
+ * Replaces env-var-only configuration for orchestrator adapter selection.
4
+ */
5
+ declare const _default: {
6
+ name: string;
7
+ autoGenId: boolean;
8
+ createdAt: boolean;
9
+ updatedAt: boolean;
10
+ fields: ({
11
+ name: string;
12
+ type: string;
13
+ defaultValue: string;
14
+ interface: string;
15
+ uiSchema: {
16
+ title: string;
17
+ 'x-component': string;
18
+ enum: {
19
+ value: string;
20
+ label: string;
21
+ }[];
22
+ description?: undefined;
23
+ };
24
+ } | {
25
+ name: string;
26
+ type: string;
27
+ defaultValue: string;
28
+ interface: string;
29
+ uiSchema: {
30
+ title: string;
31
+ 'x-component': string;
32
+ enum?: undefined;
33
+ description?: undefined;
34
+ };
35
+ } | {
36
+ name: string;
37
+ type: string;
38
+ interface: string;
39
+ uiSchema: {
40
+ title: string;
41
+ description: string;
42
+ 'x-component': string;
43
+ enum?: undefined;
44
+ };
45
+ defaultValue?: undefined;
46
+ } | {
47
+ name: string;
48
+ type: string;
49
+ defaultValue: string;
50
+ interface: string;
51
+ uiSchema: {
52
+ title: string;
53
+ description: string;
54
+ 'x-component': string;
55
+ enum?: undefined;
56
+ };
57
+ })[];
58
+ };
59
+ export default _default;