You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
1.3 KiB

package main
import (
"dsSzxy/Utils/ConfigUtil"
"dsSzxy/Utils/SftpUtil"
"dsSzxy/Utils/SshUtil"
"io/ioutil"
"log"
)
func main() {
var buildPath=ConfigUtil.DistributeLocalPath+"/build"
//声明远端SSH管理器
cli := SshUtil.New(ConfigUtil.DistributeIp, ConfigUtil.DistributeUser, ConfigUtil.DistributePwd,int(ConfigUtil.DistributePort))
//杀掉进程
cli.Run("ps -ef |grep dsSzxy |awk '{print $2}'|xargs kill -9")
//sftp上传文件及文件夹
sftpClient, err := SftpUtil.Connect(ConfigUtil.DistributeUser, ConfigUtil.DistributePwd, ConfigUtil.DistributeIp,int(ConfigUtil.DistributePort))
if err != nil {
log.Fatal(err)
}
defer sftpClient.Close()
_, errStat := sftpClient.Stat(ConfigUtil.DistributeRemotePath)
if errStat != nil {
log.Fatal(ConfigUtil.DistributeRemotePath + " remote path not exists!")
}
_, err = ioutil.ReadDir(buildPath)
if err != nil {
log.Fatal(buildPath + " local path not exists!")
}
SftpUtil.UploadDirectory(sftpClient, buildPath, ConfigUtil.DistributeRemotePath)
//执行SSH命令行,授权
cli.Run("chmod +x /usr/local/dsMin/dsSzxy/dsSzxy")
cli.Run("chmod +x /usr/local/dsMin/dsSzxy/*.sh")
cli.Run("cd /usr/local/dsMin/dsSzxy && dos2unix *.sh")
//启动
cli.Run("cd /usr/local/dsMin/dsSzxy && ./start.sh")
log.Println("通用工具服务上传并启动成功!")
}