Should implementations "reinstall" a feature that's already in the referenced image? #244
Alex Vidal (avidal)
started this conversation in
General
Replies: 2 comments 2 replies
|
Just noticed after pretty printing |
0 replies
|
Today there is no deduplication for Features within the image metadata and Features listed by the user in a |
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
If a feature id is present in image metadata, and that feature is also present in
devcontainer.json, should an implementing tool reinstall it?My gut says yes. The feature metadata only contains the feature ID and not the options that were specified to install it. For example, if you look at the image config for
mcr.microsoft.com/devcontainers/cpp:ubuntu-22.04:[ { "id": "ghcr.io/devcontainers/features/common-utils:2" }, { "id": "ghcr.io/devcontainers/features/git:1" }, { "remoteUser": "vscode" }, { "id": "ghcr.io/devcontainers/features/git:1" }, { "customizations": { "vscode": { "extensions": [ "ms-vscode.cpptools", "ms-vscode.cmake-tools" ] } }, "capAdd": [ "SYS_PTRACE" ], "securityOpt": [ "seccomp=unconfined" ], "remoteUser": "vscode" } ]If a
devcontainer.jsonbuilds on top of this image and includes the samecommon-utils:2orgit:1, an implementing tool would have no way of knowing if the options match to avoid a (potentially lengthy) reinstallation.Perhaps this should be added to the docs?
All reactions