diff --git a/dsCommonTools/.idea/workspace.xml b/dsCommonTools/.idea/workspace.xml index 0b752f21..89b1099d 100644 --- a/dsCommonTools/.idea/workspace.xml +++ b/dsCommonTools/.idea/workspace.xml @@ -3,10 +3,8 @@ - - - - + + - + + + + + + + + + + @@ -71,6 +78,7 @@ + diff --git a/dsCommonTools/Shell/debug.sh b/dsCommonTools/Shell/debug.sh new file mode 100644 index 00000000..2cbdd87f --- /dev/null +++ b/dsCommonTools/Shell/debug.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +# 杀掉进程 +kill -9 `pgrep -f dsCommonTools` 2>/dev/null +sleep 3 + +cd /usr/local/dsMin/dsCommonTools +chmod +x dsCommonTools +# 运行为后台进程1 +/usr/local/dsMin/dsCommonTools/dsCommonTools diff --git a/dsCommonTools/Shell/start.sh b/dsCommonTools/Shell/start.sh new file mode 100644 index 00000000..a29ae752 --- /dev/null +++ b/dsCommonTools/Shell/start.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +# 杀掉进程 +kill -9 `pgrep -f dsCommonTools` 2>/dev/null +sleep 3 + +chmod +x dsCommonTools +# 运行为后台进程 +nohup /usr/local/dsMin/dsCommonTools/dsCommonTools >> /usr/local/dsMin/dsCommonTools/dsCommonTools.log 2>&1 & diff --git a/dsCommonTools/Shell/stop.sh b/dsCommonTools/Shell/stop.sh new file mode 100644 index 00000000..899b115a --- /dev/null +++ b/dsCommonTools/Shell/stop.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +# kill 命令不使用 -9 参数时,会回调 onStop() 方法,确定不需要此回调建议使用 -9 参数 +kill -9 `pgrep -f dsCommonTools` 2>/dev/null diff --git a/dsCommonTools/Tools/Distribute.go b/dsCommonTools/Tools/Distribute.go new file mode 100644 index 00000000..a283b5b3 --- /dev/null +++ b/dsCommonTools/Tools/Distribute.go @@ -0,0 +1,41 @@ +package main + +import ( + "dsCommonTools/Utils/ConfigUtil" + "dsCommonTools/Utils/SftpUtil" + "dsCommonTools/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 dsCommonTools |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/dsCommonTools/dsCommonTools") + cli.Run("chmod +x /usr/local/dsMin/dsCommonTools/start.sh") + cli.Run("chmod +x /usr/local/dsMin/dsCommonTools/debug.sh") + cli.Run("chmod +x /usr/local/dsMin/dsCommonTools/stop.sh") + //启动 + cli.Run("cd /usr/local/dsMin/dsCommonTools && ./start.sh") + log.Println("通用工具服务上传并启动成功!") +} diff --git a/dsCommonTools/Tools/upx.exe b/dsCommonTools/Tools/upx.exe new file mode 100644 index 00000000..7f89f50a Binary files /dev/null and b/dsCommonTools/Tools/upx.exe differ diff --git a/dsCommonTools/Utils/SftpUtil/SftpUtil.go b/dsCommonTools/Utils/SftpUtil/SftpUtil.go new file mode 100644 index 00000000..ee0f108f --- /dev/null +++ b/dsCommonTools/Utils/SftpUtil/SftpUtil.go @@ -0,0 +1,95 @@ +package SftpUtil + +import ( + "fmt" + "github.com/pkg/sftp" + "golang.org/x/crypto/ssh" + "io/ioutil" + "log" + "os" + "path" + "path/filepath" + "time" +) + +func Connect(user, password, host string, port int) (*sftp.Client, error) { + var ( + auth []ssh.AuthMethod + addr string + clientConfig *ssh.ClientConfig + sshClient *ssh.Client + sftpClient *sftp.Client + err error + ) + // get auth method + auth = make([]ssh.AuthMethod, 0) + auth = append(auth, ssh.Password(password)) + + clientConfig = &ssh.ClientConfig{ + User: user, + Auth: auth, + Timeout: 30 * time.Second, + HostKeyCallback: ssh.InsecureIgnoreHostKey(), //ssh.FixedHostKey(hostKey), + } + + // connet to ssh + addr = fmt.Sprintf("%s:%d", host, port) + if sshClient, err = ssh.Dial("tcp", addr, clientConfig); err != nil { + return nil, err + } + + // create sftp client + if sftpClient, err = sftp.NewClient(sshClient); err != nil { + return nil, err + } + return sftpClient, nil +} + +func UploadFile(sftpClient *sftp.Client, localFilePath string, remotePath string) { + srcFile, err := os.Open(localFilePath) + if err != nil { + fmt.Println("os.Open error : ", localFilePath) + log.Fatal(err) + + } + defer srcFile.Close() + //golang中path.Base(pathString)函数,pathString的值必须为 linux 风格的路径,即 "/" 才能够正常的获取最后的路径段的值。 + localFilePath = filepath.ToSlash(localFilePath) + var remoteFileName = path.Base(localFilePath) + + dstFile, err := sftpClient.Create(path.Join(remotePath, remoteFileName)) + if err != nil { + fmt.Println("sftpClient.Create error : ", path.Join(remotePath, remoteFileName)) + log.Fatal(err) + + } + defer dstFile.Close() + + ff, err := ioutil.ReadAll(srcFile) + if err != nil { + fmt.Println("ReadAll error : ", localFilePath) + log.Fatal(err) + + } + dstFile.Write(ff) + fmt.Println(localFilePath + " copy file to remote server finished!") +} + +func UploadDirectory(sftpClient *sftp.Client, localPath string, remotePath string) { + localFiles, err := ioutil.ReadDir(localPath) + if err != nil { + log.Fatal("read dir list fail ", err) + } + for _, backupDir := range localFiles { + localFilePath := path.Join(localPath, backupDir.Name()) + remoteFilePath := path.Join(remotePath, backupDir.Name()) + if backupDir.IsDir() { + sftpClient.Mkdir(remoteFilePath) + UploadDirectory(sftpClient, localFilePath, remoteFilePath) + } else { + UploadFile(sftpClient, path.Join(localPath, backupDir.Name()), remotePath) + } + } + + fmt.Println(localPath + " copy directory to remote server finished!") +} diff --git a/dsCommonTools/Utils/SshUtil/SshUtil.go b/dsCommonTools/Utils/SshUtil/SshUtil.go new file mode 100644 index 00000000..31e2d31f --- /dev/null +++ b/dsCommonTools/Utils/SshUtil/SshUtil.go @@ -0,0 +1,65 @@ +package SshUtil + +import ( + "fmt" + "golang.org/x/crypto/ssh" + "net" + "time" +) + +type Cli struct { + IP string + Username string + Password string + Port int + client *ssh.Client + LastResult string +} + +func New(ip string, username string, password string, port ...int) *Cli { + cli := new(Cli) + cli.IP = ip + cli.Username = username + cli.Password = password + if len(port) <= 0 { + cli.Port = 22 + } else { + cli.Port = port[0] + } + return cli +} + +func (c Cli) Run(shell string) (string, error) { + if c.client == nil { + if err := c.connect(); err != nil { + return "", err + } + } + session, err := c.client.NewSession() + if err != nil { + return "", err + } + defer session.Close() + buf, err := session.CombinedOutput(shell) + + c.LastResult = string(buf) + return c.LastResult, err +} +//连接 +func (c *Cli) connect() error { + config := ssh.ClientConfig{ + User: c.Username, + Auth: []ssh.AuthMethod{ssh.Password(c.Password)}, + HostKeyCallback: func(hostname string, remote net.Addr, key ssh.PublicKey) error { + return nil + }, + Timeout: 10 * time.Second, + } + addr := fmt.Sprintf("%s:%d", c.IP, c.Port) + sshClient, err := ssh.Dial("tcp", addr, &config) + if err != nil { + return err + } + c.client = sshClient + return nil +} diff --git a/dsCommonTools/WinBuild/Distribute.exe b/dsCommonTools/WinBuild/Distribute.exe new file mode 100644 index 00000000..f72dbd9a Binary files /dev/null and b/dsCommonTools/WinBuild/Distribute.exe differ diff --git a/dsCommonTools/build/Config/Config.ini b/dsCommonTools/build/Config/Config.ini new file mode 100644 index 00000000..a1a76078 --- /dev/null +++ b/dsCommonTools/build/Config/Config.ini @@ -0,0 +1,46 @@ +#发布功能的配置 +[distribute] +ip = 10.10.14.187 +port = 22 +user = root +pwd = dsideal +remotePath = /usr/local/dsMin/dsCommonTools/ +localPath = E:/Work/dsMin/dsCommonTools + +#gin服务器的端口 +[server] +port = 8006 + +# 本项目名称,用于记录日志 +[project] +project_name = dsCommonTools + +[mysql] +ip = 10.10.14.187 +port = 22066 +db_name = base_db_dev +user = root +pwd = DsideaL147258369 + +[redis] +ip = 10.10.14.175 +port = 18890 +db = 0 + +#minio配置 +[minio] +minio_endpoint = 10.10.14.231:9000 +minio_accessKeyId = minioadmin +minio_secretAccessKey = minioadmin +minio_bucket = dsideal +download_prefix = http://10.10.14.231:9000/ + +[obs] +obs_endpoint = https://obs.myhuaweicloud.com +obs_accessKeyId = HZDE30KAN5C5OLJ9JCCF +obs_secretAccessKey = 3QO1IJNRrFZyER1e1NBBu4qSyqDfZ8Xup0YPzDFW +obs_bucket = dsideal + +[preview] +prefix = https://ow365.cn/?i=14531&furl=http://video.edusoa.com/crh/ + diff --git a/dsCommonTools/build/Config/logo.txt b/dsCommonTools/build/Config/logo.txt new file mode 100644 index 00000000..135f793b --- /dev/null +++ b/dsCommonTools/build/Config/logo.txt @@ -0,0 +1,6 @@ + _ _____ _______ _ + | | / ____| |__ __| | | + __| |___| | ___ _ __ ___ _ __ ___ ___ _ __ | | ___ ___ | |___ + / _` / __| | / _ \| '_ ` _ \| '_ ` _ \ / _ \| '_ \| |/ _ \ / _ \| / __| + | (_| \__ \ |___| (_) | | | | | | | | | | | (_) | | | | | (_) | (_) | \__ \ + \__,_|___/\_____\___/|_| |_| |_|_| |_| |_|\___/|_| |_|_|\___/ \___/|_|___/ \ No newline at end of file diff --git a/dsCommonTools/build/debug.sh b/dsCommonTools/build/debug.sh new file mode 100644 index 00000000..2cbdd87f --- /dev/null +++ b/dsCommonTools/build/debug.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +# 杀掉进程 +kill -9 `pgrep -f dsCommonTools` 2>/dev/null +sleep 3 + +cd /usr/local/dsMin/dsCommonTools +chmod +x dsCommonTools +# 运行为后台进程1 +/usr/local/dsMin/dsCommonTools/dsCommonTools diff --git a/dsCommonTools/build/dsCommonTools b/dsCommonTools/build/dsCommonTools new file mode 100644 index 00000000..f41af943 Binary files /dev/null and b/dsCommonTools/build/dsCommonTools differ diff --git a/dsCommonTools/build/start.sh b/dsCommonTools/build/start.sh new file mode 100644 index 00000000..a29ae752 --- /dev/null +++ b/dsCommonTools/build/start.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +# 杀掉进程 +kill -9 `pgrep -f dsCommonTools` 2>/dev/null +sleep 3 + +chmod +x dsCommonTools +# 运行为后台进程 +nohup /usr/local/dsMin/dsCommonTools/dsCommonTools >> /usr/local/dsMin/dsCommonTools/dsCommonTools.log 2>&1 & diff --git a/dsCommonTools/build/stop.sh b/dsCommonTools/build/stop.sh new file mode 100644 index 00000000..899b115a --- /dev/null +++ b/dsCommonTools/build/stop.sh @@ -0,0 +1,4 @@ +#!/bin/bash + +# kill 命令不使用 -9 参数时,会回调 onStop() 方法,确定不需要此回调建议使用 -9 参数 +kill -9 `pgrep -f dsCommonTools` 2>/dev/null diff --git a/dsCommonTools/go.mod b/dsCommonTools/go.mod index ba35b41d..c0d39178 100644 --- a/dsCommonTools/go.mod +++ b/dsCommonTools/go.mod @@ -15,11 +15,15 @@ require ( github.com/go-redis/redis v6.15.9+incompatible // indirect github.com/go-sql-driver/mysql v1.6.0 // indirect github.com/minio/minio-go/v6 v6.0.57 // indirect + github.com/pkg/sftp v1.13.1 // indirect github.com/satori/go.uuid v1.2.0 // indirect github.com/syndtr/goleveldb v1.0.0 // indirect github.com/tealeg/xlsx v1.0.5 // indirect github.com/xormplus/builder v0.0.0-20200331055651-240ff40009be // indirect github.com/xormplus/xorm v0.0.0-20210512135344-8123d584d5f5 // indirect + golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b // indirect + golang.org/x/net v0.0.0-20210614182718-04defd469f4e // indirect + golang.org/x/text v0.3.6 // indirect gopkg.in/flosch/pongo2.v3 v3.0.0-20141028000813-5e81b817a0c4 // indirect gopkg.in/ini.v1 v1.62.0 // indirect ) diff --git a/dsCommonTools/go.sum b/dsCommonTools/go.sum index 9f0915ea..41b30804 100644 --- a/dsCommonTools/go.sum +++ b/dsCommonTools/go.sum @@ -48,6 +48,8 @@ github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfV github.com/klauspost/cpuid v1.2.3 h1:CCtW0xUnWGVINKvE/WWOYKdsPV6mawAtvQuSl8guwQs= github.com/klauspost/cpuid v1.2.3/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek= github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ= +github.com/kr/fs v0.1.0 h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8= +github.com/kr/fs v0.1.0/go.mod h1:FFnZGqtBN9Gxj7eW1uZ42v5BccTP0vu6NEaFoC2HwRg= github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= @@ -70,6 +72,10 @@ github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lN github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= +github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= +github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= +github.com/pkg/sftp v1.13.1 h1:I2qBYMChEhIjOgazfJmV3/mZM256btk6wkCDRmW7JYs= +github.com/pkg/sftp v1.13.1/go.mod h1:3HaPG6Dq1ILlpPZRO0HVMrsydcdLt6HRDccSgb87qRg= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/satori/go.uuid v1.2.0 h1:0uYX9dsZ2yD7q2RtLRtPSdGDWzjeM3TbMJP9utgA0ww= github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0= @@ -80,6 +86,7 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+ github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs= github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= +github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/syndtr/goleveldb v1.0.0 h1:fBdIW9lB4Iz0n9khmH8w27SJ3QEJ7+IgjPEwGSZiFdE= github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ= github.com/tealeg/xlsx v1.0.5 h1:+f8oFmvY8Gw1iUXzPk+kz+4GpbDZPK1FhPiQRd+ypgE= @@ -96,11 +103,16 @@ golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACk golang.org/x/crypto v0.0.0-20190513172903-22d7a77e9e5f/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9 h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI= golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= +golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b h1:7mWr3k41Qtv8XlltBkDkl8LoP3mpSgBW8BUoxtEdbXg= +golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= golang.org/x/net v0.0.0-20190522155817-f3200d17e092 h1:4QSRKanuywn15aTZvI/mIDEgPQpswuFndXpOj3rKEco= golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= +golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= +golang.org/x/net v0.0.0-20210614182718-04defd469f4e h1:XpT3nA5TvE525Ne3hInMh6+GETgn27Zfm9dxsThnX2Q= +golang.org/x/net v0.0.0-20210614182718-04defd469f4e/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -109,9 +121,17 @@ golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7w golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20200116001909-b77594299b42 h1:vEOn+mP2zCOVzKckCZy6YsCtDblrpj/w7B9nxGNELpg= golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7 h1:iGu644GcxtEcrInvDsQRCwJjtCIOlT2V7IRt6ah2Whw= +golang.org/x/sys v0.0.0-20210423185535-09eb48e85fd7/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= +golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2 h1:tW2bmiBqwgJj/UpqtC8EpXEZVYOwU0yG4iWbprSVAcs= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= +golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= +golang.org/x/text v0.3.6 h1:aRYxNxv6iGQlyVaZmk6ZgYEDa+Jg18DxebPSrd6bg1M= +golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= @@ -127,3 +147,4 @@ gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= gopkg.in/yaml.v2 v2.2.8 h1:obN1ZagJSUGI0Ek/LBmuj4SNLPfIny3KsKFopxRdj10= gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= +gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= diff --git a/dsCommonTools/一键发布.cmd b/dsCommonTools/一键发布.cmd new file mode 100644 index 00000000..10c145cb --- /dev/null +++ b/dsCommonTools/一键发布.cmd @@ -0,0 +1,17 @@ +:: Windows汾 -ldflags "-s -w" +go build -o ./WinBuild/Distribute.exe ./Tools/Distribute.go + +:: Linux汾 +SET GOOS=linux +SET GOARCH=amd64 +go build -gcflags "all=-N -l" -o ./build/dsCommonTools main.go + + +:: Դļ +xcopy .\Shell\* .\build\ /y /e /i /q +xcopy .\Config\* .\build\Config /y /e /i /q + +:: ϴļ +.\WinBuild\Distribute.exe + +pause \ No newline at end of file