nvm_init.sh 1.72 KiB
#!/bin/bash
# ======================================================================
#
# NVM INIT
#
# This is a helper tool for build processes with nodejs.
# It installs nvm and offers a method to remove nvm again.
#
# ----------------------------------------------------------------------
# 2019-06-18 first lines <axel.hahn@iml.unibe.ch>
# ======================================================================
# ----------------------------------------------------------------------
# CONFIG
# ----------------------------------------------------------------------
NVM_REPO=https://github.com/nvm-sh/nvm.git
# ----------------------------------------------------------------------
# FUNCTIONS
# ----------------------------------------------------------------------
function nvmremove(){
echo "REMOVE NVM ..."
if [ -z $NVM_DIR ]; then
echo ERROR: sorry, NVM_DIR is empty.
exit 1
fi
echo -n "Removing NVM from build directory: [$NVM_DIR] ..."
rm -rf "$NVM_DIR" || exit 3
echo OK
echo -n "unload ... "
nvm unload || exit 2
echo OK
}
# ----------------------------------------------------------------------
# MAIN
# ----------------------------------------------------------------------
echo
echo ===== NVM INIT =====
echo
if [ -z $DIR_APPROOT ]; then
echo ERROR: this script runs in a onbuilt process only.
echo Currently here is no DIR_APPROOT to define a temporary working dir.
exit 1
fi
# INSTALL NVM ... see
# https://github.com/nvm-sh/nvm#manual-install
export NVM_DIR="$DIR_APPROOT/.nvm" && (
git clone $NVM_REPO "$NVM_DIR"
cd "$NVM_DIR"
git checkout `git describe --abbrev=0 --tags --match "v[0-9]*" $(git rev-list --tags --max-count=1)`
) && . "$NVM_DIR/nvm.sh" || exit 1