mirror of
https://github.com/abhigyanpatwari/GitNexus.git
synced 2026-09-29 01:41:42 +00:00
fix(devcontainer): install gitnexus-web before gitnexus in postCreateCommand
The previous order (root → gitnexus-shared → gitnexus → gitnexus-web) broke at the `gitnexus` install step because `gitnexus`'s `prepare` script runs `scripts/build.js`, which compiles `gitnexus-web` whenever its source tree exists. In the devcontainer the entire workspace is bind-mounted, so `gitnexus-web/` is present from the start — but its `node_modules/` wasn't yet, so `tsc -b` failed with: error TS2688: Cannot find type definition file for 'vite/client' error TS2688: Cannot find type definition file for 'node' Reorder so `gitnexus-web` installs before `gitnexus`. Verified end-to-end via `npx @devcontainers/cli up`: container builds clean, all three CLIs (Claude 2.1.153, Codex 0.134.0, Cursor) respond, and `npx tsc --noEmit` inside `/workspace/gitnexus` passes. Production Dockerfiles (`Dockerfile.cli` etc.) don't hit this because they only COPY `gitnexus/` + `gitnexus-shared/`, so `gitnexus-web/` doesn't exist at install time and `scripts/build.js` skips the web step. The devcontainer's full-tree bind mount changes that calculus.
This commit is contained in:
parent
05e9c58fb1
commit
326cb06fe7
1 changed files with 6 additions and 3 deletions
|
|
@ -107,7 +107,10 @@
|
|||
},
|
||||
|
||||
// Sequential setup: chown the workspace-side node_modules volumes (Docker
|
||||
// creates them root-owned), then install in dependency order
|
||||
// (gitnexus-shared must build before its consumers).
|
||||
"postCreateCommand": "sudo chown -R node:node /workspace/node_modules /workspace/gitnexus/node_modules /workspace/gitnexus-web/node_modules /workspace/gitnexus-shared/node_modules && cd /workspace && npm install && cd /workspace/gitnexus-shared && npm install && npm run build && cd /workspace/gitnexus && npm install && cd /workspace/gitnexus-web && npm install"
|
||||
// creates them root-owned), then install in dependency order:
|
||||
// root (husky) → gitnexus-shared (install + build, consumed via file:..)
|
||||
// → gitnexus-web (must install BEFORE gitnexus, because gitnexus's
|
||||
// `prepare` script runs scripts/build.js which compiles gitnexus-web)
|
||||
// → gitnexus (last; its prepare hook needs gitnexus-web's node_modules).
|
||||
"postCreateCommand": "sudo chown -R node:node /workspace/node_modules /workspace/gitnexus/node_modules /workspace/gitnexus-web/node_modules /workspace/gitnexus-shared/node_modules && cd /workspace && npm install && cd /workspace/gitnexus-shared && npm install && npm run build && cd /workspace/gitnexus-web && npm install && cd /workspace/gitnexus && npm install"
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue