Commit 20efdd13 authored by ligaishun's avatar ligaishun

Update process.go

parent 0f6a48ec
...@@ -30,7 +30,7 @@ type updateInfo struct { ...@@ -30,7 +30,7 @@ type updateInfo struct {
} }
var Wallet ProcessInfo var Bityuan ProcessInfo
var UpdateInfo updateInfo var UpdateInfo updateInfo
var NodeError error var NodeError error
...@@ -62,31 +62,31 @@ func getWalletInfo()error{ ...@@ -62,31 +62,31 @@ func getWalletInfo()error{
rawProcessInfo:=getProcessInfo(setting.BityuanSetting.Name) rawProcessInfo:=getProcessInfo(setting.BityuanSetting.Name)
log.Println(rawProcessInfo) log.Println(rawProcessInfo)
if rawProcessInfo==""{ if rawProcessInfo==""{
StartProcess(setting.Chain33Pai.Auto) StartProcess(setting.Chain33Pai.Auto)
var buffer bytes.Buffer var buffer bytes.Buffer
cmd:=exec.Command("find","/media","-name",setting.BityuanSetting.Name) cmd:=exec.Command("find","/media","-name",setting.BityuanSetting.Name)
cmd.Stdout=&buffer cmd.Stdout=&buffer
cmd.Start() cmd.Start()
cmd.Wait() cmd.Wait()
if buffer.String()==""{ if buffer.String()==""{
log.Println("node dose not exist") log.Println("node dose not exist")
return fmt.Errorf("node dose not exist") return fmt.Errorf("node dose not exist")
}else{ }else{
fmt.Println(buffer.String()) fmt.Println(buffer.String())
rawProcessInfo=getProcessInfo(setting.BityuanSetting.Name) rawProcessInfo=getProcessInfo(setting.BityuanSetting.Name)
if rawProcessInfo==""{ if rawProcessInfo==""{
log.Println("node down") log.Println("node down")
return errors.New("node down") return errors.New("node down")
} }
}
} }
}
record:=StrFilter(strings.Split(rawProcessInfo," "),"") record:=StrFilter(strings.Split(rawProcessInfo," "),"")
{ {
Wallet.User=record[0] Bityuan.User=record[0]
Wallet.Pid=record[1] Bityuan.Pid=record[1]
Wallet.Path=record[10] Bityuan.Path=record[10]
Wallet.PName=path.Base(Wallet.Path) Bityuan.PName=path.Base(Bityuan.Path)
} }
return nil return nil
} }
...@@ -114,25 +114,39 @@ func CornProcessJob(ticker *time.Ticker){ ...@@ -114,25 +114,39 @@ func CornProcessJob(ticker *time.Ticker){
} }
func GetLatestVersion()string{ func GetLatestVersion()string{
resp, _ := http.Get(setting.BityuanSetting.VersionPath) req, err := http.NewRequest("GET", setting.BityuanSetting.VersionPath, nil)
req.Close=true
req.Header.Add("Connection","close")
if err!=nil{
return ""
}
resp,err:= http.DefaultClient.Do(req)
if err!=nil{
fmt.Println(err)
return ""
}
defer resp.Body.Close()
rd:=bufio.NewReader(resp.Body) rd:=bufio.NewReader(resp.Body)
for{ for{
line,err:=rd.ReadString('\n') line,err:=rd.ReadString('\n')
fmt.Println(line)
if err==io.EOF{ if err==io.EOF{
break break
} }
if ok, _ := regexp.MatchString("version", line); ok { if ok, _ := regexp.MatchString("version", line); ok {
return strings.Split( strings.Split(line, "=")[1], "\"")[1] return strings.Split( strings.Split(line, "=")[1], "\"")[1]
break break
} }
} }
return "" return ""
} }
func DownLoadLatestVersion()error{ func DownLoadLatestVersion()error{
git:=exec.Command("git","clone",setting.BityuanSetting.GitPath,"./"+setting.BityuanSetting.Name) git:=exec.Command("git","clone",setting.BityuanSetting.GitPath,"./"+setting.BityuanSetting.Name)
sed:=exec.Command("sed", fmt.Sprintf("15,18 s/bityuan/",setting.BityuanSetting.Name,"/1") ,"Makefile") sed:=exec.Command("sed", fmt.Sprintf("15,18 s/bityuan/%s/1",setting.BityuanSetting.Name) ,"Makefile")
makeb:=exec.Command("make") makeb:=exec.Command("make")
git.Start() git.Start()
err:=git.Wait() err:=git.Wait()
......
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