File tree Expand file tree Collapse file tree 4 files changed +45
-2
lines changed Expand file tree Collapse file tree 4 files changed +45
-2
lines changed Original file line number Diff line number Diff line change 1+ name : CLI Tests
2+
3+ on :
4+ push :
5+ paths :
6+ - " cli/**"
7+ pull_request :
8+ paths :
9+ - " cli/**"
10+
11+ jobs :
12+ test :
13+ runs-on : ubuntu-latest
14+ defaults :
15+ run :
16+ working-directory : ./cli
17+ steps :
18+ - uses : actions/checkout@v4
19+
20+ - name : Set up Node.js
21+ uses : actions/setup-node@v4
22+ with :
23+ node-version-file : package.json
24+ cache : npm
25+
26+ - name : Install dependencies
27+ run : |
28+ cd ..
29+ npm ci --ignore-scripts
30+
31+ - name : Build CLI
32+ run : npm run build
33+
34+ - name : Explicitly pre-install test dependencies
35+ run : npx -y @modelcontextprotocol/server-everything --help || true
36+
37+ - name : Run tests
38+ run : npm test
39+ env :
40+ NPM_CONFIG_YES : true
41+ CI : true
Original file line number Diff line number Diff line change @@ -12,7 +12,7 @@ const colors = {
1212
1313import fs from "fs" ;
1414import path from "path" ;
15- import { execSync , spawn } from "child_process" ;
15+ import { spawn } from "child_process" ;
1616import os from "os" ;
1717import { fileURLToPath } from "url" ;
1818
Original file line number Diff line number Diff line change @@ -233,7 +233,7 @@ async function main(): Promise<void> {
233233 const args = parseArgs ( ) ;
234234
235235 if ( args . cli ) {
236- runCli ( args ) ;
236+ await runCli ( args ) ;
237237 } else {
238238 await runWebClient ( args ) ;
239239 }
Original file line number Diff line number Diff line change @@ -287,6 +287,8 @@ async function main(): Promise<void> {
287287 try {
288288 const args = parseArgs ( ) ;
289289 await callMethod ( args ) ;
290+ // Explicitly exit to ensure process terminates in CI
291+ process . exit ( 0 ) ;
290292 } catch ( error ) {
291293 handleError ( error ) ;
292294 }
You can’t perform that action at this time.
0 commit comments