@simplysm/sd-cli 11.1.26 → 11.1.27
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/commons.d.ts +3 -1
- package/dist/entry/SdCliProject.js +22 -15
- package/dist/entry/SdCliProject.js.map +1 -1
- package/dist/server-worker.js +25 -7
- package/dist/server-worker.js.map +1 -1
- package/package.json +5 -5
- package/src/commons.ts +1 -1
- package/src/entry/SdCliProject.ts +29 -17
- package/src/server-worker.ts +29 -12
package/dist/commons.d.ts
CHANGED
|
@@ -72,7 +72,9 @@ export interface ISdCliServerPackageConfig {
|
|
|
72
72
|
}
|
|
73
73
|
export interface ISdCliClientPackageConfig {
|
|
74
74
|
type: "client";
|
|
75
|
-
server?: string
|
|
75
|
+
server?: string | {
|
|
76
|
+
port: number;
|
|
77
|
+
};
|
|
76
78
|
publish?: ISdCliLocalDirectoryPublishConfig | ISdCliFtpPublishConfig;
|
|
77
79
|
env?: Record<string, string>;
|
|
78
80
|
configs?: Record<string, any>;
|
|
@@ -4,7 +4,7 @@ import cp from "child_process";
|
|
|
4
4
|
import { fileURLToPath, pathToFileURL } from "url";
|
|
5
5
|
import { SdCliBuildResultUtil } from "../utils/SdCliBuildResultUtil";
|
|
6
6
|
import semver from "semver";
|
|
7
|
-
import { NeverEntryError, StringUtil, Wait } from "@simplysm/sd-core-common";
|
|
7
|
+
import { JsonConvert, NeverEntryError, StringUtil, Wait } from "@simplysm/sd-core-common";
|
|
8
8
|
import { SdStorage } from "@simplysm/sd-storage";
|
|
9
9
|
import { SdCliLocalUpdate } from "./SdCliLocalUpdate";
|
|
10
10
|
import xml2js from "xml2js";
|
|
@@ -61,23 +61,30 @@ export class SdCliProject {
|
|
|
61
61
|
if (pkgConf.type === "server") {
|
|
62
62
|
const pkgName = path.basename(message.req.pkgPath);
|
|
63
63
|
const serverInfo = serverInfoMap.getOrCreate(pkgName, {
|
|
64
|
-
hasChanges:
|
|
64
|
+
hasChanges: true,
|
|
65
65
|
hasClientChanges: false,
|
|
66
66
|
pathProxy: {},
|
|
67
67
|
// changeFilePaths: []
|
|
68
68
|
});
|
|
69
|
-
|
|
69
|
+
const serverPkgConf = projConf.packages[pkgName];
|
|
70
|
+
serverInfo.pkgOrOpt = {
|
|
71
|
+
path: message.req.pkgPath,
|
|
72
|
+
conf: serverPkgConf
|
|
73
|
+
};
|
|
70
74
|
serverInfo.hasChanges = true;
|
|
71
75
|
}
|
|
72
76
|
if (pkgConf.type === "client") {
|
|
73
77
|
const pkgName = path.basename(message.req.pkgPath);
|
|
74
78
|
if (pkgConf.server !== undefined) {
|
|
75
|
-
const serverInfo = serverInfoMap.getOrCreate(pkgConf.server, {
|
|
76
|
-
hasChanges:
|
|
79
|
+
const serverInfo = serverInfoMap.getOrCreate(typeof pkgConf.server === "string" ? pkgConf.server : pkgConf.server.port.toString(), {
|
|
80
|
+
hasChanges: true,
|
|
77
81
|
hasClientChanges: false,
|
|
78
82
|
pathProxy: {},
|
|
79
83
|
// changeFilePaths: []
|
|
80
84
|
});
|
|
85
|
+
if (typeof pkgConf.server !== "string") {
|
|
86
|
+
serverInfo.pkgOrOpt = pkgConf.server;
|
|
87
|
+
}
|
|
81
88
|
serverInfo.pathProxy[pkgName] = path.resolve(message.req.pkgPath, "dist");
|
|
82
89
|
// serverInfo.changeFilePaths.push(...message.result!.affectedFilePaths);
|
|
83
90
|
serverInfo.hasClientChanges = true;
|
|
@@ -85,7 +92,7 @@ export class SdCliProject {
|
|
|
85
92
|
}
|
|
86
93
|
else {
|
|
87
94
|
const serverInfo = serverInfoMap.getOrCreate(pkgName, {
|
|
88
|
-
hasChanges:
|
|
95
|
+
hasChanges: true,
|
|
89
96
|
hasClientChanges: false,
|
|
90
97
|
pathProxy: {},
|
|
91
98
|
// changeFilePaths: []
|
|
@@ -99,12 +106,12 @@ export class SdCliProject {
|
|
|
99
106
|
setTimeout(async () => {
|
|
100
107
|
busyCount--;
|
|
101
108
|
if (busyCount === 0) {
|
|
102
|
-
for (const
|
|
103
|
-
const serverInfo = serverInfoMap.get(
|
|
104
|
-
if (serverInfo.
|
|
109
|
+
for (const serverPkgNameOrPort of serverInfoMap.keys()) {
|
|
110
|
+
const serverInfo = serverInfoMap.get(serverPkgNameOrPort);
|
|
111
|
+
if (serverInfo.pkgOrOpt && serverInfo.hasChanges) {
|
|
105
112
|
logger.debug("서버 재시작...");
|
|
106
113
|
try {
|
|
107
|
-
const restartServerResult = await this._restartServerAsync(serverInfo.
|
|
114
|
+
const restartServerResult = await this._restartServerAsync(serverInfo.pkgOrOpt, serverInfo.worker);
|
|
108
115
|
serverInfo.worker = restartServerResult.worker;
|
|
109
116
|
serverInfo.port = restartServerResult.port;
|
|
110
117
|
serverInfo.hasChanges = false;
|
|
@@ -436,21 +443,21 @@ export class SdCliProject {
|
|
|
436
443
|
static _closeCluster(cluster) {
|
|
437
444
|
cluster.kill("SIGKILL");
|
|
438
445
|
}
|
|
439
|
-
static async _restartServerAsync(
|
|
446
|
+
static async _restartServerAsync(pkgOrOpt, prevServerProcess) {
|
|
440
447
|
const logger = Logger.get(["simplysm", "sd-cli", "SdCliProject", "_restartServerAsync"]);
|
|
441
448
|
if (prevServerProcess) {
|
|
442
449
|
prevServerProcess.kill("SIGKILL");
|
|
443
450
|
}
|
|
444
|
-
const npmConf = (await FsUtil.readJsonAsync(path.resolve(
|
|
451
|
+
const npmConf = "path" in pkgOrOpt ? (await FsUtil.readJsonAsync(path.resolve(pkgOrOpt.path, "package.json"))) : undefined;
|
|
445
452
|
return await new Promise(async (resolve, reject) => {
|
|
446
|
-
const worker = cp.fork(fileURLToPath(await import.meta.resolve("../server-worker")), [
|
|
453
|
+
const worker = cp.fork(fileURLToPath(await import.meta.resolve("../server-worker")), [JsonConvert.stringify("path" in pkgOrOpt ? pkgOrOpt.path : pkgOrOpt)], {
|
|
447
454
|
stdio: ["pipe", "pipe", "pipe", "ipc"],
|
|
448
455
|
env: {
|
|
449
456
|
...process.env,
|
|
450
457
|
NODE_ENV: "development",
|
|
451
458
|
TZ: "Asia/Seoul",
|
|
452
|
-
SD_VERSION: npmConf
|
|
453
|
-
...
|
|
459
|
+
SD_VERSION: npmConf?.version ?? "serverless",
|
|
460
|
+
..."path" in pkgOrOpt ? pkgOrOpt.conf.env : {}
|
|
454
461
|
}
|
|
455
462
|
});
|
|
456
463
|
worker.stdout.pipe(process.stdout);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SdCliProject.js","sourceRoot":"","sources":["../../src/entry/SdCliProject.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SdCliProject.js","sourceRoot":"","sources":["../../src/entry/SdCliProject.ts"],"names":[],"mappings":"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"}
|
package/dist/server-worker.js
CHANGED
|
@@ -2,6 +2,8 @@ import { EventEmitter } from "events";
|
|
|
2
2
|
import { Logger, LoggerSeverity } from "@simplysm/sd-core-node";
|
|
3
3
|
import path from "path";
|
|
4
4
|
import { pathToFileURL } from "url";
|
|
5
|
+
import { SdServiceServer } from "@simplysm/sd-service-server";
|
|
6
|
+
import { JsonConvert } from "@simplysm/sd-core-common";
|
|
5
7
|
Error.stackTraceLimit = Infinity;
|
|
6
8
|
EventEmitter.defaultMaxListeners = 0;
|
|
7
9
|
if (Boolean(process.env["SD_DEBUG"])) {
|
|
@@ -17,13 +19,29 @@ else {
|
|
|
17
19
|
});
|
|
18
20
|
}
|
|
19
21
|
const logger = Logger.get(["simplysm", "sd-cli", "server-worker"]);
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
const pkgPathOrOpt = JsonConvert.parse(process.argv[2]);
|
|
23
|
+
let server;
|
|
24
|
+
if (typeof pkgPathOrOpt === "string") {
|
|
25
|
+
const mainFilePath = path.resolve(pkgPathOrOpt, "dist/main.js");
|
|
26
|
+
const serverModule = await import(pathToFileURL(mainFilePath).href);
|
|
27
|
+
server = serverModule.default;
|
|
28
|
+
if (server === undefined) {
|
|
29
|
+
logger.error(`${mainFilePath}(0, 0): 'SdServiceServer'를 'export'해야 합니다.`);
|
|
30
|
+
process.exit();
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
server = new SdServiceServer({
|
|
35
|
+
rootPath: process.cwd(),
|
|
36
|
+
services: [],
|
|
37
|
+
port: pkgPathOrOpt.port
|
|
38
|
+
});
|
|
39
|
+
server.listenAsync()
|
|
40
|
+
.catch((err) => {
|
|
41
|
+
// eslint-disable-next-line no-console
|
|
42
|
+
console.error(err);
|
|
43
|
+
process.exit(1);
|
|
44
|
+
});
|
|
27
45
|
}
|
|
28
46
|
server.on("ready", () => {
|
|
29
47
|
process.send({ port: server.options.port });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server-worker.js","sourceRoot":"","sources":["../src/server-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAC,MAAM,EAAE,cAAc,EAAC,MAAM,wBAAwB,CAAC;AAC9D,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAC,aAAa,EAAC,MAAM,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"server-worker.js","sourceRoot":"","sources":["../src/server-worker.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAC,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAC,MAAM,EAAE,cAAc,EAAC,MAAM,wBAAwB,CAAC;AAC9D,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAC,aAAa,EAAC,MAAM,KAAK,CAAC;AAClC,OAAO,EAAC,eAAe,EAAC,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAC,WAAW,EAAC,MAAM,0BAA0B,CAAC;AAErD,KAAK,CAAC,eAAe,GAAG,QAAQ,CAAC;AACjC,YAAY,CAAC,mBAAmB,GAAG,CAAC,CAAC;AAErC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE;IACpC,MAAM,CAAC,SAAS,CAAC;QACf,OAAO,EAAE;YACP,KAAK,EAAE,cAAc,CAAC,KAAK;SAC5B;KACF,CAAC,CAAC;CACJ;KACI;IACH,MAAM,CAAC,SAAS,CAAC;QACf,GAAG,EAAE,IAAI;KACV,CAAC,CAAC;CACJ;AAED,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC;AAEnE,MAAM,YAAY,GAAG,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAgC,CAAC;AAEvF,IAAI,MAAmC,CAAC;AAExC,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE;IACpC,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,cAAc,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC;IACpE,MAAM,GAAG,YAAY,CAAC,OAAsC,CAAC;IAC7D,IAAI,MAAM,KAAK,SAAS,EAAE;QACxB,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,4CAA4C,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,EAAE,CAAC;KAChB;CACF;KACI;IACH,MAAM,GAAG,IAAI,eAAe,CAAC;QAC3B,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE;QACvB,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,YAAY,CAAC,IAAI;KACxB,CAAC,CAAC;IACH,MAAM,CAAC,WAAW,EAAE;SACjB,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;QACb,sCAAsC;QACtC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;CACN;AAGD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;IACtB,OAAO,CAAC,IAAK,CAAC,EAAC,IAAI,EAAE,MAAO,CAAC,OAAO,CAAC,IAAI,EAAC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAY,EAAE,EAAE;IACrC,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc,EAAE;QACnC,MAAO,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;KACvC;IACD,IAAI,OAAO,CAAC,IAAI,KAAK,iBAAiB,EAAE;QACtC,MAAO,CAAC,eAAe,EAAE,CAAC;KAC3B;AACH,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@simplysm/sd-cli",
|
|
3
|
-
"version": "11.1.
|
|
3
|
+
"version": "11.1.27",
|
|
4
4
|
"description": "심플리즘 패키지 - CLI",
|
|
5
5
|
"author": "김석래",
|
|
6
6
|
"repository": {
|
|
@@ -23,10 +23,10 @@
|
|
|
23
23
|
"@angular/compiler-cli": "^17.1.0",
|
|
24
24
|
"@angular/core": "^17.1.0",
|
|
25
25
|
"@electron/rebuild": "^3.5.0",
|
|
26
|
-
"@simplysm/sd-core-common": "11.1.
|
|
27
|
-
"@simplysm/sd-core-node": "11.1.
|
|
28
|
-
"@simplysm/sd-service-server": "11.1.
|
|
29
|
-
"@simplysm/sd-storage": "11.1.
|
|
26
|
+
"@simplysm/sd-core-common": "11.1.27",
|
|
27
|
+
"@simplysm/sd-core-node": "11.1.27",
|
|
28
|
+
"@simplysm/sd-service-server": "11.1.27",
|
|
29
|
+
"@simplysm/sd-storage": "11.1.27",
|
|
30
30
|
"browserslist": "^4.22.2",
|
|
31
31
|
"cordova": "^12.0.0",
|
|
32
32
|
"electron": "^28.1.4",
|
package/src/commons.ts
CHANGED
|
@@ -85,7 +85,7 @@ export interface ISdCliServerPackageConfig {
|
|
|
85
85
|
|
|
86
86
|
export interface ISdCliClientPackageConfig {
|
|
87
87
|
type: "client";
|
|
88
|
-
server?: string;
|
|
88
|
+
server?: string | { port: number };
|
|
89
89
|
publish?: ISdCliLocalDirectoryPublishConfig | ISdCliFtpPublishConfig;
|
|
90
90
|
env?: Record<string, string>;
|
|
91
91
|
configs?: Record<string, any>;
|
|
@@ -13,7 +13,7 @@ import cp from "child_process";
|
|
|
13
13
|
import {fileURLToPath, pathToFileURL} from "url";
|
|
14
14
|
import {SdCliBuildResultUtil} from "../utils/SdCliBuildResultUtil";
|
|
15
15
|
import semver from "semver";
|
|
16
|
-
import {NeverEntryError, StringUtil, Wait} from "@simplysm/sd-core-common";
|
|
16
|
+
import {JsonConvert, NeverEntryError, StringUtil, Wait} from "@simplysm/sd-core-common";
|
|
17
17
|
import {SdStorage} from "@simplysm/sd-storage";
|
|
18
18
|
import {SdCliLocalUpdate} from "./SdCliLocalUpdate";
|
|
19
19
|
import xml2js from "xml2js";
|
|
@@ -64,7 +64,7 @@ export class SdCliProject {
|
|
|
64
64
|
let busyCount = 0;
|
|
65
65
|
const serverInfoMap = new Map<string, {
|
|
66
66
|
// server
|
|
67
|
-
|
|
67
|
+
pkgOrOpt?: { path: string; conf: ISdCliServerPackageConfig } | { port: number }; // persist
|
|
68
68
|
worker?: cp.ChildProcess; // persist
|
|
69
69
|
port?: number;
|
|
70
70
|
hasChanges: boolean;
|
|
@@ -96,12 +96,18 @@ export class SdCliProject {
|
|
|
96
96
|
if (pkgConf.type === "server") {
|
|
97
97
|
const pkgName = path.basename(message.req.pkgPath);
|
|
98
98
|
const serverInfo = serverInfoMap.getOrCreate(pkgName, {
|
|
99
|
-
hasChanges:
|
|
99
|
+
hasChanges: true,
|
|
100
100
|
hasClientChanges: false,
|
|
101
101
|
pathProxy: {},
|
|
102
102
|
// changeFilePaths: []
|
|
103
103
|
});
|
|
104
|
-
|
|
104
|
+
|
|
105
|
+
const serverPkgConf = projConf.packages[pkgName] as ISdCliServerPackageConfig;
|
|
106
|
+
serverInfo.pkgOrOpt = {
|
|
107
|
+
path: message.req.pkgPath,
|
|
108
|
+
conf: serverPkgConf
|
|
109
|
+
};
|
|
110
|
+
|
|
105
111
|
serverInfo.hasChanges = true;
|
|
106
112
|
}
|
|
107
113
|
|
|
@@ -109,12 +115,17 @@ export class SdCliProject {
|
|
|
109
115
|
const pkgName = path.basename(message.req.pkgPath);
|
|
110
116
|
|
|
111
117
|
if (pkgConf.server !== undefined) {
|
|
112
|
-
const serverInfo = serverInfoMap.getOrCreate(pkgConf.server, {
|
|
113
|
-
hasChanges:
|
|
118
|
+
const serverInfo = serverInfoMap.getOrCreate(typeof pkgConf.server === "string" ? pkgConf.server : pkgConf.server.port.toString(), {
|
|
119
|
+
hasChanges: true,
|
|
114
120
|
hasClientChanges: false,
|
|
115
121
|
pathProxy: {},
|
|
116
122
|
// changeFilePaths: []
|
|
117
123
|
});
|
|
124
|
+
|
|
125
|
+
if (typeof pkgConf.server !== "string") {
|
|
126
|
+
serverInfo.pkgOrOpt = pkgConf.server;
|
|
127
|
+
}
|
|
128
|
+
|
|
118
129
|
serverInfo.pathProxy[pkgName] = path.resolve(message.req.pkgPath, "dist");
|
|
119
130
|
// serverInfo.changeFilePaths.push(...message.result!.affectedFilePaths);
|
|
120
131
|
|
|
@@ -123,7 +134,7 @@ export class SdCliProject {
|
|
|
123
134
|
}
|
|
124
135
|
else {
|
|
125
136
|
const serverInfo = serverInfoMap.getOrCreate(pkgName, {
|
|
126
|
-
hasChanges:
|
|
137
|
+
hasChanges: true,
|
|
127
138
|
hasClientChanges: false,
|
|
128
139
|
pathProxy: {},
|
|
129
140
|
// changeFilePaths: []
|
|
@@ -139,14 +150,13 @@ export class SdCliProject {
|
|
|
139
150
|
setTimeout(async () => {
|
|
140
151
|
busyCount--;
|
|
141
152
|
if (busyCount === 0) {
|
|
142
|
-
for (const
|
|
143
|
-
const serverInfo = serverInfoMap.get(
|
|
144
|
-
if (serverInfo.
|
|
153
|
+
for (const serverPkgNameOrPort of serverInfoMap.keys()) {
|
|
154
|
+
const serverInfo = serverInfoMap.get(serverPkgNameOrPort)!;
|
|
155
|
+
if (serverInfo.pkgOrOpt && serverInfo.hasChanges) {
|
|
145
156
|
logger.debug("서버 재시작...");
|
|
146
157
|
try {
|
|
147
158
|
const restartServerResult = await this._restartServerAsync(
|
|
148
|
-
serverInfo.
|
|
149
|
-
projConf.packages[path.basename(serverInfo.pkgPath)] as ISdCliServerPackageConfig,
|
|
159
|
+
serverInfo.pkgOrOpt,
|
|
150
160
|
serverInfo.worker
|
|
151
161
|
);
|
|
152
162
|
serverInfo.worker = restartServerResult.worker;
|
|
@@ -556,7 +566,9 @@ export class SdCliProject {
|
|
|
556
566
|
cluster.kill("SIGKILL");
|
|
557
567
|
}
|
|
558
568
|
|
|
559
|
-
private static async _restartServerAsync(
|
|
569
|
+
private static async _restartServerAsync(pkgOrOpt: { path: string; conf: ISdCliServerPackageConfig } | {
|
|
570
|
+
port: number
|
|
571
|
+
}, prevServerProcess?: cp.ChildProcess): Promise<{
|
|
560
572
|
worker: cp.ChildProcess,
|
|
561
573
|
port: number
|
|
562
574
|
}> {
|
|
@@ -566,7 +578,7 @@ export class SdCliProject {
|
|
|
566
578
|
prevServerProcess.kill("SIGKILL");
|
|
567
579
|
}
|
|
568
580
|
|
|
569
|
-
const npmConf = (await FsUtil.readJsonAsync(path.resolve(
|
|
581
|
+
const npmConf = "path" in pkgOrOpt ? (await FsUtil.readJsonAsync(path.resolve(pkgOrOpt.path, "package.json"))) as INpmConfig : undefined;
|
|
570
582
|
|
|
571
583
|
return await new Promise<{
|
|
572
584
|
worker: cp.ChildProcess,
|
|
@@ -574,15 +586,15 @@ export class SdCliProject {
|
|
|
574
586
|
}>(async (resolve, reject) => {
|
|
575
587
|
const worker = cp.fork(
|
|
576
588
|
fileURLToPath(await import.meta.resolve!("../server-worker")),
|
|
577
|
-
[
|
|
589
|
+
[JsonConvert.stringify("path" in pkgOrOpt ? pkgOrOpt.path : pkgOrOpt)],
|
|
578
590
|
{
|
|
579
591
|
stdio: ["pipe", "pipe", "pipe", "ipc"],
|
|
580
592
|
env: {
|
|
581
593
|
...process.env,
|
|
582
594
|
NODE_ENV: "development",
|
|
583
595
|
TZ: "Asia/Seoul",
|
|
584
|
-
SD_VERSION: npmConf
|
|
585
|
-
...
|
|
596
|
+
SD_VERSION: npmConf?.version ?? "serverless",
|
|
597
|
+
..."path" in pkgOrOpt ? pkgOrOpt.conf.env : {}
|
|
586
598
|
}
|
|
587
599
|
}
|
|
588
600
|
);
|
package/src/server-worker.ts
CHANGED
|
@@ -3,6 +3,7 @@ import {Logger, LoggerSeverity} from "@simplysm/sd-core-node";
|
|
|
3
3
|
import path from "path";
|
|
4
4
|
import {pathToFileURL} from "url";
|
|
5
5
|
import {SdServiceServer} from "@simplysm/sd-service-server";
|
|
6
|
+
import {JsonConvert} from "@simplysm/sd-core-common";
|
|
6
7
|
|
|
7
8
|
Error.stackTraceLimit = Infinity;
|
|
8
9
|
EventEmitter.defaultMaxListeners = 0;
|
|
@@ -22,27 +23,43 @@ else {
|
|
|
22
23
|
|
|
23
24
|
const logger = Logger.get(["simplysm", "sd-cli", "server-worker"]);
|
|
24
25
|
|
|
25
|
-
const
|
|
26
|
+
const pkgPathOrOpt = JsonConvert.parse(process.argv[2]) as (string | { port: number });
|
|
26
27
|
|
|
27
|
-
|
|
28
|
+
let server: SdServiceServer | undefined;
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
30
|
+
if (typeof pkgPathOrOpt === "string") {
|
|
31
|
+
const mainFilePath = path.resolve(pkgPathOrOpt, "dist/main.js");
|
|
32
|
+
const serverModule = await import(pathToFileURL(mainFilePath).href);
|
|
33
|
+
server = serverModule.default as SdServiceServer | undefined;
|
|
34
|
+
if (server === undefined) {
|
|
35
|
+
logger.error(`${mainFilePath}(0, 0): 'SdServiceServer'를 'export'해야 합니다.`);
|
|
36
|
+
process.exit();
|
|
37
|
+
}
|
|
35
38
|
}
|
|
39
|
+
else {
|
|
40
|
+
server = new SdServiceServer({
|
|
41
|
+
rootPath: process.cwd(),
|
|
42
|
+
services: [],
|
|
43
|
+
port: pkgPathOrOpt.port
|
|
44
|
+
});
|
|
45
|
+
server.listenAsync()
|
|
46
|
+
.catch((err) => {
|
|
47
|
+
// eslint-disable-next-line no-console
|
|
48
|
+
console.error(err);
|
|
49
|
+
process.exit(1);
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
|
|
36
53
|
|
|
37
54
|
server.on("ready", () => {
|
|
38
|
-
process.send!({port: server
|
|
55
|
+
process.send!({port: server!.options.port});
|
|
39
56
|
});
|
|
40
57
|
|
|
41
58
|
process.on("message", (message: any) => {
|
|
42
59
|
if (message.type === "setPathProxy") {
|
|
43
|
-
server
|
|
60
|
+
server!.pathProxy = message.pathProxy;
|
|
44
61
|
}
|
|
45
62
|
if (message.type === "broadcastReload") {
|
|
46
|
-
server
|
|
63
|
+
server!.broadcastReload();
|
|
47
64
|
}
|
|
48
|
-
});
|
|
65
|
+
});
|