shellcheck install-sdk.sh

pull/355/head
nightwing 2016-08-28 07:11:57 +04:00
rodzic 4fcc57ccb8
commit bfbdaa7529
1 zmienionych plików z 24 dodań i 22 usunięć

Wyświetl plik

@ -15,8 +15,8 @@ else
exit 1 exit 1
fi fi
cd `dirname $0`/.. cd "$(dirname "$0")/.."
SOURCE=`pwd` SOURCE=$(pwd)
uname="$(uname -a)" uname="$(uname -a)"
os= os=
@ -44,37 +44,38 @@ blue=$'\e[01;34m'
magenta=$'\e[01;35m' magenta=$'\e[01;35m'
resetColor=$'\e[0m' resetColor=$'\e[0m'
NO_PULL= # NO_PULL=
NO_GLOBAL_INSTALL= # NO_GLOBAL_INSTALL=
FORCE= # FORCE=
updatePackage() { updatePackage() {
name=$1 name=$1
cd "$SOURCE"
REPO=https://github.com/c9/$name REPO=https://github.com/c9/$name
echo "${green}checking out ${resetColor}$REPO" echo "${green}checking out ${resetColor}$REPO"
if ! [[ -d ./plugins/$name ]]; then if ! [[ -d ./plugins/"$name" ]]; then
mkdir -p ./plugins/$name mkdir -p ./plugins/"$name"
fi fi
pushd ./plugins/$name pushd ./plugins/"$name"
if ! [[ -d .git ]]; then if ! [[ -d .git ]]; then
git init git init
# git remote rm origin || true # git remote rm origin || true
git remote add origin $REPO git remote add origin "$REPO"
fi fi
version=`"$NODE" -e 'console.log((require("../../package.json").c9plugins["'$name'"].substr(1) || "origin/master"))'`; version=$("$NODE" -e 'console.log((require("../../package.json").c9plugins["'"$name"'"].substr(1) || "origin/master"))');
rev=`git rev-parse --revs-only $version` rev=$(git rev-parse --revs-only "$version")
if [ "$rev" == "" ]; then if [ "$rev" == "" ]; then
git fetch origin git fetch origin
fi fi
status=`git status --porcelain --untracked-files=no` status=$(git status --porcelain --untracked-files=no)
if [ "$status" == "" ]; then if [ "$status" == "" ] || [ "$FORCE" == "1" ]; then
git reset $version --hard git reset "$version" --hard
else else
echo "${yellow}$name ${red}contains uncommited changes.${yellow} Skipping...${resetColor}" echo "${yellow}$name ${red}contains uncommited changes.${yellow} Skipping...${resetColor}"
fi fi
@ -82,22 +83,23 @@ updatePackage() {
} }
updateAllPackages() { updateAllPackages() {
c9packages=`"$NODE" -e 'console.log(Object.keys(require("./package.json").c9plugins).join(" "))'`; c9packages=$("$NODE" -e 'console.log(Object.keys(require("./package.json").c9plugins).join(" "))');
count=${#c9packages[@]} count=${#c9packages[@]}
i=0 i=0
for m in ${c9packages[@]}; do echo $m; for m in "${c9packages[@]}"; do
i=$(($i + 1)) echo "$m"
i=$((i + 1))
echo "updating plugin ${blue}$i${resetColor} of ${blue}$count${resetColor}" echo "updating plugin ${blue}$i${resetColor} of ${blue}$count${resetColor}"
updatePackage $m updatePackage "$m" || updatePackage "$m"
done done
} }
updateNodeModules() { updateNodeModules() {
echo "${magenta}--- Running npm install --------------------------------------------${resetColor}" echo "${magenta}--- Running npm install --------------------------------------------${resetColor}"
safeInstall(){ safeInstall(){
deps=`"$NODE" -e 'console.log(Object.keys(require("./package.json").dependencies).join(" "))'`; deps=$("$NODE" -e 'console.log(Object.keys(require("./package.json").dependencies).join(" "))');
for m in ${deps[@]}; do echo $m; for m in "${deps[@]}"; do echo "$m";
"$NPM" install --loglevel warn $m || true "$NPM" install --loglevel warn "$m"
done done
} }
"$NPM" install || safeInstall "$NPM" install || safeInstall
@ -144,7 +146,7 @@ installGlobalDeps() {
############################################################################ ############################################################################
export C9_DIR="$HOME"/.c9 export C9_DIR="$HOME"/.c9
if ! [[ `which npm` ]]; then if ! [[ $(which npm) ]]; then
if [[ $os == "windows" ]]; then if [[ $os == "windows" ]]; then
export PATH="$C9_DIR:$C9_DIR/node_modules/.bin:$PATH" export PATH="$C9_DIR:$C9_DIR/node_modules/.bin:$PATH"
else else