Commit 9dde8ef6 authored by szh's avatar szh

更新节点下载逻辑 删除配置参数downloaddir

parent dc4772c3
......@@ -55,5 +55,4 @@ Auto=/home/pi/chain33-pai/auto.sh
Start=/home/pi/chain33-pai/star.sh
StartUp=/home/pi/chain33-pai/startup.sh
DownloadUrl=https://bty33.oss-cn-shanghai.aliyuncs.com/raspberry/
DownloadDir=temp_pai
VersionUrl=http://112.124.4.47:8800/pai/latestversion
......@@ -331,4 +331,21 @@ func DownLoadFile(url string,file string,ty int32) error {
}
return nil
}
func GetAbsPath(key string) string {
str := getProcessInfo(key)
sstr := strings.Split(str,"\n")
regstr := util.DeleteExtraSpace(sstr[0])
params := strings.Split(regstr," ")
if len(params) == 11 {
if params[10] != "" {
if i := strings.LastIndex(params[10], "/"); i >= 0 {
return params[10][0:i+1]
}
return ""
}
return ""
}
return ""
}
\ No newline at end of file
......@@ -79,7 +79,6 @@ type Chain33_pai struct {
Start string
StartUp string
DownloadUrl string
DownloadDir string
VersionUrl string
}
var Chain33Pai=&Chain33_pai{}
......
......@@ -68,6 +68,7 @@ func UpdateNode(c *gin.Context){
appG.Response(http.StatusOK, e.NODE_ERROR,"node internal error,could not start node")
return
}
absPath := app.GetAbsPath(setting.BityuanSetting.Name)
app.BityuanFlag = true
app.UpdateInfo.Flag = false
setting.FreshVersion()
......@@ -121,7 +122,7 @@ func UpdateNode(c *gin.Context){
return
}
//备份原文件 确保没有alias 关联
bak := exec.Command("cp",setting.BityuanSetting.Name,setting.BityuanSetting.Name+".bak")
bak := exec.Command("cp",absPath+setting.BityuanSetting.Name,absPath+setting.BityuanSetting.Name+".bak")
err = bak.Start()
if err != nil {
log.Println("bak",err)
......@@ -139,7 +140,7 @@ func UpdateNode(c *gin.Context){
return
}
//备份配置文件
bakconf := exec.Command("cp","bityuan.toml","bityuan.toml.bak")
bakconf := exec.Command("cp",absPath+"bityuan.toml",absPath+"bityuan.toml.bak")
err = bakconf.Start()
if err != nil {
log.Println("bakconf",err)
......@@ -157,7 +158,7 @@ func UpdateNode(c *gin.Context){
return
}
//替换原执行文件
mv := exec.Command("mv",setting.BityuanSetting.Name+"_"+latestVersion+"/"+setting.BityuanSetting.Name,".")
mv := exec.Command("mv",setting.BityuanSetting.Name+"_"+latestVersion+"/*",absPath)
err = mv.Start()
if err != nil {
log.Println("mv",err)
......@@ -174,23 +175,23 @@ func UpdateNode(c *gin.Context){
app.BityuanFlag = false
return
}
mv2 := exec.Command("mv",setting.BityuanSetting.Name+"_"+latestVersion+"/"+"bityuan.toml",".")
err = mv2.Start()
if err != nil {
log.Println("mv2",err)
appG.Response(http.StatusOK, e.MV_ERROR, err)
app.UpdateInfo.Flag = true
app.BityuanFlag = false
return
}
err = mv2.Wait()
if err != nil {
log.Println("mv2",err)
appG.Response(http.StatusOK, e.MV_ERROR, err)
app.UpdateInfo.Flag = true
app.BityuanFlag = false
return
}
//mv2 := exec.Command("mv",setting.BityuanSetting.Name+"_"+latestVersion+"/"+"bityuan.toml",".")
//err = mv2.Start()
//if err != nil {
// log.Println("mv2",err)
// appG.Response(http.StatusOK, e.MV_ERROR, err)
// app.UpdateInfo.Flag = true
// app.BityuanFlag = false
// return
//}
//err = mv2.Wait()
//if err != nil {
// log.Println("mv2",err)
// appG.Response(http.StatusOK, e.MV_ERROR, err)
// app.UpdateInfo.Flag = true
// app.BityuanFlag = false
// return
//}
remove := exec.Command("rm","-rf",setting.BityuanSetting.Name+"_"+latestVersion,name)
err = remove.Start()
if err != nil {
......
......@@ -126,7 +126,7 @@ func UpdatePai(c *gin.Context) {
return
}
//替换原执行文件
mv := exec.Command("mv",setting.Chain33Pai.DownloadDir+"/"+setting.Chain33Pai.Name,".")
mv := exec.Command("mv",setting.Chain33Pai.Name+"_"+req.Version+"/"+setting.Chain33Pai.Name,".")
err = mv.Start()
if err != nil {
log.Println("mv",err)
......@@ -145,7 +145,7 @@ func UpdatePai(c *gin.Context) {
//删除temp文件夹
//替换原执行文件
remove := exec.Command("rm","-rf",setting.Chain33Pai.DownloadDir,name)
remove := exec.Command("rm","-rf",setting.Chain33Pai.Name+"_"+req.Version,name)
err = remove.Start()
if err != nil {
appG.Response(http.StatusOK, e.RM_ERROR, err)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment