Skip to content

Commit f1c014a

Browse files
committed
fix(ci): skip lifecycle scripts on CI installs
No CI job needs a compiled native module. isolated-vm landed in December 2025 and .npmrc blocked all lifecycle scripts until #5935, so CI ran green for ~7 months with it never built: next.config.ts and trigger.config.ts both external it, every test mocks it, and the only real require lives in isolated-vm-worker.cjs, which no CI job spawns. All three Dockerfiles already install with --ignore-scripts and rebuild it by hand. Building it in CI therefore buys nothing and couples every job to prebuild availability for the pinned Node. Upstream ships prebuilds for two ABIs only (Node 22/24), so the next setup-node bump would resurface the same opaque node-gyp failure that broke Create GitHub Release on main. - pass --ignore-scripts to all 8 CI bun install invocations - retarget the Setup Node comments at engines.node >= 22.19.0, which is the standalone reason for the pin now that scripts no longer run
1 parent 8471522 commit f1c014a

6 files changed

Lines changed: 14 additions & 17 deletions

File tree

.github/workflows/ci.yml

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -186,9 +186,8 @@ jobs:
186186
with:
187187
bun-version: 1.3.13
188188

189-
# Required: bun install runs isolated-vm's install script, and upstream
190-
# only publishes prebuilds for Node 22/24. On the runner default (Node 20)
191-
# it falls back to a node-gyp build that crashes on Node 20.
189+
# Repo scripts target engines.node >= 22.19.0; without this the job runs on
190+
# the runner default (Node 20).
192191
- name: Setup Node
193192
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
194193
with:
@@ -206,7 +205,7 @@ jobs:
206205
${{ runner.os }}-bun-
207206
208207
- name: Install dependencies
209-
run: bun install --frozen-lockfile
208+
run: bun install --frozen-lockfile --ignore-scripts
210209

211210
- name: Deploy to Trigger.dev
212211
working-directory: ./apps/sim
@@ -591,16 +590,15 @@ jobs:
591590
with:
592591
bun-version: 1.3.13
593592

594-
# Required: bun install runs isolated-vm's install script, and upstream
595-
# only publishes prebuilds for Node 22/24. On the runner default (Node 20)
596-
# it falls back to a node-gyp build that crashes on Node 20.
593+
# Repo scripts target engines.node >= 22.19.0; without this the job runs on
594+
# the runner default (Node 20).
597595
- name: Setup Node
598596
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
599597
with:
600598
node-version: 22
601599

602600
- name: Install dependencies
603-
run: bun install --frozen-lockfile
601+
run: bun install --frozen-lockfile --ignore-scripts
604602

605603
- name: Create release
606604
env:

.github/workflows/docs-embeddings.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
${{ runner.os }}-bun-
4242
4343
- name: Install dependencies
44-
run: bun install --frozen-lockfile
44+
run: bun install --frozen-lockfile --ignore-scripts
4545

4646
- name: Process docs embeddings
4747
working-directory: ./apps/sim

.github/workflows/migrations.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,8 @@ jobs:
3636
with:
3737
bun-version: 1.3.13
3838

39-
# Required: bun install runs isolated-vm's install script, and upstream
40-
# only publishes prebuilds for Node 22/24. On the runner default (Node 20)
41-
# it falls back to a node-gyp build that crashes on Node 20.
39+
# Repo scripts target engines.node >= 22.19.0; without this the job runs on
40+
# the runner default (Node 20).
4241
- name: Setup Node
4342
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6
4443
with:
@@ -56,7 +55,7 @@ jobs:
5655
${{ runner.os }}-bun-
5756
5857
- name: Install dependencies
59-
run: bun install --frozen-lockfile
58+
run: bun install --frozen-lockfile --ignore-scripts
6059

6160
# The expression maps the explicit environment input to exactly one repo
6261
# secret, so the job never holds another environment's database URL. An

.github/workflows/publish-cli.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ jobs:
4141
4242
- name: Install dependencies
4343
working-directory: packages/cli
44-
run: bun install --frozen-lockfile
44+
run: bun install --frozen-lockfile --ignore-scripts
4545

4646
- name: Build package
4747
working-directory: packages/cli

.github/workflows/publish-ts-sdk.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ jobs:
4040
${{ runner.os }}-bun-
4141
4242
- name: Install dependencies
43-
run: bun install --frozen-lockfile
43+
run: bun install --frozen-lockfile --ignore-scripts
4444

4545
- name: Run tests
4646
working-directory: packages/ts-sdk

.github/workflows/test-build.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ jobs:
6060
path: ./.turbo
6161

6262
- name: Install dependencies
63-
run: bun install --frozen-lockfile
63+
run: bun install --frozen-lockfile --ignore-scripts
6464

6565
# Surfaces known CVEs in the dependency tree. Non-blocking until the
6666
# existing advisory backlog is triaged, then flip to a required gate by
@@ -278,7 +278,7 @@ jobs:
278278
fi
279279
280280
- name: Install dependencies
281-
run: bun install --frozen-lockfile
281+
run: bun install --frozen-lockfile --ignore-scripts
282282

283283
- name: Build application
284284
env:

0 commit comments

Comments
 (0)