mcp-compose 0.0.5 → 0.0.7
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/bin/mcp-compose.js +21 -16
- package/dist/bin/mcp-compose.js.map +1 -1
- package/dist/package.json +2 -1
- package/dist/src/pm2.d.ts +10 -2
- package/dist/src/pm2.d.ts.map +1 -1
- package/dist/src/pm2.js +201 -26
- package/dist/src/pm2.js.map +1 -1
- package/dist/src/supergateway.d.ts +7 -1
- package/dist/src/supergateway.d.ts.map +1 -1
- package/dist/src/supergateway.js +20 -4
- package/dist/src/supergateway.js.map +1 -1
- package/package.json +2 -1
package/dist/bin/mcp-compose.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { Command } from 'commander';
|
|
3
|
-
import { loadConfig, getStdioServers, getServerNames,
|
|
3
|
+
import { loadConfig, getStdioServers, getServerNames, } from '../src/config.js';
|
|
4
4
|
import pkg from '../package.json' with { type: 'json' };
|
|
5
5
|
const { version } = pkg;
|
|
6
|
-
import { startServers, stopServers, stopAllManagedServers, restartServers, getStatus, streamLogs, } from '../src/pm2.js';
|
|
6
|
+
import { startServers, stopServers, stopAllManagedServers, stopOrphanedServers, restartServers, getStatus, streamLogs, } from '../src/pm2.js';
|
|
7
7
|
import { syncToClaudeConfig, removeFromClaudeConfig } from '../src/sync.js';
|
|
8
8
|
function formatProgress(event) {
|
|
9
9
|
switch (event.type) {
|
|
@@ -55,7 +55,7 @@ program
|
|
|
55
55
|
.action(async (servers, _options, cmd) => {
|
|
56
56
|
try {
|
|
57
57
|
const config = loadConfig(getConfigPath(cmd));
|
|
58
|
-
const { processPrefix } = config.settings;
|
|
58
|
+
const { processPrefix, portBase } = config.settings;
|
|
59
59
|
const stdioServers = getStdioServers(config);
|
|
60
60
|
const filteredServers = servers.length > 0
|
|
61
61
|
? stdioServers.filter((s) => servers.includes(s.name))
|
|
@@ -64,19 +64,23 @@ program
|
|
|
64
64
|
console.log('No stdio servers match the filter. Remote servers are synced directly.');
|
|
65
65
|
}
|
|
66
66
|
if (filteredServers.length > 0) {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
const port = ports[i];
|
|
74
|
-
if (port === undefined) {
|
|
75
|
-
throw new Error(`Port allocation failed for server ${server.name}`);
|
|
67
|
+
const results = await startServers(filteredServers, processPrefix, portBase, printProgress);
|
|
68
|
+
// Update config with actual running ports before syncing
|
|
69
|
+
for (const result of results) {
|
|
70
|
+
const server = config.mcpServers[result.name];
|
|
71
|
+
if (server?.type === 'stdio') {
|
|
72
|
+
server.internalPort = result.port;
|
|
76
73
|
}
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
// When starting all servers, clean up orphaned processes from removed servers
|
|
77
|
+
if (servers.length === 0) {
|
|
78
|
+
const allServerNames = Object.keys(config.mcpServers);
|
|
79
|
+
const orphaned = await stopOrphanedServers(allServerNames, processPrefix, printProgress);
|
|
80
|
+
if (orphaned.length > 0) {
|
|
81
|
+
console.log('');
|
|
82
|
+
console.log(` Cleaned up ${String(orphaned.length)} removed server(s): ${orphaned.join(', ')}`);
|
|
83
|
+
}
|
|
80
84
|
}
|
|
81
85
|
console.log('');
|
|
82
86
|
const syncResult = syncToClaudeConfig(config);
|
|
@@ -168,11 +172,12 @@ program
|
|
|
168
172
|
.description('View server logs')
|
|
169
173
|
.argument('[server]', 'Server name (default: all)')
|
|
170
174
|
.option('-f, --follow', 'Follow log output')
|
|
175
|
+
.option('--err', 'Only show error logs')
|
|
171
176
|
.action((server, options, cmd) => {
|
|
172
177
|
try {
|
|
173
178
|
const config = loadConfig(getConfigPath(cmd));
|
|
174
179
|
const { processPrefix } = config.settings;
|
|
175
|
-
streamLogs(server, processPrefix, options.follow);
|
|
180
|
+
streamLogs(server, processPrefix, { follow: options.follow, err: options.err });
|
|
176
181
|
}
|
|
177
182
|
catch (err) {
|
|
178
183
|
handleError(err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-compose.js","sourceRoot":"","sources":["../../bin/mcp-compose.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EACL,UAAU,EACV,eAAe,EACf,cAAc,
|
|
1
|
+
{"version":3,"file":"mcp-compose.js","sourceRoot":"","sources":["../../bin/mcp-compose.ts"],"names":[],"mappings":"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"}
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcp-compose",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"description": "MCP server orchestration tool - manage multiple MCP servers with a single gateway",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"commander": "^12.1.0",
|
|
48
|
+
"mcp-compose": "^0.0.5",
|
|
48
49
|
"pm2": "^5.4.3",
|
|
49
50
|
"string-env-interpolation": "^1.0.1",
|
|
50
51
|
"strip-json-comments": "^5.0.3"
|
package/dist/src/pm2.d.ts
CHANGED
|
@@ -9,10 +9,18 @@ export interface ProgressEvent {
|
|
|
9
9
|
current?: number;
|
|
10
10
|
total?: number;
|
|
11
11
|
}
|
|
12
|
-
export declare function startServers(servers: NamedStdioServer[], prefix: string, onProgress?: ProgressCallback): Promise<StartResult[]>;
|
|
12
|
+
export declare function startServers(servers: NamedStdioServer[], prefix: string, portBase: number, onProgress?: ProgressCallback): Promise<StartResult[]>;
|
|
13
13
|
export declare function stopServers(serverNames: string[], prefix: string, onProgress?: ProgressCallback): Promise<void>;
|
|
14
14
|
export declare function stopAllManagedServers(): Promise<number>;
|
|
15
|
+
/**
|
|
16
|
+
* Stop managed processes that are not in the given server list.
|
|
17
|
+
* Returns the names of stopped orphaned processes.
|
|
18
|
+
*/
|
|
19
|
+
export declare function stopOrphanedServers(activeServerNames: string[], prefix: string, onProgress?: ProgressCallback): Promise<string[]>;
|
|
15
20
|
export declare function restartServers(serverNames: string[], prefix: string): Promise<void>;
|
|
16
21
|
export declare function getStatus(): Promise<ServerStatus[]>;
|
|
17
|
-
export declare function streamLogs(serverName?: string, prefix?: string,
|
|
22
|
+
export declare function streamLogs(serverName?: string, prefix?: string, options?: {
|
|
23
|
+
follow?: boolean | undefined;
|
|
24
|
+
err?: boolean | undefined;
|
|
25
|
+
}): ReturnType<typeof spawn>;
|
|
18
26
|
//# sourceMappingURL=pm2.d.ts.map
|
package/dist/src/pm2.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pm2.d.ts","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pm2.d.ts","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAY,MAAM,eAAe,CAAC;AAGhD,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE9E,MAAM,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;AAE9D,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,UAAU,GAAG,SAAS,GAAG,YAAY,GAAG,WAAW,GAAG,YAAY,GAAG,UAAU,GAAG,SAAS,GAAG,cAAc,GAAG,gBAAgB,CAAC;IACtI,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAsOD,wBAAgB,YAAY,CAC1B,OAAO,EAAE,gBAAgB,EAAE,EAC3B,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,WAAW,EAAE,CAAC,CAqKxB;AAED,wBAAgB,WAAW,CACzB,WAAW,EAAE,MAAM,EAAE,EACrB,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,IAAI,CAAC,CA6Bf;AAED,wBAAgB,qBAAqB,IAAI,OAAO,CAAC,MAAM,CAAC,CAgBvD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,MAAM,EAAE,MAAM,EACd,UAAU,CAAC,EAAE,gBAAgB,GAC5B,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB;AAED,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMnF;AAED,wBAAgB,SAAS,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC,CAcnD;AAED,wBAAgB,UAAU,CACxB,UAAU,CAAC,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,GACpE,UAAU,CAAC,OAAO,KAAK,CAAC,CAY1B"}
|
package/dist/src/pm2.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import pm2 from 'pm2';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { basename } from 'path';
|
|
3
|
+
import { spawn, execSync } from 'child_process';
|
|
4
|
+
import { buildSupergatewayCmdForServer, resolveSupergatewayBin } from './supergateway.js';
|
|
5
|
+
import { isPortAvailable } from './config.js';
|
|
4
6
|
// Environment variable marker to identify mcp-compose managed processes
|
|
5
7
|
const MCP_COMPOSE_MARKER = '__MCP_COMPOSE__';
|
|
6
8
|
/**
|
|
@@ -96,6 +98,23 @@ async function getRunningProcess(processName) {
|
|
|
96
98
|
const list = await pm2List();
|
|
97
99
|
return list.find((p) => p.name === processName) ?? null;
|
|
98
100
|
}
|
|
101
|
+
/**
|
|
102
|
+
* Extract the port number from a running process's args (--port <number>)
|
|
103
|
+
*/
|
|
104
|
+
function extractPortFromProcess(process) {
|
|
105
|
+
const pm2Env = process.pm2_env;
|
|
106
|
+
if (!pm2Env)
|
|
107
|
+
return null;
|
|
108
|
+
const args = pm2Env.args ?? [];
|
|
109
|
+
const portIndex = args.indexOf('--port');
|
|
110
|
+
if (portIndex === -1 || portIndex + 1 >= args.length)
|
|
111
|
+
return null;
|
|
112
|
+
const portStr = args[portIndex + 1];
|
|
113
|
+
if (portStr === undefined)
|
|
114
|
+
return null;
|
|
115
|
+
const port = parseInt(portStr, 10);
|
|
116
|
+
return isNaN(port) ? null : port;
|
|
117
|
+
}
|
|
99
118
|
/**
|
|
100
119
|
* Check if the process configuration matches the desired configuration
|
|
101
120
|
*/
|
|
@@ -106,9 +125,11 @@ function isProcessConfigMatch(process, script, args, env) {
|
|
|
106
125
|
// Check if process is online
|
|
107
126
|
if (pm2Env.status !== 'online')
|
|
108
127
|
return false;
|
|
109
|
-
// Check script path
|
|
110
|
-
|
|
128
|
+
// Check script path (pm2 resolves to full path, so compare basenames)
|
|
129
|
+
const currentScript = pm2Env.pm_exec_path ?? '';
|
|
130
|
+
if (currentScript !== script && basename(currentScript) !== basename(script)) {
|
|
111
131
|
return false;
|
|
132
|
+
}
|
|
112
133
|
// Check args (pm2 stores them as array)
|
|
113
134
|
const currentArgs = pm2Env.args ?? [];
|
|
114
135
|
if (currentArgs.length !== args.length)
|
|
@@ -140,53 +161,169 @@ function isManagedProcess(p) {
|
|
|
140
161
|
function getServerNameFromProcess(p) {
|
|
141
162
|
return p.pm2_env[MCP_COMPOSE_MARKER] ?? p.name;
|
|
142
163
|
}
|
|
143
|
-
|
|
164
|
+
/**
|
|
165
|
+
* Recursively collect all descendant PIDs of a given PID.
|
|
166
|
+
* Uses pgrep -P to find children at each level.
|
|
167
|
+
*/
|
|
168
|
+
function getDescendantPids(pid) {
|
|
169
|
+
const descendants = [];
|
|
170
|
+
try {
|
|
171
|
+
const output = execSync(`pgrep -P ${String(pid)}`, {
|
|
172
|
+
encoding: 'utf-8',
|
|
173
|
+
stdio: ['ignore', 'pipe', 'ignore'],
|
|
174
|
+
}).trim();
|
|
175
|
+
if (!output)
|
|
176
|
+
return descendants;
|
|
177
|
+
for (const line of output.split('\n')) {
|
|
178
|
+
const childPid = parseInt(line, 10);
|
|
179
|
+
if (!isNaN(childPid)) {
|
|
180
|
+
descendants.push(childPid);
|
|
181
|
+
descendants.push(...getDescendantPids(childPid));
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
catch {
|
|
186
|
+
// pgrep exits with 1 when no children found
|
|
187
|
+
}
|
|
188
|
+
return descendants;
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Collect all descendant PIDs from a pm2-managed process.
|
|
192
|
+
* Must be called BEFORE pm2Delete so the process tree is still alive.
|
|
193
|
+
*/
|
|
194
|
+
function collectDescendantPids(proc) {
|
|
195
|
+
if (!proc?.pid)
|
|
196
|
+
return [];
|
|
197
|
+
return getDescendantPids(proc.pid);
|
|
198
|
+
}
|
|
199
|
+
/**
|
|
200
|
+
* Kill specific PIDs that survived after their parent was stopped.
|
|
201
|
+
* Only targets exact PIDs collected from the process tree — safe
|
|
202
|
+
* against killing unrelated processes.
|
|
203
|
+
*/
|
|
204
|
+
function killSurvivorPids(pids) {
|
|
205
|
+
for (const pid of pids) {
|
|
206
|
+
try {
|
|
207
|
+
process.kill(pid, 'SIGTERM');
|
|
208
|
+
}
|
|
209
|
+
catch {
|
|
210
|
+
// Process already dead
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
export function startServers(servers, prefix, portBase, onProgress) {
|
|
144
215
|
return withPm2(async () => {
|
|
145
|
-
const results = [];
|
|
146
216
|
const total = servers.length;
|
|
147
|
-
|
|
217
|
+
const supergatewayBin = resolveSupergatewayBin();
|
|
218
|
+
const serverStates = [];
|
|
148
219
|
for (const serverEntry of servers) {
|
|
149
|
-
current++;
|
|
150
220
|
const { name, resourceLimits, ...server } = serverEntry;
|
|
151
221
|
const processName = getProcessName(name, prefix);
|
|
152
|
-
const cmd = buildSupergatewayCmdForServer({ ...server, resourceLimits });
|
|
153
|
-
const envWithMarker = {
|
|
154
|
-
...server.env,
|
|
155
|
-
[MCP_COMPOSE_MARKER]: name,
|
|
156
|
-
};
|
|
157
|
-
// Check if process is already running with the same configuration
|
|
158
222
|
const existingProcess = await getRunningProcess(processName);
|
|
159
|
-
if (existingProcess
|
|
223
|
+
if (existingProcess) {
|
|
224
|
+
const existingPort = extractPortFromProcess(existingProcess);
|
|
225
|
+
if (existingPort !== null) {
|
|
226
|
+
// Compare config using the existing port (not the newly suggested one)
|
|
227
|
+
const cmdForComparison = buildSupergatewayCmdForServer({
|
|
228
|
+
...server,
|
|
229
|
+
internalPort: existingPort,
|
|
230
|
+
resourceLimits,
|
|
231
|
+
}, supergatewayBin);
|
|
232
|
+
const envWithMarker = {
|
|
233
|
+
...server.env,
|
|
234
|
+
[MCP_COMPOSE_MARKER]: name,
|
|
235
|
+
};
|
|
236
|
+
if (isProcessConfigMatch(existingProcess, cmdForComparison.script, cmdForComparison.args, envWithMarker)) {
|
|
237
|
+
serverStates.push({
|
|
238
|
+
server: serverEntry,
|
|
239
|
+
existingProcess,
|
|
240
|
+
upToDate: true,
|
|
241
|
+
port: existingPort,
|
|
242
|
+
});
|
|
243
|
+
continue;
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
serverStates.push({
|
|
248
|
+
server: serverEntry,
|
|
249
|
+
existingProcess,
|
|
250
|
+
upToDate: false,
|
|
251
|
+
port: 0, // will be allocated in phase 2
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
// Phase 2: Allocate ports only for servers that need (re)starting
|
|
255
|
+
const usedPorts = new Set(serverStates.filter((s) => s.upToDate).map((s) => s.port));
|
|
256
|
+
let nextPort = portBase;
|
|
257
|
+
for (const state of serverStates) {
|
|
258
|
+
if (state.upToDate)
|
|
259
|
+
continue;
|
|
260
|
+
// Find next available port, skipping ports used by up-to-date servers
|
|
261
|
+
while (usedPorts.has(nextPort) || !(await isPortAvailable(nextPort))) {
|
|
262
|
+
nextPort++;
|
|
263
|
+
if (nextPort > 65535) {
|
|
264
|
+
throw new Error('No available ports found');
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
if (nextPort !== state.server.internalPort) {
|
|
268
|
+
onProgress?.({
|
|
269
|
+
type: 'port_skipped',
|
|
270
|
+
server: state.server.name,
|
|
271
|
+
originalPort: state.server.internalPort,
|
|
272
|
+
port: nextPort,
|
|
273
|
+
});
|
|
274
|
+
}
|
|
275
|
+
state.port = nextPort;
|
|
276
|
+
usedPorts.add(nextPort);
|
|
277
|
+
nextPort++;
|
|
278
|
+
}
|
|
279
|
+
// Phase 3: Apply changes
|
|
280
|
+
const results = [];
|
|
281
|
+
let current = 0;
|
|
282
|
+
for (const state of serverStates) {
|
|
283
|
+
current++;
|
|
284
|
+
const { name, resourceLimits, ...server } = state.server;
|
|
285
|
+
const processName = getProcessName(name, prefix);
|
|
286
|
+
if (state.upToDate) {
|
|
160
287
|
onProgress?.({
|
|
161
288
|
type: 'up_to_date',
|
|
162
289
|
server: name,
|
|
163
|
-
port:
|
|
290
|
+
port: state.port,
|
|
164
291
|
current,
|
|
165
292
|
total,
|
|
166
293
|
});
|
|
167
|
-
results.push({ name, processName, port:
|
|
294
|
+
results.push({ name, processName, port: state.port });
|
|
168
295
|
continue;
|
|
169
296
|
}
|
|
170
|
-
|
|
171
|
-
const isRecreate = existingProcess !== null;
|
|
297
|
+
const isRecreate = state.existingProcess !== null;
|
|
172
298
|
onProgress?.({
|
|
173
299
|
type: isRecreate ? 'recreating' : 'starting',
|
|
174
300
|
server: name,
|
|
175
|
-
port:
|
|
301
|
+
port: state.port,
|
|
176
302
|
current,
|
|
177
303
|
total,
|
|
178
304
|
});
|
|
305
|
+
const descendantPids = collectDescendantPids(state.existingProcess);
|
|
179
306
|
await pm2Delete(processName);
|
|
307
|
+
killSurvivorPids(descendantPids);
|
|
308
|
+
const cmd = buildSupergatewayCmdForServer({
|
|
309
|
+
...server,
|
|
310
|
+
internalPort: state.port,
|
|
311
|
+
resourceLimits,
|
|
312
|
+
}, supergatewayBin);
|
|
313
|
+
const envWithMarker = {
|
|
314
|
+
...server.env,
|
|
315
|
+
[MCP_COMPOSE_MARKER]: name,
|
|
316
|
+
};
|
|
180
317
|
const startOptions = {
|
|
181
318
|
name: processName,
|
|
182
319
|
script: cmd.script,
|
|
183
320
|
args: cmd.args,
|
|
321
|
+
interpreter: 'none',
|
|
184
322
|
env: envWithMarker,
|
|
185
323
|
autorestart: true,
|
|
186
324
|
max_restarts: resourceLimits.maxRestarts ?? 10,
|
|
187
325
|
restart_delay: resourceLimits.restartDelay ?? 1000,
|
|
188
326
|
};
|
|
189
|
-
// Add memory limit if specified
|
|
190
327
|
if (resourceLimits.maxMemory !== undefined) {
|
|
191
328
|
const maxMemory = parseMemoryLimit(resourceLimits.maxMemory);
|
|
192
329
|
if (maxMemory) {
|
|
@@ -197,11 +334,11 @@ export function startServers(servers, prefix, onProgress) {
|
|
|
197
334
|
onProgress?.({
|
|
198
335
|
type: isRecreate ? 'recreated' : 'started',
|
|
199
336
|
server: name,
|
|
200
|
-
port:
|
|
337
|
+
port: state.port,
|
|
201
338
|
current,
|
|
202
339
|
total,
|
|
203
340
|
});
|
|
204
|
-
results.push({ name, processName, port:
|
|
341
|
+
results.push({ name, processName, port: state.port });
|
|
205
342
|
}
|
|
206
343
|
return results;
|
|
207
344
|
});
|
|
@@ -212,13 +349,17 @@ export function stopServers(serverNames, prefix, onProgress) {
|
|
|
212
349
|
let current = 0;
|
|
213
350
|
for (const name of serverNames) {
|
|
214
351
|
current++;
|
|
352
|
+
const processName = getProcessName(name, prefix);
|
|
215
353
|
onProgress?.({
|
|
216
354
|
type: 'stopping',
|
|
217
355
|
server: name,
|
|
218
356
|
current,
|
|
219
357
|
total,
|
|
220
358
|
});
|
|
221
|
-
await
|
|
359
|
+
const proc = await getRunningProcess(processName);
|
|
360
|
+
const descendantPids = collectDescendantPids(proc);
|
|
361
|
+
await pm2Delete(processName);
|
|
362
|
+
killSurvivorPids(descendantPids);
|
|
222
363
|
onProgress?.({
|
|
223
364
|
type: 'stopped',
|
|
224
365
|
server: name,
|
|
@@ -232,12 +373,43 @@ export function stopAllManagedServers() {
|
|
|
232
373
|
return withPm2(async () => {
|
|
233
374
|
const list = await pm2List();
|
|
234
375
|
const managedProcesses = list.filter(isManagedProcess);
|
|
376
|
+
// Collect all descendant PIDs before deleting
|
|
377
|
+
const allDescendantPids = managedProcesses.flatMap(collectDescendantPids);
|
|
235
378
|
for (const proc of managedProcesses) {
|
|
236
379
|
await pm2Delete(proc.name);
|
|
237
380
|
}
|
|
381
|
+
killSurvivorPids(allDescendantPids);
|
|
238
382
|
return managedProcesses.length;
|
|
239
383
|
});
|
|
240
384
|
}
|
|
385
|
+
/**
|
|
386
|
+
* Stop managed processes that are not in the given server list.
|
|
387
|
+
* Returns the names of stopped orphaned processes.
|
|
388
|
+
*/
|
|
389
|
+
export function stopOrphanedServers(activeServerNames, prefix, onProgress) {
|
|
390
|
+
return withPm2(async () => {
|
|
391
|
+
const list = await pm2List();
|
|
392
|
+
const managedProcesses = list.filter(isManagedProcess);
|
|
393
|
+
const activeProcessNames = new Set(activeServerNames.map((name) => getProcessName(name, prefix)));
|
|
394
|
+
const orphaned = [];
|
|
395
|
+
for (const proc of managedProcesses) {
|
|
396
|
+
if (!activeProcessNames.has(proc.name)) {
|
|
397
|
+
const serverName = getServerNameFromProcess(proc);
|
|
398
|
+
onProgress?.({
|
|
399
|
+
type: 'stopping',
|
|
400
|
+
server: serverName,
|
|
401
|
+
});
|
|
402
|
+
await pm2Delete(proc.name);
|
|
403
|
+
onProgress?.({
|
|
404
|
+
type: 'stopped',
|
|
405
|
+
server: serverName,
|
|
406
|
+
});
|
|
407
|
+
orphaned.push(serverName);
|
|
408
|
+
}
|
|
409
|
+
}
|
|
410
|
+
return orphaned;
|
|
411
|
+
});
|
|
412
|
+
}
|
|
241
413
|
export function restartServers(serverNames, prefix) {
|
|
242
414
|
return withPm2(async () => {
|
|
243
415
|
for (const name of serverNames) {
|
|
@@ -260,14 +432,17 @@ export function getStatus() {
|
|
|
260
432
|
}));
|
|
261
433
|
});
|
|
262
434
|
}
|
|
263
|
-
export function streamLogs(serverName, prefix,
|
|
435
|
+
export function streamLogs(serverName, prefix, options) {
|
|
264
436
|
const args = ['pm2', 'logs'];
|
|
265
437
|
if (serverName && prefix) {
|
|
266
438
|
args.push(getProcessName(serverName, prefix));
|
|
267
439
|
}
|
|
268
|
-
if (!follow) {
|
|
440
|
+
if (!options?.follow) {
|
|
269
441
|
args.push('--nostream');
|
|
270
442
|
}
|
|
443
|
+
if (options?.err) {
|
|
444
|
+
args.push('--err');
|
|
445
|
+
}
|
|
271
446
|
return spawn('npx', args, { stdio: 'inherit' });
|
|
272
447
|
}
|
|
273
448
|
//# sourceMappingURL=pm2.js.map
|
package/dist/src/pm2.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pm2.js","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pm2.js","sourceRoot":"","sources":["../../src/pm2.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAC;AAEtB,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAc9C,wEAAwE;AACxE,MAAM,kBAAkB,GAAG,iBAAiB,CAAC;AAY7C;;GAEG;AACH,SAAS,gBAAgB,CAAC,KAAsB;IAC9C,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE5C,MAAM,KAAK,GAAG,kBAAkB,CAAC;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAElC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAE5C,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,IAAI,CAAC;QAC9B,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;QACrC,KAAK,GAAG,CAAC,CAAC,OAAO,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;QAC5C,OAAO,CAAC,CAAC,OAAO,KAAK,CAAC;IACxB,CAAC;AACH,CAAC;AAED,gGAAgG;AAChG,iDAAiD;AAEjD,SAAS,UAAU;IACjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,GAAG,CAAC,OAAO,CAAC,CAAC,GAAiB,EAAE,EAAE;YAChC,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,OAAqB;IACrC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,GAAiB,EAAE,EAAE;YACxC,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,EAAE,CAAC;QACjB,CAAC,CAAqC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,IAAY;IAC7B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,GAAiB,EAAE,EAAE;YACtC,sDAAsD;YACtD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC9C,MAAM,CAAC,GAAG,CAAC,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAqC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,OAAO;IACd,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAiB,EAAE,IAA2B,EAAE,EAAE;YAC3D,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC3B,CAAC,CAAqD,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,GAAiB,EAAE,EAAE;YACvC,IAAI,GAAG;gBAAE,MAAM,CAAC,GAAG,CAAC,CAAC;;gBAChB,OAAO,EAAE,CAAC;QACjB,CAAC,CAAqC,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,OAAO,CAAI,EAAoB;IAC5C,MAAM,UAAU,EAAE,CAAC;IACnB,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;YAAS,CAAC;QACT,GAAG,CAAC,UAAU,EAAE,CAAC;IACnB,CAAC;AACH,CAAC;AAED,SAAS,cAAc,CAAC,UAAkB,EAAE,MAAc;IACxD,OAAO,GAAG,MAAM,GAAG,UAAU,EAAE,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,iBAAiB,CAAC,WAAmB;IAClD,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,CAAC;IAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,CAAC;AAC1D,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,OAA2B;IACzD,MAAM,MAAM,GAAG,OAAO,CAAC,OAAuC,CAAC;IAC/D,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAEzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,SAAS,KAAK,CAAC,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IAElE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACpC,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAEvC,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACnC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC3B,OAA2B,EAC3B,MAAc,EACd,IAAc,EACd,GAA2B;IAE3B,MAAM,MAAM,GAAG,OAAO,CAAC,OAAuC,CAAC;IAC/D,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAE1B,6BAA6B;IAC7B,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE7C,sEAAsE;IACtE,MAAM,aAAa,GAAG,MAAM,CAAC,YAAY,IAAI,EAAE,CAAC;IAChD,IAAI,aAAa,KAAK,MAAM,IAAI,QAAQ,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QAC7E,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IACxC,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;IACtC,IAAI,WAAW,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAC;IAC/C,CAAC;IAED,6EAA6E;IAC7E,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC;IACpC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,IAAI,GAAG,KAAK,kBAAkB;YAAE,SAAS;QACzC,IAAI,UAAU,CAAC,GAAG,CAAC,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;IAC9C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAS,gBAAgB,CAAC,CAAqB;IAC7C,MAAM,GAAG,GAAG,CAAC,CAAC,OAAuC,CAAC;IACtD,OAAO,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,KAAK,SAAS,CAAC;AAC/E,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,CAAmE;IACnG,OAAO,CAAC,CAAC,OAAO,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC;AACjD,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,GAAW;IACpC,MAAM,WAAW,GAAa,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE;YACjD,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;SACpC,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,CAAC,MAAM;YAAE,OAAO,WAAW,CAAC;QAEhC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACtC,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC3B,WAAW,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,4CAA4C;IAC9C,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED;;;GAGG;AACH,SAAS,qBAAqB,CAAC,IAA+B;IAC5D,IAAI,CAAC,IAAI,EAAE,GAAG;QAAE,OAAO,EAAE,CAAC;IAC1B,OAAO,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAc;IACtC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,OAA2B,EAC3B,MAAc,EACd,QAAgB,EAChB,UAA6B;IAE7B,OAAO,OAAO,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;QAUjD,MAAM,YAAY,GAAkB,EAAE,CAAC;QAEvC,KAAK,MAAM,WAAW,IAAI,OAAO,EAAE,CAAC;YAClC,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE,GAAG,WAAW,CAAC;YACxD,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACjD,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAE7D,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,YAAY,GAAG,sBAAsB,CAAC,eAAe,CAAC,CAAC;gBAE7D,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;oBAC1B,uEAAuE;oBACvE,MAAM,gBAAgB,GAAG,6BAA6B,CAAC;wBACrD,GAAG,MAAM;wBACT,YAAY,EAAE,YAAY;wBAC1B,cAAc;qBACf,EAAE,eAAe,CAAC,CAAC;oBACpB,MAAM,aAAa,GAAG;wBACpB,GAAG,MAAM,CAAC,GAAG;wBACb,CAAC,kBAAkB,CAAC,EAAE,IAAI;qBAC3B,CAAC;oBAEF,IAAI,oBAAoB,CAAC,eAAe,EAAE,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,IAAI,EAAE,aAAa,CAAC,EAAE,CAAC;wBACzG,YAAY,CAAC,IAAI,CAAC;4BAChB,MAAM,EAAE,WAAW;4BACnB,eAAe;4BACf,QAAQ,EAAE,IAAI;4BACd,IAAI,EAAE,YAAY;yBACnB,CAAC,CAAC;wBACH,SAAS;oBACX,CAAC;gBACH,CAAC;YACH,CAAC;YAED,YAAY,CAAC,IAAI,CAAC;gBAChB,MAAM,EAAE,WAAW;gBACnB,eAAe;gBACf,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE,CAAC,EAAE,+BAA+B;aACzC,CAAC,CAAC;QACL,CAAC;QAED,kEAAkE;QAClE,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAC1D,CAAC;QACF,IAAI,QAAQ,GAAG,QAAQ,CAAC;QAExB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,QAAQ;gBAAE,SAAS;YAE7B,sEAAsE;YACtE,OAAO,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAM,eAAe,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;gBACrE,QAAQ,EAAE,CAAC;gBACX,IAAI,QAAQ,GAAG,KAAK,EAAE,CAAC;oBACrB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;gBAC9C,CAAC;YACH,CAAC;YAED,IAAI,QAAQ,KAAK,KAAK,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;gBAC3C,UAAU,EAAE,CAAC;oBACX,IAAI,EAAE,cAAc;oBACpB,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI;oBACzB,YAAY,EAAE,KAAK,CAAC,MAAM,CAAC,YAAY;oBACvC,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAC;YACL,CAAC;YAED,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;YACtB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,QAAQ,EAAE,CAAC;QACb,CAAC;QAED,yBAAyB;QACzB,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,OAAO,EAAE,CAAC;YACV,MAAM,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;YACzD,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAEjD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACnB,UAAU,EAAE,CAAC;oBACX,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,IAAI;oBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,OAAO;oBACP,KAAK;iBACN,CAAC,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;gBACtD,SAAS;YACX,CAAC;YAED,MAAM,UAAU,GAAG,KAAK,CAAC,eAAe,KAAK,IAAI,CAAC;YAElD,UAAU,EAAE,CAAC;gBACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU;gBAC5C,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO;gBACP,KAAK;aACN,CAAC,CAAC;YAEH,MAAM,cAAc,GAAG,qBAAqB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;YACpE,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;YAC7B,gBAAgB,CAAC,cAAc,CAAC,CAAC;YAEjC,MAAM,GAAG,GAAG,6BAA6B,CAAC;gBACxC,GAAG,MAAM;gBACT,YAAY,EAAE,KAAK,CAAC,IAAI;gBACxB,cAAc;aACf,EAAE,eAAe,CAAC,CAAC;YAEpB,MAAM,aAAa,GAAG;gBACpB,GAAG,MAAM,CAAC,GAAG;gBACb,CAAC,kBAAkB,CAAC,EAAE,IAAI;aAC3B,CAAC;YAEF,MAAM,YAAY,GAAiB;gBACjC,IAAI,EAAE,WAAW;gBACjB,MAAM,EAAE,GAAG,CAAC,MAAM;gBAClB,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,WAAW,EAAE,MAAM;gBACnB,GAAG,EAAE,aAAa;gBAClB,WAAW,EAAE,IAAI;gBACjB,YAAY,EAAE,cAAc,CAAC,WAAW,IAAI,EAAE;gBAC9C,aAAa,EAAE,cAAc,CAAC,YAAY,IAAI,IAAI;aACnD,CAAC;YAEF,IAAI,cAAc,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC3C,MAAM,SAAS,GAAG,gBAAgB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBAC7D,IAAI,SAAS,EAAE,CAAC;oBACd,YAAY,CAAC,kBAAkB,GAAG,SAAS,CAAC;gBAC9C,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,CAAC,YAAY,CAAC,CAAC;YAE7B,UAAU,EAAE,CAAC;gBACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;gBAC1C,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,OAAO;gBACP,KAAK;aACN,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,WAAW,CACzB,WAAqB,EACrB,MAAc,EACd,UAA6B;IAE7B,OAAO,OAAO,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;QACjC,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,OAAO,EAAE,CAAC;YACV,MAAM,WAAW,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAEjD,UAAU,EAAE,CAAC;gBACX,IAAI,EAAE,UAAU;gBAChB,MAAM,EAAE,IAAI;gBACZ,OAAO;gBACP,KAAK;aACN,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAClD,MAAM,cAAc,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;YACnD,MAAM,SAAS,CAAC,WAAW,CAAC,CAAC;YAC7B,gBAAgB,CAAC,cAAc,CAAC,CAAC;YAEjC,UAAU,EAAE,CAAC;gBACX,IAAI,EAAE,SAAS;gBACf,MAAM,EAAE,IAAI;gBACZ,OAAO;gBACP,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,OAAO,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,CAAC;QAC7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEvD,8CAA8C;QAC9C,MAAM,iBAAiB,GAAG,gBAAgB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAE1E,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;YACpC,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7B,CAAC;QAED,gBAAgB,CAAC,iBAAiB,CAAC,CAAC;QAEpC,OAAO,gBAAgB,CAAC,MAAM,CAAC;IACjC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,iBAA2B,EAC3B,MAAc,EACd,UAA6B;IAE7B,OAAO,OAAO,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,CAAC;QAC7B,MAAM,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEvD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAChC,iBAAiB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAC9D,CAAC;QAEF,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,IAAI,IAAI,gBAAgB,EAAE,CAAC;YACpC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACvC,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAClD,UAAU,EAAE,CAAC;oBACX,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,UAAU;iBACnB,CAAC,CAAC;gBACH,MAAM,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,UAAU,EAAE,CAAC;oBACX,IAAI,EAAE,SAAS;oBACf,MAAM,EAAE,UAAU;iBACnB,CAAC,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,WAAqB,EAAE,MAAc;IAClE,OAAO,OAAO,CAAC,KAAK,IAAI,EAAE;QACxB,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,UAAU,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,KAAK,IAAI,EAAE;QACxB,MAAM,IAAI,GAAG,MAAM,OAAO,EAAE,CAAC;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC/C,IAAI,EAAE,wBAAwB,CAAC,CAAC,CAAC;YACjC,WAAW,EAAE,CAAC,CAAC,IAAI;YACnB,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,IAAI,SAAS;YACrC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS;YAC3B,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC;YACrC,MAAM,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM;YACvB,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG;SAClB,CAAC,CAAC,CAAC;IACN,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,UAAU,CACxB,UAAmB,EACnB,MAAe,EACf,OAAqE;IAErE,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC7B,IAAI,UAAU,IAAI,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC;IAChD,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC1B,CAAC;IACD,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
1
|
import type { StdioServer, SupergatewayCommand } from './types.js';
|
|
2
|
-
|
|
2
|
+
/**
|
|
3
|
+
* Ensure supergateway is installed and return the resolved binary path.
|
|
4
|
+
* Uses npx to install if needed, then resolves the real path so pm2 can
|
|
5
|
+
* launch the binary directly without the npx wrapper process.
|
|
6
|
+
*/
|
|
7
|
+
export declare function resolveSupergatewayBin(): string;
|
|
8
|
+
export declare function buildSupergatewayCmdForServer(server: StdioServer, supergatewayBin: string): SupergatewayCommand;
|
|
3
9
|
//# sourceMappingURL=supergateway.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supergateway.d.ts","sourceRoot":"","sources":["../../src/supergateway.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"supergateway.d.ts","sourceRoot":"","sources":["../../src/supergateway.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEnE;;;;GAIG;AACH,wBAAgB,sBAAsB,IAAI,MAAM,CAY/C;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,GAAG,mBAAmB,CAmB/G"}
|
package/dist/src/supergateway.js
CHANGED
|
@@ -1,12 +1,27 @@
|
|
|
1
|
+
import { execSync } from 'child_process';
|
|
1
2
|
import { expandPath } from './config.js';
|
|
2
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Ensure supergateway is installed and return the resolved binary path.
|
|
5
|
+
* Uses npx to install if needed, then resolves the real path so pm2 can
|
|
6
|
+
* launch the binary directly without the npx wrapper process.
|
|
7
|
+
*/
|
|
8
|
+
export function resolveSupergatewayBin() {
|
|
9
|
+
const bin = execSync('npx -y -p supergateway@latest -c "which supergateway"', {
|
|
10
|
+
encoding: 'utf-8',
|
|
11
|
+
timeout: 60_000,
|
|
12
|
+
stdio: ['ignore', 'pipe', 'ignore'],
|
|
13
|
+
}).trim();
|
|
14
|
+
if (!bin) {
|
|
15
|
+
throw new Error('Failed to resolve supergateway binary path');
|
|
16
|
+
}
|
|
17
|
+
return bin;
|
|
18
|
+
}
|
|
19
|
+
export function buildSupergatewayCmdForServer(server, supergatewayBin) {
|
|
3
20
|
const { command, args, internalPort, logLevel } = server;
|
|
4
21
|
const stdioCmd = buildStdioCommand(command, args);
|
|
5
22
|
return {
|
|
6
|
-
script:
|
|
23
|
+
script: supergatewayBin,
|
|
7
24
|
args: [
|
|
8
|
-
'-y',
|
|
9
|
-
'supergateway@latest',
|
|
10
25
|
'--stdio',
|
|
11
26
|
stdioCmd,
|
|
12
27
|
'--outputTransport',
|
|
@@ -15,6 +30,7 @@ export function buildSupergatewayCmdForServer(server) {
|
|
|
15
30
|
String(internalPort),
|
|
16
31
|
'--logLevel',
|
|
17
32
|
logLevel,
|
|
33
|
+
'--stateful',
|
|
18
34
|
],
|
|
19
35
|
};
|
|
20
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"supergateway.js","sourceRoot":"","sources":["../../src/supergateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC,MAAM,UAAU,6BAA6B,CAAC,MAAmB;
|
|
1
|
+
{"version":3,"file":"supergateway.js","sourceRoot":"","sources":["../../src/supergateway.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGzC;;;;GAIG;AACH,MAAM,UAAU,sBAAsB;IACpC,MAAM,GAAG,GAAG,QAAQ,CAAC,uDAAuD,EAAE;QAC5E,QAAQ,EAAE,OAAO;QACjB,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;KACpC,CAAC,CAAC,IAAI,EAAE,CAAC;IAEV,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAChE,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAAmB,EAAE,eAAuB;IACxF,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAEzD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAElD,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,IAAI,EAAE;YACJ,SAAS;YACT,QAAQ;YACR,mBAAmB;YACnB,gBAAgB;YAChB,QAAQ;YACR,MAAM,CAAC,YAAY,CAAC;YACpB,YAAY;YACZ,QAAQ;YACR,YAAY;SACb;KACF,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe,EAAE,IAAc;IACxD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACpC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,GAAG,YAAY,CAAC,CAAC;IAE5C,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;QAC/C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mcp-compose",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.7",
|
|
4
4
|
"description": "MCP server orchestration tool - manage multiple MCP servers with a single gateway",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -45,6 +45,7 @@
|
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
47
|
"commander": "^12.1.0",
|
|
48
|
+
"mcp-compose": "^0.0.5",
|
|
48
49
|
"pm2": "^5.4.3",
|
|
49
50
|
"string-env-interpolation": "^1.0.1",
|
|
50
51
|
"strip-json-comments": "^5.0.3"
|