aboutsummaryrefslogtreecommitdiff
path: root/src/node
diff options
context:
space:
mode:
authorJosh Spicer <joshspicer@github.com>2022-06-03 17:46:25 +0300
committerGitHub <noreply@github.com>2022-06-03 17:46:25 +0300
commitc12a205ab8e195541acfe0cb654b4888e16ea05c (patch)
treea1a45ac7dec9f31fa62972a65414b6d6fd1fd60d /src/node
parent283b8e1f8f5dec9e54199c107e772ce56683769e (diff)
Pass options via environment variables (#39)
* up to docker-in-docker converted * first pass at the rest of the features (and bash linting and updated CLI * move shell linter to own file * rename feature.json -> devcontainer-feature.json * continue on error * continue on error in right spot * formatting * fix AZ_VERSION * update python * restore variable name * update linter actions, fix dind/dfd/desktop scripts, add test-scenaerios * add tree because I like tree * glob for shell linter * fix test-scenarios * shell linter * more shell helper
Diffstat (limited to 'src/node')
-rw-r--r--src/node/devcontainer-feature.json (renamed from src/node/feature.json)19
-rw-r--r--src/node/install.sh16
2 files changed, 22 insertions, 13 deletions
diff --git a/src/node/feature.json b/src/node/devcontainer-feature.json
index fdb29cb..8d3bda6 100644
--- a/src/node/feature.json
+++ b/src/node/devcontainer-feature.json
@@ -4,24 +4,33 @@
"options": {
"version": {
"type": "string",
- "proposals": [ "lts", "latest", "none", "18", "16", "14" ],
+ "proposals": [
+ "lts",
+ "latest",
+ "none",
+ "18",
+ "16",
+ "14"
+ ],
"default": "lts",
"description": "Select or enter a Node.js version to install"
},
- "nodeGypDependencies": {
+ "install_tools_for_node_gyp": {
"type": "boolean",
"default": true,
"description": "Install dependencies to compile native node modules (node-gyp)?"
},
- "nvmInstallPath": {
+ "nvm_install_path": {
"type": "string",
"default": "/usr/local/share/nvm",
"description": "The path where NVM will be installed."
}
},
- "extensions": ["dbaeumer.vscode-eslint"],
+ "extensions": [
+ "dbaeumer.vscode-eslint"
+ ],
"containerEnv": {
- "NVM_DIR":"/usr/local/share/nvm",
+ "NVM_DIR": "/usr/local/share/nvm",
"NVM_SYMLINK_CURRENT": "true",
"PATH": "${NVM_DIR}/current/bin:${PATH}"
},
diff --git a/src/node/install.sh b/src/node/install.sh
index 0b2190b..bb71c64 100644
--- a/src/node/install.sh
+++ b/src/node/install.sh
@@ -6,14 +6,14 @@
#
# Docs: https://github.com/microsoft/vscode-dev-containers/blob/main/script-library/docs/node.md
# Maintainer: The VS Code and Codespaces Teams
-#
-# Syntax: ./node-debian.sh [directory to install nvm] [node version to install (use "none" to skip)] [non-root user] [Update rc files flag] [install node-gyp deps]
-export NVM_DIR=${1:-"/usr/local/share/nvm"}
-export NODE_VERSION=${2:-"lts"}
-USERNAME=${3:-"automatic"}
-UPDATE_RC=${4:-"true"}
-INSTALL_TOOLS_FOR_NODE_GYP="${5:-true}"
+export NODE_VERSION=${VERSION:-"lts"}
+export NVM_DIR=${NVM_INSTALL_PATH:-"/usr/local/share/nvm"}
+INSTALL_TOOLS_FOR_NODE_GYP="${INSTALL_TOOLS_FOR_NODE_GYP:-true}"
+
+USERNAME=${USERNAME:-"automatic"}
+UPDATE_RC=${UPDATE_RC:-"true"}
+
export NVM_VERSION="0.38.0"
set -e
@@ -32,7 +32,7 @@ chmod +x /etc/profile.d/00-restore-env.sh
if [ "${USERNAME}" = "auto" ] || [ "${USERNAME}" = "automatic" ]; then
USERNAME=""
POSSIBLE_USERS=("vscode" "node" "codespace" "$(awk -v val=1000 -F ":" '$3==val{print $1}' /etc/passwd)")
- for CURRENT_USER in ${POSSIBLE_USERS[@]}; do
+ for CURRENT_USER in "${POSSIBLE_USERS[@]}"; do
if id -u ${CURRENT_USER} > /dev/null 2>&1; then
USERNAME=${CURRENT_USER}
break