core: fix dependency installation failures behind corporate proxies or in CI by disabling Bun cache when network interception is detected

pull/16961/head
Dax Raad 2026-03-09 23:32:28 -04:00
parent a9b01be0c2
commit 0cdd4e4e16
1 changed files with 10 additions and 1 deletions

View File

@ -34,6 +34,8 @@ import { Account } from "@/account"
import { ConfigPaths } from "./paths"
import { Filesystem } from "@/util/filesystem"
import { Npm } from "@/npm"
import { BunProc } from "@/bun"
import { proxied } from "@/util/proxied"
export namespace Config {
const ModelId = z.string().meta({ $ref: "https://models.dev/model-schema.json#/$defs/Model" })
@ -287,7 +289,14 @@ export namespace Config {
// Install any additional dependencies defined in the package.json
// This allows local plugins and custom tools to use external packages
await Npm.install(dir).catch((err) => {
await BunProc.run(
[
"install",
// TODO: get rid of this case (see: https://github.com/oven-sh/bun/issues/19936)
...(proxied() || process.env.CI ? ["--no-cache"] : []),
],
{ cwd: dir },
).catch((err) => {
log.warn("failed to install dependencies", { dir, error: err })
})
}