|
@@ -130,6 +130,16 @@ func DownCommand(conn *websocket.Conn, hash, projectName, fileName, dir string) |
|
|
} |
|
|
} |
|
|
defer tfile.Close() |
|
|
defer tfile.Close() |
|
|
|
|
|
|
|
|
|
|
|
//serverSh := shell.NewShell(config.ServerIpfsUrl) |
|
|
|
|
|
////检测引导节点是否连接成功 |
|
|
|
|
|
//isUp := serverSh.IsUp() |
|
|
|
|
|
//if !isUp { |
|
|
|
|
|
// if err := conn.WriteMessage(websocket.TextMessage, []byte("-1")); err != nil { |
|
|
|
|
|
// return err |
|
|
|
|
|
// } |
|
|
|
|
|
// return nil |
|
|
|
|
|
//} |
|
|
|
|
|
|
|
|
cmd := exec.Command(ipfsPath,"get", hash,"-o",fmt.Sprint(absoluteDir+"\\"+fileName)) |
|
|
cmd := exec.Command(ipfsPath,"get", hash,"-o",fmt.Sprint(absoluteDir+"\\"+fileName)) |
|
|
progress := make(chan string,10000) |
|
|
progress := make(chan string,10000) |
|
|
var stdout, stderr []byte |
|
|
var stdout, stderr []byte |
|
@@ -294,6 +304,17 @@ func UploadCommand(conn *websocket.Conn,absolutePath,fileName,projectName,dir st |
|
|
} |
|
|
} |
|
|
defer tfile.Close() |
|
|
defer tfile.Close() |
|
|
|
|
|
|
|
|
|
|
|
serverSh := shell.NewShell(config.ServerIpfsUrl) |
|
|
|
|
|
//检测引导节点是否连接成功 |
|
|
|
|
|
isUp := serverSh.IsUp() |
|
|
|
|
|
if !isUp { |
|
|
|
|
|
if err := conn.WriteMessage(websocket.TextMessage, []byte("-1")); err != nil { |
|
|
|
|
|
return err |
|
|
|
|
|
} |
|
|
|
|
|
return nil |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var uploading bool=false |
|
|
var uploading bool=false |
|
|
|
|
|
|
|
|
cmd := exec.Command(ipfsPath, "add",absolutePath) |
|
|
cmd := exec.Command(ipfsPath, "add",absolutePath) |
|
@@ -401,19 +422,22 @@ func UploadCommand(conn *websocket.Conn,absolutePath,fileName,projectName,dir st |
|
|
|
|
|
|
|
|
projson,err :=json.Marshal(prog) |
|
|
projson,err :=json.Marshal(prog) |
|
|
|
|
|
|
|
|
|
|
|
err = serverSh.Pin(prog.Hash) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
log.Println("引导节点备份失败") |
|
|
|
|
|
log.Println(err) |
|
|
|
|
|
if err := conn.WriteMessage(websocket.TextMessage, []byte("-1")); err != nil { |
|
|
|
|
|
return err |
|
|
|
|
|
} |
|
|
|
|
|
return err |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
if err := conn.WriteMessage(websocket.TextMessage, projson); err != nil { |
|
|
if err := conn.WriteMessage(websocket.TextMessage, projson); err != nil { |
|
|
panic(err) |
|
|
|
|
|
|
|
|
log.Println(err) |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
go func() { |
|
|
|
|
|
serverSh := shell.NewShell(config.ServerIpfsUrl) |
|
|
|
|
|
err = serverSh.Pin(prog.Hash) |
|
|
|
|
|
if err != nil { |
|
|
|
|
|
log.Println("引导节点备份失败") |
|
|
|
|
|
log.Println(err) |
|
|
|
|
|
} |
|
|
|
|
|
log.Println("引导节点文件备份成功") |
|
|
|
|
|
}() |
|
|
|
|
|
|
|
|
log.Println("引导节点文件备份成功") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//本地文件夹拷贝 |
|
|
//本地文件夹拷贝 |
|
|
err = sh.Get(prog.Hash,fmt.Sprint((absoluteDir+"\\"+fileName))) |
|
|
err = sh.Get(prog.Hash,fmt.Sprint((absoluteDir+"\\"+fileName))) |
|
|