Devcontainer setup ad-hoc parsing fails on Rocky 8.5 #232159
Labels
bug
Issue identified by VS Code Team member as probable bug
good first issue
Issues identified as good for first-time contributors
linux
Issues with VS Code on Linux
remote
Remote system operations issues
Does this issue occur when all extensions are disabled?: Yes
The
check-requirements-linux.sh
script that runs as part of a devcontainer setup wants to parse the OS version from/etc/os-release
.That file "is a newline-separated list of environment-like shell-compatible variable assignments" (see
man os-relase
on Linux).The script tries to parse the value it wants here, by running:
This looks for a key-value pair of the form
ID=value
and strips out theID=
part.It assumes the pair is not of the form
ID="value"
, which appears to be permitted by the file format, and appears in the wild in Rocky 8.5 where the relevant line reads:In that case the
grep
command will fail to match the line and the value ofOS_ID
will be empty, resulting in a non-zero exit code of 1.This could be fixed by changing the variable assignment to:
This will run a subshell in which the values in the file get assigned to environment variables, which removes any surrounding
"
marks.Since this runs in a subshell the current shell's environment will not pick up these variables.
Steps to Reproduce:
The text was updated successfully, but these errors were encountered: