ReviewOS

also looking at this

craft-native/craft

ci(lifecycle): run the packaging test as a path, not as a filter

#59
Merged glennmichael123 wants to merge fix/lifecycle-fd-limit into main
1 file +13 -1
.github/workflows/native-lifecycle.ymlmodified+13-1
Changes to .github/workflows/native-lifecycle.yml
@@ -86,7 +86,19 @@ jobs:
8686 $bin.FullName | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
8787
8888 - name: Test packaging API
89 run: bun test packages/typescript/src/package.test.ts
89 # The leading `./` is load-bearing. Without it bun reads the argument as
90 # a *filter* and walks the repository looking for test files that match,
91 # and on a hoisted node_modules that walk runs out of file descriptors
92 # before it finds anything:
93 #
94 # error: Cannot read file ".../packages/typescript/tsconfig.json": EMFILE
95 #
96 # which surfaces as a missing tsconfig rather than as a limit, and whose
97 # only job-level symptom is the artifact upload two steps later
98 # reporting "No files were found". With `./` bun opens the one file it
99 # was given: measured, the filter form needs >512 descriptors and the
100 # path form runs the same 19 tests in 64.
101 run: bun test ./packages/typescript/src/package.test.ts
90102
91103 - name: Exercise native lifecycle
92104 run: bun scripts/native-lifecycle.ts --install