Просмотр исходного кода

Fix syntax errors in bootstrapper script

Nate McMaster 8 лет назад
Родитель
Сommit
509210bcac
1 измененных файлов с 23 добавлено и 19 удалено
  1. 23 19
      build.sh

+ 23 - 19
build.sh

@@ -11,7 +11,7 @@ RED="\033[0;31m"
 YELLOW="\033[0;33m"
 MAGENTA="\033[0;95m"
 DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
-[ -z "${DOTNET_HOME:-}"] && DOTNET_HOME="$HOME/.dotnet"
+[ -z "${DOTNET_HOME:-}" ] && DOTNET_HOME="$HOME/.dotnet"
 config_file="$DIR/korebuild.json"
 verbose=false
 update=false
@@ -23,7 +23,7 @@ tools_source=''
 # Functions
 #
 __usage() {
-    echo "Usage: $(basename ${BASH_SOURCE[0]}) [options] [[--] <MSBUILD_ARG>...]"
+    echo "Usage: $(basename "${BASH_SOURCE[0]}") [options] [[--] <MSBUILD_ARG>...]"
     echo ""
     echo "Arguments:"
     echo "    <MSBUILD_ARG>...         Arguments passed to MSBuild. Variable number of arguments allowed."
@@ -47,16 +47,17 @@ __usage() {
 }
 
 get_korebuild() {
+    local version
     local lock_file="$repo_path/korebuild-lock.txt"
-    if [ ! -f $lock_file ] || [ "$update" = true ]; then
-        __get_remote_file "$tools_source/korebuild/channels/$channel/latest.txt" $lock_file
+    if [ ! -f "$lock_file" ] || [ "$update" = true ]; then
+        __get_remote_file "$tools_source/korebuild/channels/$channel/latest.txt" "$lock_file"
     fi
-    local version="$(grep 'version:*' -m 1 $lock_file)"
+    version="$(grep 'version:*' -m 1 "$lock_file")"
     if [[ "$version" == '' ]]; then
         __error "Failed to parse version from $lock_file. Expected a line that begins with 'version:'"
         return 1
     fi
-    version="$(echo ${version#version:} | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
+    version="$(echo "${version#version:}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
     local korebuild_path="$DOTNET_HOME/buildtools/korebuild/$version"
 
     {
@@ -65,10 +66,10 @@ get_korebuild() {
             local remote_path="$tools_source/korebuild/artifacts/$version/korebuild.$version.zip"
             tmpfile="$(mktemp)"
             echo -e "${MAGENTA}Downloading KoreBuild ${version}${RESET}"
-            if __get_remote_file $remote_path $tmpfile; then
-                unzip -q -d "$korebuild_path" $tmpfile
+            if __get_remote_file "$remote_path" "$tmpfile"; then
+                unzip -q -d "$korebuild_path" "$tmpfile"
             fi
-            rm $tmpfile || true
+            rm "$tmpfile" || true
         fi
 
         source "$korebuild_path/KoreBuild.sh"
@@ -99,19 +100,22 @@ __get_remote_file() {
     local local_path=$2
 
     if [[ "$remote_path" != 'http'* ]]; then
-        cp $remote_path $local_path
+        cp "$remote_path" "$local_path"
         return 0
     fi
 
-    failed=false
-    if __machine_has curl ; then
-        curl --retry 10 -sSL -f --create-dirs -o $local_path $remote_path || failed=true
-    elif __machine_has wget; then
-        wget --tries 10 -O $local_path $remote_path || failed=true
+    local failed=false
+    if __machine_has wget; then
+        wget --tries 10 --quiet -O "$local_path" "$remote_path" || failed=true
     else
         failed=true
     fi
 
+    if [ "$failed" = true ] && __machine_has curl; then
+        failed=false
+        curl --retry 10 -sSL -f --create-dirs -o "$local_path" "$remote_path" || failed=true
+    fi
+
     if [ "$failed" = true ]; then
         __error "Download failed: $remote_path" 1>&2
         return 1
@@ -122,7 +126,7 @@ __get_remote_file() {
 # main
 #
 
-while [[ $# > 0 ]]; do
+while [[ $# -gt 0 ]]; do
     case $1 in
         -\?|-h|--help)
             __usage --no-exit
@@ -130,7 +134,7 @@ while [[ $# > 0 ]]; do
             ;;
         -c|--channel|-Channel)
             shift
-            channel=${1:-}
+            channel="${1:-}"
             [ -z "$channel" ] && __usage
             ;;
         --config-file|-ConfigFile)
@@ -144,7 +148,7 @@ while [[ $# > 0 ]]; do
             ;;
         -d|--dotnet-home|-DotNetHome)
             shift
-            DOTNET_HOME=${1:-}
+            DOTNET_HOME="${1:-}"
             [ -z "$DOTNET_HOME" ] && __usage
             ;;
         --path|-Path)
@@ -213,4 +217,4 @@ fi
 
 get_korebuild
 install_tools "$tools_source" "$DOTNET_HOME"
-invoke_repository_build "$repo_path" $@
+invoke_repository_build "$repo_path" "$@"