-
Notifications
You must be signed in to change notification settings - Fork 62
fix(devcontainers-cli): add PNPM_HOME for pnpm package manager #433
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -12,12 +12,12 @@ if ! command -v docker > /dev/null 2>&1; then | |
| fi | ||
|
|
||
| # Determine the package manager to use: npm, pnpm, or yarn | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Changed the ordering to use PNPM as a last option, if NPM is installed too. |
||
| if command -v pnpm > /dev/null 2>&1; then | ||
| PACKAGE_MANAGER="pnpm" | ||
| elif command -v yarn > /dev/null 2>&1; then | ||
| if command -v yarn > /dev/null 2>&1; then | ||
| PACKAGE_MANAGER="yarn" | ||
| elif command -v npm > /dev/null 2>&1; then | ||
| PACKAGE_MANAGER="npm" | ||
| elif command -v pnpm > /dev/null 2>&1; then | ||
| PACKAGE_MANAGER="pnpm" | ||
| else | ||
| echo "ERROR: No supported package manager (npm, pnpm, yarn) is installed. Please install one first." 1>&2 | ||
| exit 1 | ||
|
|
@@ -26,9 +26,16 @@ fi | |
| echo "Installing @devcontainers/cli using $PACKAGE_MANAGER..." | ||
|
|
||
| # Install @devcontainers/cli using the selected package manager | ||
| if [ "$PACKAGE_MANAGER" = "npm" ] || [ "$PACKAGE_MANAGER" = "pnpm" ]; then | ||
| if [ "$PACKAGE_MANAGER" = "npm" ]; then | ||
| $PACKAGE_MANAGER install -g @devcontainers/cli \ | ||
| && echo "🥳 @devcontainers/cli has been installed into $(which devcontainer)!" | ||
| elif [ "$PACKAGE_MANAGER" = "pnpm" ]; then | ||
| # if PNPM_HOME is not set, set it to the bin directory of the script | ||
|
||
| if [ -z "$PNPM_HOME" ]; then | ||
| export PNPM_HOME="$CODER_SCRIPT_BIN_DIR" | ||
| fi | ||
|
||
| $PACKAGE_MANAGER add -g @devcontainers/cli \ | ||
| && echo "🥳 @devcontainers/cli has been installed into $(which devcontainer)!" | ||
| elif [ "$PACKAGE_MANAGER" = "yarn" ]; then | ||
| $PACKAGE_MANAGER global add @devcontainers/cli \ | ||
| && echo "🥳 @devcontainers/cli has been installed into $(which devcontainer)!" | ||
|
||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Purely testing purpose, done to not rely on NPM.