generated from me/template-mit
install, ensure node_modules exists, handle project being moved into subdirectory cli.
This commit is contained in:
1 parent
cbca8ac5d2
commit
5601cd0f56
1 file changed
+23
-4
+23
-4
@@ -5,6 +5,7 @@
|
||||
## Variables ##
|
||||
|
||||
DIR="$(cd "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)"
|
||||
PROJ="$(cd "$DIR"/.. &>/dev/null && pwd)"
|
||||
PROG="$(basename -- "${BASH_SOURCE[0]}")"
|
||||
LOCAL=~/bin
|
||||
GLOBAL=/usr/local/bin
|
||||
@@ -46,6 +47,24 @@ function usage {
|
||||
exit $1
|
||||
}
|
||||
|
||||
## Validations ##
|
||||
|
||||
count=0
|
||||
while [[ ! -d "$DIR/node_modules" ]]; do
|
||||
if (( count > 0 )); then
|
||||
echo "Failed to download libraries, please intervene."
|
||||
exit 3
|
||||
fi
|
||||
if [[ -z "`which npm`" ]]; then
|
||||
echo "Libraries are missing, please run 'npm install' first."
|
||||
exit 2
|
||||
else
|
||||
echo "Downloading libraries with 'npm install'."
|
||||
cd $DIR && npm install
|
||||
fi
|
||||
count=$(( count++ ))
|
||||
done
|
||||
|
||||
## Parameters ##
|
||||
|
||||
while getopts ":gslarh" arg; do
|
||||
@@ -75,19 +94,19 @@ fi
|
||||
|
||||
cmd=""
|
||||
dir="$LOCAL"
|
||||
src="$DIR"
|
||||
src="$PROJ"
|
||||
if [[ "$global" == "Y" ]]; then
|
||||
dir="$GLOBAL"
|
||||
cmd="sudo"
|
||||
echo "Requesting sudo privileges... "
|
||||
sudo echo "Success!"
|
||||
mkdir -pv /usr/local/src
|
||||
sudo cp -Rv "$DIR" $GLOBAL_SRC/
|
||||
src="$GLOBAL_SRC/`basename "$DIR"`"
|
||||
sudo cp -Rv "$PROJ" "$GLOBAL_SRC"/
|
||||
src="$GLOBAL_SRC/`basename "$PROJ"`"
|
||||
fi
|
||||
|
||||
if [[ -z "$remove" ]]; then
|
||||
cmd="$cmd ln -svf $src/$name_local"
|
||||
cmd="$cmd ln -svf $src/cli/$name_local"
|
||||
else
|
||||
cmd="$cmd rm -v"
|
||||
fi
|
||||
|
||||
Reference in new issue
Block a user