File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 99
1010curl -fsSL https://code-server.dev/install.sh | sh -s -- $CODE_SERVER_INSTALL_ARGS
1111
12- IFS=' ,' read -ra extensions <<< " $EXTENSIONS"
12+ if [[ -n " $EXTENSIONS " ]]; then
13+ IFS=' ,' read -ra extensions <<< " $EXTENSIONS"
1314
14- for extension in " ${extensions[@]} "
15- do
16- code-server --install-extension " $extension "
17- done
15+ for extension in " ${extensions[@]} "
16+ do
17+ if ! su " $_REMOTE_USER " -c " code-server --install-extension '$extension '" ; then
18+ echo " ERROR: Failed to install extension '$extension ' as user '$_REMOTE_USER '" >&2
19+ exit 1
20+ fi
21+ done
22+ fi
1823
1924CODE_SERVER_WORKSPACE=" $_REMOTE_USER_HOME "
2025
Original file line number Diff line number Diff line change @@ -9,10 +9,13 @@ check "code-server version" code-server --version
99check " code-server running" pgrep -f ' code-server/lib/node.*/code-server'
1010check " code-server listening" lsof -i " @0.0.0.0:8080"
1111
12- extensions=$( sudo code-server --list-extensions)
12+ # Verify extensions are installed under the remoteUser's home, not root's.
13+ # See: https://github.com/coder/devcontainer-features/issues/18
14+ extensions_dir=/home/vscode/.local/share/code-server/extensions
1315
14- check " code-server extensions [rust-lang.rust-analyzer]" grep ' rust-lang.rust-analyzer\>' <<< " $extensions"
15- check " code-server extensions [ms-python.python]" grep ' ms-python.python\>' <<< " $extensions"
16+ check " rust-analyzer installed under remoteUser" ls " $extensions_dir " /rust-lang.rust-analyzer-*
17+ check " python installed under remoteUser" ls " $extensions_dir " /ms-python.python-*
18+ check " extensions not installed under root" test ! -d /root/.local/share/code-server/extensions
1619
1720# Report results
1821reportResults
You can’t perform that action at this time.
0 commit comments