|
|
@@ -3,7 +3,6 @@ package console
|
|
|
import (
|
|
|
_ "embed"
|
|
|
"fmt"
|
|
|
- "mtp20access/global"
|
|
|
"net/http"
|
|
|
"os"
|
|
|
"os/exec"
|
|
|
@@ -38,7 +37,6 @@ func MakeUpdateScript(c *gin.Context) {
|
|
|
|
|
|
filename := c.DefaultQuery("filename", "")
|
|
|
if createsh() {
|
|
|
- c.String(http.StatusOK, "正在执行升级, 升级会保留原有的config.yaml,且重启服务。注意:请勿刷新本页面。")
|
|
|
rx := regexp.MustCompile(`mtp20_access_*\.zip`) // mtp20_access_20221009092417.zip
|
|
|
names := rx.FindStringSubmatch(filename)
|
|
|
// 正则表达式检查文件名是否符合规范
|
|
|
@@ -52,19 +50,21 @@ func MakeUpdateScript(c *gin.Context) {
|
|
|
}
|
|
|
} else {
|
|
|
c.String(http.StatusBadRequest, "创建脚本失败, 可能是权限不足")
|
|
|
+ return
|
|
|
}
|
|
|
+
|
|
|
+ c.String(http.StatusOK, "正在执行升级, 升级会保留原有的config.yaml,且重启服务。注意:请勿刷新本页面。")
|
|
|
}
|
|
|
|
|
|
// 生成update.sh文件
|
|
|
func createsh() bool {
|
|
|
- global.M2A_LOG.Info("4444444444")
|
|
|
dir := ""
|
|
|
if str, err := filepath.Abs(filepath.Dir(os.Args[0])); err == nil {
|
|
|
dir = strings.Replace(str, "\\", "/", -1)
|
|
|
} else {
|
|
|
return false
|
|
|
}
|
|
|
- global.M2A_LOG.Info("555555555555")
|
|
|
+
|
|
|
// 创建文件
|
|
|
if f, err := os.OpenFile(dir+"/update.sh", os.O_RDWR|os.O_TRUNC|os.O_CREATE, 0666); err == nil {
|
|
|
f.Write([]byte(strShell))
|
|
|
@@ -72,6 +72,6 @@ func createsh() bool {
|
|
|
} else {
|
|
|
return false
|
|
|
}
|
|
|
- global.M2A_LOG.Info("66666666666")
|
|
|
+
|
|
|
return true
|
|
|
}
|