Repository navigation
Expand file tree
/
Copy pathdevcontainer.json
More file actions
33 lines (33 loc) · 1.89 KB
/
Copy pathdevcontainer.json
File metadata and controls
33 lines (33 loc) · 1.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
{
"name": "languages-ng",
// Pinned by digest for reproducibility. When you bump this, rebuild
// WITHOUT cache ("Dev Containers: Rebuild Container Without Cache") --
// the derived feature image can be reused across a base-digest change
// (exact cache-key behavior unconfirmed), so a plain rebuild may
// silently keep the old toolchain.
// Do not "fix" a stale container with `pipx upgrade plcc-ng`; that
// defeats this pin. See CR-511 in the ourPLCC/dev tracker.
"image": "ghcr.io/ourplcc/devcontainers/plcc-ng:2.0.2@sha256:ebab585854e2c2dd5133db9616b398f6ede19702b514a5f4ace14757ae63dc9a",
"features": {
"ghcr.io/anthropics/devcontainer-features/claude-code:1.0": {},
"ghcr.io/devcontainers-extra/features/shellcheck:1": {}
},
// The change-request tracker and org developer docs live in ourPLCC/dev,
// cloned beside this repo on the host and mounted at /workspaces/dev.
// ~/.claude is a named volume so assistant memory and settings survive
// a rebuild.
"initializeCommand": "test -d ../dev || git clone https://github.com/ourPLCC/dev ../dev; git -C ../dev config core.hooksPath .githooks",
"mounts": [
"source=${localWorkspaceFolder}/../dev,target=/workspaces/dev,type=bind",
"source=languages-ng-claude,target=/home/vscode/.claude,type=volume"
],
"containerEnv": {
"BACKLOG_CWD": "/workspaces/dev",
"GIT_CONFIG_COUNT": "2",
"GIT_CONFIG_KEY_0": "safe.directory",
"GIT_CONFIG_VALUE_0": "/workspaces/dev",
"GIT_CONFIG_KEY_1": "safe.directory",
"GIT_CONFIG_VALUE_1": "/workspaces/languages-ng"
},
"postCreateCommand": "${containerWorkspaceFolder}/bin/install/bats.bash && sudo chown vscode:vscode /home/vscode/.claude && npm i -g backlog.md@$(cat /workspaces/dev/.backlog-version) && git -C /workspaces/dev status >/dev/null && git -C ${containerWorkspaceFolder} status >/dev/null && ${containerWorkspaceFolder}/bin/install/claude-imports.bash"
}