在 act/catthehacker 下,tsc build 以 1 退出,没有输出,但在 node:24-bookworm 和 GitHub 主机上的运行程序中通过
作者: vikas-gits-good创建于 2026年9月2日更新于 2026年9月2日
Bug report info
- act version: 0.2.89
- Docker: 29.7.2
- Host OS: Linux (Manjaro), kernel 6.18, x86_64
- Runner image:
catthehacker/ubuntu:act-latest(exact:act-24.04-amd64, image version20260815, built 2026-08-15, Ubuntu 24.04.4 LTS, revisione2f8efe, digestsha256:c58e2b364da03b0c804c7d660f2ecbedf2f221a382b9baa0b344b0144780ff43) - Node in the job: v24.20.0 (installed via
actions/setup-node@v4,node-version: 24)
Command used with act
act workflow_dispatch -W .GitHub/workflows/repro.yml -j build \
--network bridge --rm \
--container-options "-v /path/to/project:/src:ro --memory=12g"
Describe issue
A job builds a large TypeScript project (a NestJS backend, ~1,400 npm dependencies) with npm ci && npm run build, where the build script is tsc -p tsconfig.build.json.
npm cisucceeds (installs ~1,439 packages).tscthen exits with code 1 roughly 2–3 seconds after it starts, printing no diagnostics at all — noerror TS…lines, nothing on stdout or stderr. The step just goes from> tsc -p tsconfig.build.jsonstraight to failure. The identical steps (samepackage-lock.jsonvianpm ci, samenpm run build) succeed with exit code 0 in both of these environments:
- A plain
Docker run --rm node:24-bookwormcontainer (copy the source in,npm ci,npm run build→BUILD_EXIT=0). - GitHub-hosted
ubuntu-latestrunners (the same workflow run on GitHub). It only fails when run under act withcatthehacker/ubuntu:act-latest(act-24.04-amd64, version20260815). Things I ruled out:
- Memory — reproduces with
--container-options "--memory=12g"andNODE_OPTIONS=--max-old-space-size=6144; no OOM message appears. - Node version — act's job uses v24.20.0 (same major as the passing
node:24-bookwormtest). - Lockfile drift —
npm ciis used (lockfile is in sync; a full clean install succeeds). A ~2.5 s silent non-zero exit fromtscon a project that normally takes ~20–30 s to type-check strongly suggests the process is being terminated early inside the container, but there is no diagnostic, no OOM/kill message, and it's specific to the act/catthehacker environment. It may be an image-environment issue (catthehacker/docker_images) rather than act core — happy to move it there if that's the right home.
Link to GitHub repository
Not available — this reproduces inside a private repository, so I can't share it. The failing project is a large NestJS/TypeScript backend; I have not yet reduced it to a minimal public repro (the behavior appears tied to project size / a large tsc build). I'm glad to run further diagnostics on request.
Workflow content
name: repro
on: workflow_dispatch
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 24
- run: npm ci
- run: npm run build # -> "tsc -p
…
内容来源: nektos/act