From aa2d241ef708527c60b575311ae66a31eaf9fd52 Mon Sep 17 00:00:00 2001 From: Timo Tijhof Date: Sun, 20 Jul 2014 21:54:00 +0200 Subject: [PATCH] oojs update scripts: Use quotes to prevent globbing and word splitting Change-Id: I69a0782fafbf2e8ce943ab819ccba83ac3e92f71 --- maintenance/resources/update-oojs-ui.sh | 18 +++++++++--------- maintenance/resources/update-oojs.sh | 14 +++++++------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/maintenance/resources/update-oojs-ui.sh b/maintenance/resources/update-oojs-ui.sh index e1ccb4616a..1b3529225a 100755 --- a/maintenance/resources/update-oojs-ui.sh +++ b/maintenance/resources/update-oojs-ui.sh @@ -9,12 +9,12 @@ then exit 1 fi -TARGET_REPO=$(cd $(dirname $0)/../..; pwd) +TARGET_REPO=$(cd "$(dirname $0)/../.."; pwd) TARGET_DIR=resources/lib/oojs-ui UI_REPO=$1 function oojsuihash() { - grep "OOjs UI v" $TARGET_REPO/$TARGET_DIR/oojs-ui.js \ + grep "OOjs UI v" "$TARGET_REPO/$TARGET_DIR/oojs-ui.js" \ | head -n 1 \ | grep -Eo '\([a-z0-9]+\)' \ | sed 's/^(//' \ @@ -22,19 +22,19 @@ function oojsuihash() { } function oojsuitag() { - grep "OOjs UI v" $TARGET_REPO/$TARGET_DIR/oojs-ui.js \ + grep "OOjs UI v" "$TARGET_REPO/$TARGET_DIR/oojs-ui.js" \ | head -n 1 \ | grep -Eo '\bv[0-9a-z.-]+\b' } function oojsuiversion() { - grep "OOjs UI v" $TARGET_REPO/$TARGET_DIR/oojs-ui.js \ + grep "OOjs UI v" "$TARGET_REPO/$TARGET_DIR/oojs-ui.js" \ | head -n 1 \ | grep -Eo '\bv[0-9a-z.-]+\b.*$' } # Prepare working tree -cd $TARGET_REPO && +cd "$TARGET_REPO" && git reset $TARGET_DIR && git checkout $TARGET_DIR && git fetch origin && git checkout -B upstream-oojsui origin/master || exit 1 @@ -48,10 +48,10 @@ then fi if [ "$OLDHASH" == "" ] then - OLDHASH=$(git rev-parse $OLDTAG) + OLDHASH=$(git rev-parse "$OLDTAG") if [ $? != 0 ] then - echo Could not find OOjs UI version + echo "Could not find OOjs UI version" cd - exit 1 fi @@ -72,13 +72,13 @@ NEWCHANGESDISPLAY=$(git log $OLDHASH.. --oneline --no-merges --reverse --color=a # Copy files # - Exclude the default non-svg stylesheet -rsync --recursive --delete --force --exclude 'oojs-ui.css' --exclude 'oojs-ui*.rtl.css' ./dist/ $TARGET_REPO/$TARGET_DIR || exit 1 +rsync --recursive --delete --force --exclude 'oojs-ui.css' --exclude 'oojs-ui*.rtl.css' ./dist/ "$TARGET_REPO/$TARGET_DIR" || exit 1 # Read the new version NEWVERSION=$(oojsuiversion) # Generate commit -cd $TARGET_REPO +cd "$TARGET_REPO" COMMITMSG=$(cat </dev/null || mktemp -d -t 'update-oojs'` # e.g. /tmp/update-oojs.rI0I5Vir +REPO_DIR=$(cd "$(dirname $0)/../.."; pwd) # Root dir of the git repo working tree +TARGET_DIR="resources/lib/oojs" # Destination relative to the root of the repo +NPM_DIR=$(mktemp -d 2>/dev/null || mktemp -d -t 'update-oojs') # e.g. /tmp/update-oojs.rI0I5Vir # Prepare working tree -cd $REPO_DIR && +cd "$REPO_DIR" && git reset $TARGET_DIR && git checkout $TARGET_DIR && git fetch origin && git checkout -B upstream-oojs origin/master || exit 1 @@ -20,7 +20,7 @@ git checkout -B upstream-oojs origin/master || exit 1 cd $NPM_DIR if [ -n "$1" ] then - npm install oojs@$1 || exit 1 + npm install "oojs@$1" || exit 1 else npm install oojs || exit 1 fi @@ -33,10 +33,10 @@ then fi # Copy file(s) -rsync --recursive --delete --force ./node_modules/oojs/dist $REPO_DIR/$TARGET_DIR || exit 1 +rsync --recursive --delete --force ./node_modules/oojs/dist "$REPO_DIR/$TARGET_DIR" || exit 1 # Clean up temporary area -rm -rf $NPM_DIR +rm -rf "$NPM_DIR" # Generate commit cd $REPO_DIR || exit 1 -- 2.20.1