Skip to content

Commit 897b846

Browse files
fix: vars
1 parent 5d77332 commit 897b846

1 file changed

Lines changed: 32 additions & 0 deletions

File tree

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
/*
2+
* Copyright 2026, Salesforce, Inc.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
16+
17+
import treeKill from 'tree-kill';
18+
19+
/**
20+
* Clean up a server process and all its child processes. Uses tree-kill so
21+
* descendant node processes (e.g. LWR workers) are terminated.
22+
*/
23+
export function killServerProcess(serverProcess: { pid?: number } | null | undefined): void {
24+
if (!serverProcess?.pid) return;
25+
const pid = serverProcess.pid;
26+
try {
27+
treeKill(pid, 'SIGKILL');
28+
} catch (error) {
29+
const err = error as NodeJS.ErrnoException;
30+
if (err.code !== 'ESRCH') throw error;
31+
}
32+
}

0 commit comments

Comments
 (0)