zhou.xiaoning hace 2 años
padre
commit
443899e04a
Se han modificado 1 ficheros con 16 adiciones y 14 borrados
  1. 16 14
      api/console/update.go

+ 16 - 14
api/console/update.go

@@ -40,26 +40,28 @@ func MakeUpdateScript(c *gin.Context) {
 	filename := c.DefaultQuery("filename", "")
 	if createsh() {
 		c.String(http.StatusOK, "正在执行升级, 升级会保留原有的config.yaml,且重启服务。注意:请勿刷新本页面。")
-		time.Sleep(3 * time.Second)
-		rx := regexp.MustCompile(`mtp20_access_*\.zip`) // mtp20_access_20221009092417.zip
-		names := rx.FindStringSubmatch(filename)
-		// 正则表达式检查文件名是否符合规范
-		if len(names) > 0 && names[0] == filename {
-			fmt.Println("filename:", filename)
-			cmd := exec.Command("sh", "./update.sh", filename)
-			fmt.Println("cmd param:", cmd.Args)
-			cmd.Run()
-		} else {
-			_ = exec.Command("sh", "./update.sh").Run()
-		}
-		println("执行脚本")
+		go runch(filename)
 	} else {
-		println("创建脚本失败, 可能是权限不足")
 		c.String(http.StatusBadRequest, "创建脚本失败, 可能是权限不足")
 		return
 	}
 }
 
+func runch(filename string) {
+	time.Sleep(3 * time.Second)
+	rx := regexp.MustCompile(`mtp20_access_*\.zip`) // mtp20_access_20221009092417.zip
+	names := rx.FindStringSubmatch(filename)
+	// 正则表达式检查文件名是否符合规范
+	if len(names) > 0 && names[0] == filename {
+		fmt.Println("filename:", filename)
+		cmd := exec.Command("sh", "./update.sh", filename)
+		fmt.Println("cmd param:", cmd.Args)
+		cmd.Run()
+	} else {
+		_ = exec.Command("sh", "./update.sh").Run()
+	}
+}
+
 // 生成update.sh文件
 func createsh() bool {
 	dir := ""