Jrohy 4 роки тому
батько
коміт
1322f5a7ca
1 змінених файлів з 16 додано та 6 видалено
  1. 16 6
      install.sh

+ 16 - 6
install.sh

@@ -25,6 +25,14 @@ colorEcho(){
     echo -e "\033[${COLOR}${@:2}\033[0m"
 }
 
+catchExit() {
+    rm -rf $TEMP_PATH $FILE_NAME
+    echo ""
+    exit 0
+}
+
+trap catchExit 1 2 3 9 15 20 exit
+
 #######get params#########
 while [[ $# > 0 ]];do
     KEY="$1"
@@ -131,16 +139,18 @@ installGo(){
     FILE_NAME="go${INSTALL_VERSION}.$VDIS.tar.gz"
     local TEMP_PATH=`mktemp -d`
 
-    if [[ $CAN_GOOGLE == 0 ]];then
+    curl -H 'Cache-Control: no-cache' -L https://dl.google.com/go/$FILE_NAME -o $FILE_NAME
+    tar -C $TEMP_PATH -xzf $FILE_NAME
+    if [[ $? != 0 ]];then
+        colorEcho $YELLOW "\n解压失败! 正在切换下载源重新下载..."
+        rm -rf $FILE_NAME
         curl -H 'Cache-Control: no-cache' -L https://gomirrors.org/dl/go/$FILE_NAME -o $FILE_NAME
-    else
-        curl -H 'Cache-Control: no-cache' -L https://dl.google.com/go/$FILE_NAME -o $FILE_NAME
+        tar -C $TEMP_PATH -xzf $FILE_NAME
+        [[ $? != 0 ]] && { colorEcho $YELLOW "\n解压失败!"; exit 1; }
+
     fi
-    tar -C $TEMP_PATH -xzf $FILE_NAME
-    [[ $? != 0 ]] && { colorEcho $YELLOW "\n解压失败!"; rm -rf $TEMP_PATH $FILE_NAME; exit 1; }
     [[ -e /usr/local/go ]] && rm -rf /usr/local/go
     mv $TEMP_PATH/go /usr/local/
-    rm -rf $TEMP_PATH $FILE_NAME
 }
 
 main(){