import sys import time import os import paramiko from pygments.lexers import shell baseconfig = { "ip": ", "port": , "username": "", "password": "“, "localjar": "", "remotedir": "/w/","package":1 } if(baseconfig["package"] == 1): print("===========开始打包===========") os.system('mvn package -Dmaven.compile.fork=true -T 1C -Dmaven.test.skip=true') print("===========打包完成===========") localjar = baseconfig["localjar"] jarpath = sys.path[0] + "/target/" + localjar ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect(hostname=baseconfig["ip"], port=baseconfig["port"], username=baseconfig["username"], password=baseconfig["password"]) ssh.get_transport() sftp = paramiko.SFTPClient.from_transport(ssh.get_transport()) remotedir = baseconfig["remotedir"] sftp.put(jarpath, remotedir + localjar) print("===========上传成功===========") # 如果命令间有依赖关系,即 前一个命令执行成功才接着执行第二个命令,那么用cmd1 && cmd2 # 如果命令间无任何依赖关系,简单地顺序执行即可,那么用cmd1; cmd2 shell = "cd %s;source /root/.bash_profile && ./run.sh" % (remotedir) stdin, stdout, stderr = ssh.exec_command(shell) print("===========重启成功===========")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。