简述:
主要思路是用paramiko,将每次部署都要rz 添加需要部署的文件,备份,重启等操作集合在一个脚本中,每次部署只需要改下文件名及部署路径(单个文件需要修改,web.zip整包不需要做修改,可以直接执行),本篇文章仅以html替换文件为例,web.zip包大同小异。
代码展示:
首先定义一些基础的方法:
其中trans_connect、trans_web这两个函数用于上传部署的文件,ssh_connect、ssh_exec_cmd、ssh_close用于执行一些必须的linux命令(备份mv、解压unzip、重启restart等)
主要执行函数:
说明:
1.host、username、password即平时自己连xshell的 地址、用户名、密码,默认端口 22
2.filename为需要替换的文件名,path为文件所在linux路径,localpath为本地windows路径
3.部署之前需要先备份文件,cd 到path,然后mv 命令备份,备份完上传文件,最后重启服务器
说明:之前重启服务的时候服务stop之后一直起不来,翻了不少资料,也请教运维的小伙伴,最后无意中看了关于frabic的文章,解决重启服务出错时,在最后加了参数 pty=False,所以误打误撞在最后service tomcat_iorder_appsvr restart后面加了参数 get_pty=False,重启服务成功
That's all
欢迎批评指正,交流学习!