@xemahq/xema 0.2.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +176 -175
- package/README.md +97 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +11 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/biome.d.ts.map +1 -1
- package/dist/commands/biome.js +83 -6
- package/dist/commands/biome.js.map +1 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +14 -8
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/doctor.d.ts +2 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +48 -1
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +13 -1
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/status.js +5 -1
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/up.d.ts.map +1 -1
- package/dist/commands/up.js +11 -0
- package/dist/commands/up.js.map +1 -1
- package/dist/runtime/config/schema.d.ts +27 -0
- package/dist/runtime/config/schema.d.ts.map +1 -1
- package/dist/runtime/config/schema.js +2 -0
- package/dist/runtime/config/schema.js.map +1 -1
- package/dist/runtime/launch.d.ts.map +1 -1
- package/dist/runtime/launch.js +22 -2
- package/dist/runtime/launch.js.map +1 -1
- package/dist/runtime/roster.d.ts +10 -2
- package/dist/runtime/roster.d.ts.map +1 -1
- package/dist/runtime/roster.js +50 -1
- package/dist/runtime/roster.js.map +1 -1
- package/dist/runtime/runner/native-runner.d.ts.map +1 -1
- package/dist/runtime/runner/native-runner.js +6 -5
- package/dist/runtime/runner/native-runner.js.map +1 -1
- package/dist/runtime/sources/credentials.d.ts +11 -0
- package/dist/runtime/sources/credentials.d.ts.map +1 -0
- package/dist/runtime/sources/credentials.js +68 -0
- package/dist/runtime/sources/credentials.js.map +1 -0
- package/dist/runtime/sources/kinds/distribution.d.ts +5 -0
- package/dist/runtime/sources/kinds/distribution.d.ts.map +1 -0
- package/dist/runtime/sources/kinds/distribution.js +33 -0
- package/dist/runtime/sources/kinds/distribution.js.map +1 -0
- package/dist/runtime/sources/kinds/git.d.ts +5 -0
- package/dist/runtime/sources/kinds/git.d.ts.map +1 -0
- package/dist/runtime/sources/kinds/git.js +70 -0
- package/dist/runtime/sources/kinds/git.js.map +1 -0
- package/dist/runtime/sources/kinds/workspace.d.ts +5 -0
- package/dist/runtime/sources/kinds/workspace.d.ts.map +1 -0
- package/dist/runtime/sources/kinds/workspace.js +24 -0
- package/dist/runtime/sources/kinds/workspace.js.map +1 -0
- package/dist/runtime/sources/manifest-walk.d.ts +22 -0
- package/dist/runtime/sources/manifest-walk.d.ts.map +1 -0
- package/dist/runtime/sources/manifest-walk.js +87 -0
- package/dist/runtime/sources/manifest-walk.js.map +1 -0
- package/dist/runtime/sources/resolver.d.ts +15 -0
- package/dist/runtime/sources/resolver.d.ts.map +1 -0
- package/dist/runtime/sources/resolver.js +75 -0
- package/dist/runtime/sources/resolver.js.map +1 -0
- package/dist/runtime/sources/schema.d.ts +101 -0
- package/dist/runtime/sources/schema.d.ts.map +1 -0
- package/dist/runtime/sources/schema.js +71 -0
- package/dist/runtime/sources/schema.js.map +1 -0
- package/dist/runtime/sources/types.d.ts +10 -0
- package/dist/runtime/sources/types.d.ts.map +1 -0
- package/dist/runtime/sources/types.js +3 -0
- package/dist/runtime/sources/types.js.map +1 -0
- package/dist/runtime/waves.d.ts +1 -0
- package/dist/runtime/waves.d.ts.map +1 -1
- package/dist/runtime/waves.js +19 -0
- package/dist/runtime/waves.js.map +1 -1
- package/examples/06-biome-sources.yaml +51 -0
- package/package.json +5 -2
- package/dist/dev/dev-orchestrator.d.ts +0 -7
- package/dist/dev/dev-orchestrator.d.ts.map +0 -1
- package/dist/dev/dev-orchestrator.js +0 -367
- package/dist/dev/dev-orchestrator.js.map +0 -1
|
@@ -1,367 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.runDevOrchestrator = runDevOrchestrator;
|
|
4
|
-
const node_fs_1 = require("node:fs");
|
|
5
|
-
const node_os_1 = require("node:os");
|
|
6
|
-
const node_path_1 = require("node:path");
|
|
7
|
-
const service_registry_nest_1 = require("@xemahq/service-registry-nest");
|
|
8
|
-
const env_defaults_1 = require("./env-defaults");
|
|
9
|
-
const forked_worker_1 = require("./forked-worker");
|
|
10
|
-
const infra_preflight_1 = require("./infra-preflight");
|
|
11
|
-
const exit_codes_1 = require("../lib/exit-codes");
|
|
12
|
-
const DEFAULT_KERNEL_PORT = env_defaults_1.PORT_MAP['xema-kernel-server'] ?? 7331;
|
|
13
|
-
const DEFAULT_ROUTER_PORT = env_defaults_1.PORT_MAP['xema-capability-router'] ?? 7332;
|
|
14
|
-
const FORKED_WORKER_READINESS_TIMEOUT_MS = 45_000;
|
|
15
|
-
const FORKED_WORKER_EXEMPT = new Set([
|
|
16
|
-
'audit-log-api',
|
|
17
|
-
'authorization-api',
|
|
18
|
-
'capability-registry-api',
|
|
19
|
-
'user-hub-api',
|
|
20
|
-
'workspace-storage-pool-api',
|
|
21
|
-
'workspace-git-api',
|
|
22
|
-
'document-render-api',
|
|
23
|
-
'memory-api',
|
|
24
|
-
'skill-registry-api',
|
|
25
|
-
'project-registry-api',
|
|
26
|
-
'knowledge-base-api',
|
|
27
|
-
'activity-feed-api',
|
|
28
|
-
'xema-store-api',
|
|
29
|
-
'llm-registry-api',
|
|
30
|
-
'agent-session-api',
|
|
31
|
-
'artifact-store-api',
|
|
32
|
-
'workflow-engine-api',
|
|
33
|
-
'backlog-api',
|
|
34
|
-
'mcp-gateway-api',
|
|
35
|
-
'connector-gateway-api',
|
|
36
|
-
'biome-host-api',
|
|
37
|
-
'workspace-orchestrator-api',
|
|
38
|
-
'workload-runtime-api',
|
|
39
|
-
]);
|
|
40
|
-
async function runDevOrchestrator(opts = {}) {
|
|
41
|
-
const kernelPort = opts.kernelPort ??
|
|
42
|
-
Number.parseInt(process.env.XEMA_DEV_PORT_KERNEL ?? String(DEFAULT_KERNEL_PORT), 10);
|
|
43
|
-
const routerPort = opts.routerPort ??
|
|
44
|
-
Number.parseInt(process.env.XEMA_DEV_PORT_ROUTER ?? String(DEFAULT_ROUTER_PORT), 10);
|
|
45
|
-
if (!Number.isFinite(kernelPort) || !Number.isFinite(routerPort)) {
|
|
46
|
-
(0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.ConfigurationError, `xema dev: invalid port numbers (kernel=${kernelPort}, router=${routerPort}).`);
|
|
47
|
-
}
|
|
48
|
-
const xemaHome = (0, node_path_1.join)((0, node_os_1.homedir)(), '.xema', 'dev');
|
|
49
|
-
if (!(0, node_fs_1.existsSync)(xemaHome)) {
|
|
50
|
-
(0, node_fs_1.mkdirSync)(xemaHome, { recursive: true });
|
|
51
|
-
}
|
|
52
|
-
const kernelStatePath = (0, node_path_1.join)(xemaHome, 'kernel-state.sqlite');
|
|
53
|
-
process.env[service_registry_nest_1.SERVICE_REGISTRY_ADAPTER_ENV_VAR] =
|
|
54
|
-
service_registry_nest_1.ServiceRegistryAdapterKind.InProcess;
|
|
55
|
-
process.env.XEMA_KERNEL_STATE_FILE = kernelStatePath;
|
|
56
|
-
process.env.XEMA_KERNEL_STATE_PROFILE = 'dev';
|
|
57
|
-
const appliedDefaults = (0, env_defaults_1.applyDevEnvDefaults)();
|
|
58
|
-
console.log('xema dev — single-binary composition (Phase J.3 forked-worker spawn loop)');
|
|
59
|
-
console.log('-'.repeat(60));
|
|
60
|
-
console.log(` KernelState : ${kernelStatePath}`);
|
|
61
|
-
console.log(` Registry : ${service_registry_nest_1.ServiceRegistryAdapterKind.InProcess}`);
|
|
62
|
-
console.log(` Env defaults : ${appliedDefaults.length} applied (user values preserved)`);
|
|
63
|
-
console.log('');
|
|
64
|
-
if (opts.skipPreflight !== true) {
|
|
65
|
-
const report = await (0, infra_preflight_1.runInfraPreflight)();
|
|
66
|
-
if (!report.allReachable) {
|
|
67
|
-
const message = (0, infra_preflight_1.formatPreflightFailure)(report);
|
|
68
|
-
console.error(message);
|
|
69
|
-
(0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.MissingDependency);
|
|
70
|
-
}
|
|
71
|
-
console.log(` Pre-flight : OK (${report.results.length} infra dependencies reachable)`);
|
|
72
|
-
console.log('');
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
console.log(' Pre-flight : SKIPPED (--skip-preflight)');
|
|
76
|
-
console.log('');
|
|
77
|
-
}
|
|
78
|
-
const booted = [];
|
|
79
|
-
const forked = [];
|
|
80
|
-
const skippedFlat = [];
|
|
81
|
-
const shutdown = async (signal) => {
|
|
82
|
-
console.log('');
|
|
83
|
-
console.log(`xema dev — received ${signal}; shutting down...`);
|
|
84
|
-
for (const child of [...forked].reverse()) {
|
|
85
|
-
try {
|
|
86
|
-
await child.close();
|
|
87
|
-
console.log(` closed ${child.name} (pid ${String(child.pid)})`);
|
|
88
|
-
}
|
|
89
|
-
catch (err) {
|
|
90
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
91
|
-
console.error(` failed to close ${child.name}: ${message}`);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
for (const svc of [...booted].reverse()) {
|
|
95
|
-
try {
|
|
96
|
-
await svc.close();
|
|
97
|
-
console.log(` closed ${svc.name}`);
|
|
98
|
-
}
|
|
99
|
-
catch (err) {
|
|
100
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
101
|
-
console.error(` failed to close ${svc.name}: ${message}`);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
process.exit(exit_codes_1.XemaCliExitCode.Ok);
|
|
105
|
-
};
|
|
106
|
-
process.on('SIGINT', (sig) => {
|
|
107
|
-
void shutdown(sig);
|
|
108
|
-
});
|
|
109
|
-
process.on('SIGTERM', (sig) => {
|
|
110
|
-
void shutdown(sig);
|
|
111
|
-
});
|
|
112
|
-
const TOTAL_CANDIDATES = 29;
|
|
113
|
-
const candidates = [
|
|
114
|
-
{
|
|
115
|
-
name: 'xema-kernel-server',
|
|
116
|
-
port: kernelPort,
|
|
117
|
-
siblingAppDir: '../../../xema-kernel-server',
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
name: 'xema-capability-router',
|
|
121
|
-
port: routerPort,
|
|
122
|
-
siblingAppDir: '../../../xema-capability-router',
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
name: 'catalog-api',
|
|
126
|
-
port: portFor('catalog-api'),
|
|
127
|
-
siblingAppDir: '../../../catalog-api',
|
|
128
|
-
},
|
|
129
|
-
{
|
|
130
|
-
name: 'object-registry-api',
|
|
131
|
-
port: portFor('object-registry-api'),
|
|
132
|
-
siblingAppDir: '../../../object-registry-api',
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
name: 'public-gateway-api',
|
|
136
|
-
port: portFor('public-gateway-api'),
|
|
137
|
-
siblingAppDir: '../../../public-gateway-api',
|
|
138
|
-
},
|
|
139
|
-
{
|
|
140
|
-
name: 'audit-log-api',
|
|
141
|
-
port: portFor('audit-log-api'),
|
|
142
|
-
siblingAppDir: '../../../audit-log-api',
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
name: 'authorization-api',
|
|
146
|
-
port: portFor('authorization-api'),
|
|
147
|
-
siblingAppDir: '../../../authorization-api',
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
name: 'capability-registry-api',
|
|
151
|
-
port: portFor('capability-registry-api'),
|
|
152
|
-
siblingAppDir: '../../../capability-registry-api',
|
|
153
|
-
},
|
|
154
|
-
{
|
|
155
|
-
name: 'user-hub-api',
|
|
156
|
-
port: portFor('user-hub-api'),
|
|
157
|
-
siblingAppDir: '../../../user-hub-api',
|
|
158
|
-
},
|
|
159
|
-
{
|
|
160
|
-
name: 'workspace-storage-pool-api',
|
|
161
|
-
port: portFor('workspace-storage-pool-api'),
|
|
162
|
-
siblingAppDir: '../../../workspace-storage-pool-api',
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
name: 'workspace-git-api',
|
|
166
|
-
port: portFor('workspace-git-api'),
|
|
167
|
-
siblingAppDir: '../../../workspace-git-api',
|
|
168
|
-
},
|
|
169
|
-
{
|
|
170
|
-
name: 'document-render-api',
|
|
171
|
-
port: portFor('document-render-api'),
|
|
172
|
-
siblingAppDir: '../../../document-render-api',
|
|
173
|
-
},
|
|
174
|
-
{
|
|
175
|
-
name: 'memory-api',
|
|
176
|
-
port: portFor('memory-api'),
|
|
177
|
-
siblingAppDir: '../../../memory-api',
|
|
178
|
-
},
|
|
179
|
-
{
|
|
180
|
-
name: 'skill-registry-api',
|
|
181
|
-
port: portFor('skill-registry-api'),
|
|
182
|
-
siblingAppDir: '../../../skill-registry-api',
|
|
183
|
-
},
|
|
184
|
-
{
|
|
185
|
-
name: 'project-registry-api',
|
|
186
|
-
port: portFor('project-registry-api'),
|
|
187
|
-
siblingAppDir: '../../../project-registry-api',
|
|
188
|
-
},
|
|
189
|
-
{
|
|
190
|
-
name: 'knowledge-base-api',
|
|
191
|
-
port: portFor('knowledge-base-api'),
|
|
192
|
-
siblingAppDir: '../../../knowledge-base-api',
|
|
193
|
-
},
|
|
194
|
-
{
|
|
195
|
-
name: 'activity-feed-api',
|
|
196
|
-
port: portFor('activity-feed-api'),
|
|
197
|
-
siblingAppDir: '../../../activity-feed-api',
|
|
198
|
-
},
|
|
199
|
-
{
|
|
200
|
-
name: 'xema-store-api',
|
|
201
|
-
port: portFor('xema-store-api'),
|
|
202
|
-
siblingAppDir: '../../../xema-store-api',
|
|
203
|
-
},
|
|
204
|
-
{
|
|
205
|
-
name: 'xema-shell-api',
|
|
206
|
-
port: portFor('xema-shell-api'),
|
|
207
|
-
siblingAppDir: '../../../xema-shell-api',
|
|
208
|
-
},
|
|
209
|
-
{
|
|
210
|
-
name: 'llm-registry-api',
|
|
211
|
-
port: portFor('llm-registry-api'),
|
|
212
|
-
siblingAppDir: '../../../llm-registry-api',
|
|
213
|
-
},
|
|
214
|
-
{
|
|
215
|
-
name: 'agent-session-api',
|
|
216
|
-
port: portFor('agent-session-api'),
|
|
217
|
-
siblingAppDir: '../../../agent-session-api',
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
name: 'artifact-store-api',
|
|
221
|
-
port: portFor('artifact-store-api'),
|
|
222
|
-
siblingAppDir: '../../../artifact-store-api',
|
|
223
|
-
},
|
|
224
|
-
{
|
|
225
|
-
name: 'workflow-engine-api',
|
|
226
|
-
port: portFor('workflow-engine-api'),
|
|
227
|
-
siblingAppDir: '../../../workflow-engine-api',
|
|
228
|
-
},
|
|
229
|
-
{
|
|
230
|
-
name: 'backlog-api',
|
|
231
|
-
port: portFor('backlog-api'),
|
|
232
|
-
siblingAppDir: '../../../backlog-api',
|
|
233
|
-
},
|
|
234
|
-
{
|
|
235
|
-
name: 'mcp-gateway-api',
|
|
236
|
-
port: portFor('mcp-gateway-api'),
|
|
237
|
-
siblingAppDir: '../../../mcp-gateway-api',
|
|
238
|
-
},
|
|
239
|
-
{
|
|
240
|
-
name: 'connector-gateway-api',
|
|
241
|
-
port: portFor('connector-gateway-api'),
|
|
242
|
-
siblingAppDir: '../../../connector-gateway-api',
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
name: 'biome-host-api',
|
|
246
|
-
port: portFor('biome-host-api'),
|
|
247
|
-
siblingAppDir: '../../../biome-host-api',
|
|
248
|
-
},
|
|
249
|
-
{
|
|
250
|
-
name: 'workspace-orchestrator-api',
|
|
251
|
-
port: portFor('workspace-orchestrator-api'),
|
|
252
|
-
siblingAppDir: '../../../workspace-orchestrator-api',
|
|
253
|
-
},
|
|
254
|
-
{
|
|
255
|
-
name: 'workload-runtime-api',
|
|
256
|
-
port: portFor('workload-runtime-api'),
|
|
257
|
-
siblingAppDir: '../../../workload-runtime-api',
|
|
258
|
-
},
|
|
259
|
-
];
|
|
260
|
-
for (const cand of candidates) {
|
|
261
|
-
if (FORKED_WORKER_EXEMPT.has(cand.name)) {
|
|
262
|
-
try {
|
|
263
|
-
const child = await (0, forked_worker_1.spawnForkedWorker)({
|
|
264
|
-
name: cand.name,
|
|
265
|
-
port: cand.port,
|
|
266
|
-
siblingAppDir: cand.siblingAppDir,
|
|
267
|
-
readinessTimeoutMs: FORKED_WORKER_READINESS_TIMEOUT_MS,
|
|
268
|
-
}, __dirname);
|
|
269
|
-
forked.push(child);
|
|
270
|
-
console.log(` forked ${cand.name.padEnd(28, ' ')} ${child.url} (pid ${String(child.pid)})`);
|
|
271
|
-
}
|
|
272
|
-
catch (err) {
|
|
273
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
274
|
-
skippedFlat.push({ name: cand.name, reason: message });
|
|
275
|
-
console.warn(` Skipping ${cand.name}: ${message}`);
|
|
276
|
-
}
|
|
277
|
-
continue;
|
|
278
|
-
}
|
|
279
|
-
try {
|
|
280
|
-
const handle = await bootService(cand);
|
|
281
|
-
booted.push(handle);
|
|
282
|
-
console.log(` booted ${cand.name.padEnd(28, ' ')} ${handle.url}`);
|
|
283
|
-
}
|
|
284
|
-
catch (err) {
|
|
285
|
-
const message = err instanceof Error ? err.message : String(err);
|
|
286
|
-
skippedFlat.push({ name: cand.name, reason: message });
|
|
287
|
-
console.warn(` Skipping ${cand.name}: ${message}`);
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
console.log('');
|
|
291
|
-
console.log('-'.repeat(60));
|
|
292
|
-
const totalBooting = booted.length + forked.length;
|
|
293
|
-
const pendingCount = TOTAL_CANDIDATES - candidates.length;
|
|
294
|
-
console.log(`Booted ${booted.length}/${TOTAL_CANDIDATES} in-process` +
|
|
295
|
-
` + ${forked.length}/${TOTAL_CANDIDATES} forked-worker` +
|
|
296
|
-
` = ${totalBooting}/${TOTAL_CANDIDATES} total` +
|
|
297
|
-
(skippedFlat.length > 0 ? `, skipped ${skippedFlat.length}` : '') +
|
|
298
|
-
`, ${pendingCount} not yet wired.`);
|
|
299
|
-
if (skippedFlat.length > 0) {
|
|
300
|
-
console.log('Skipped this run:');
|
|
301
|
-
for (const s of skippedFlat) {
|
|
302
|
-
console.log(` - ${s.name}: ${s.reason}`);
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
console.log('');
|
|
306
|
-
if (totalBooting === 0) {
|
|
307
|
-
(0, exit_codes_1.exitWith)(exit_codes_1.XemaCliExitCode.GenericError, 'xema dev: no services booted successfully. See skip reasons above.');
|
|
308
|
-
}
|
|
309
|
-
if (booted.length > 0) {
|
|
310
|
-
console.log('In-process services:');
|
|
311
|
-
for (const svc of booted) {
|
|
312
|
-
console.log(` ${svc.name.padEnd(28, ' ')} ${svc.url}`);
|
|
313
|
-
}
|
|
314
|
-
}
|
|
315
|
-
if (forked.length > 0) {
|
|
316
|
-
console.log('Forked-worker services:');
|
|
317
|
-
for (const svc of forked) {
|
|
318
|
-
console.log(` ${svc.name.padEnd(28, ' ')} ${svc.url} (pid ${String(svc.pid)})`);
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
console.log('');
|
|
322
|
-
console.log('Press Ctrl+C to shut down.');
|
|
323
|
-
await new Promise(() => {
|
|
324
|
-
});
|
|
325
|
-
}
|
|
326
|
-
function portFor(serviceName) {
|
|
327
|
-
const port = env_defaults_1.PORT_MAP[serviceName];
|
|
328
|
-
if (port === undefined) {
|
|
329
|
-
throw new Error(`dev-orchestrator: no PORT_MAP entry for "${serviceName}". ` +
|
|
330
|
-
`Add it to env-defaults.ts PORT_MAP before wiring the service.`);
|
|
331
|
-
}
|
|
332
|
-
return port;
|
|
333
|
-
}
|
|
334
|
-
async function bootService(opts) {
|
|
335
|
-
process.env.PORT = String(opts.port);
|
|
336
|
-
process.env.SERVICE_PUBLIC_URL = `http://127.0.0.1:${String(opts.port)}`;
|
|
337
|
-
const siblingDistDir = (0, node_path_1.resolve)(__dirname, opts.siblingAppDir, 'dist');
|
|
338
|
-
const appModulePath = (0, node_path_1.resolve)(siblingDistDir, 'app.module.js');
|
|
339
|
-
const mainModulePath = (0, node_path_1.resolve)(siblingDistDir, 'main.js');
|
|
340
|
-
if (!(0, node_fs_1.existsSync)(appModulePath)) {
|
|
341
|
-
throw new Error(`${opts.name} dist not found at ${appModulePath}. ` +
|
|
342
|
-
`Run \`pnpm --filter ${opts.name} build\` first, or use \`pnpm refresh\`.`);
|
|
343
|
-
}
|
|
344
|
-
void mainModulePath;
|
|
345
|
-
const bundle = requireCommonJs(appModulePath);
|
|
346
|
-
if (typeof bundle.AppModule !== 'function' && typeof bundle.AppModule !== 'object') {
|
|
347
|
-
throw new Error(`${opts.name} dist did not export an \`AppModule\` class ` +
|
|
348
|
-
`from ${appModulePath}.`);
|
|
349
|
-
}
|
|
350
|
-
const nestCore = requireCommonJs(require.resolve('@nestjs/core'));
|
|
351
|
-
const app = await nestCore.NestFactory.create(bundle.AppModule, {
|
|
352
|
-
logger: ['error', 'warn', 'log'],
|
|
353
|
-
abortOnError: false,
|
|
354
|
-
});
|
|
355
|
-
await app.listen(opts.port);
|
|
356
|
-
const url = await app.getUrl();
|
|
357
|
-
return {
|
|
358
|
-
name: opts.name,
|
|
359
|
-
url,
|
|
360
|
-
close: () => app.close(),
|
|
361
|
-
};
|
|
362
|
-
}
|
|
363
|
-
function requireCommonJs(modulePath) {
|
|
364
|
-
const loaded = require(modulePath);
|
|
365
|
-
return loaded;
|
|
366
|
-
}
|
|
367
|
-
//# sourceMappingURL=dev-orchestrator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dev-orchestrator.js","sourceRoot":"","sources":["../../src/dev/dev-orchestrator.ts"],"names":[],"mappings":"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"}
|