import paramiko
import sys# 创建SSHClient实例对象
ssh = paramiko.SSHClient()
# 调用方法,表示没有存储远程机器的公钥,允许访问
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接远程机器  地址、端口、用户名和密码
ssh.connect('192.168.145.130', 22, 'huangjin', 'hj130826')def remoteRun(cmd):stdin, stdout, stderr = ssh.exec_command(cmd)output = stdout.read().decode()errinfo = stderr.read().decode()print(output + errinfo)return output + errinfo# 检查是否有之前版本运行
output = remoteRun('ps -ef|grep open_platform|grep -v grep')
# 如果存在 杀死进程
if 'python3 projec/cherrypy_startup.py open_platform'in output:print('服务运行中,停止服务')parts = output.split(' ')print(parts)pid = parts[5]remoteRun(f'kill -9 {pid}')
# 删除原来包
print('删除原来的包')
remoteRun('open_platform.zip')
# 上传安装包
print('上传安装包')
sftp = ssh.open_sftp()
sftp.put(r'd:\open_platform.zip', '/home/open_platform.zip')
sftp.close()
# 解压安装包
print('解压安装包')
remoteRun('unzip open_platform.zip')
print('ok')
# 运行
print('运行')
remoteRun('cd /home/open_platform; chmod +x run.sh; sh run.sh')
# 检查是否运行成功
print('是否运行成功')
output = remoteRun('ps -ef|grep open_platform|grep -v grep')
if 'python3 projec/cherrypy_startup.py open_platform'in output:print('服务运行成功')
else:print('服务没有运行')sys.exit(3)

  

转载于:https://www.cnblogs.com/sumday/p/11021411.html

Python自动化部署环境相关推荐

  1. python自动部署环境_selenium + python 部署自动化测试环境

    选择selenium和python其实是怀有私心的:码两行python,熟悉熟悉. selenium优点很多,我最看重的是支持多语言,足够简单,同时支持浏览器. 实际工作中,简单实用真的太重要了,谁都 ...

  2. K8S搭建自动化部署环境(三)Jenkins下载、安装和启动

    各位大佬,前文如下: K8S搭建自动化部署环境(一)安装Kubernetes K8S搭建自动化部署环境(二)安装K8S管理工具Kuboard V3 一.jenkins 下载 jenkins下载地址:h ...

  3. 搭建Jenkins实现自动化部署环境

    大家好,我是阿飞云 怕什么真理无穷,进一步有近一步的欢喜 ​ 本文是团队内小兄弟的学习笔记整理而来.看完本文大体了解为什么要使用Jenkins,部署Jenkins依赖的环境,以及如何用Jenkins进 ...

  4. K8S搭建自动化部署环境(四)Jenkins多分支流水线Blue Ocean的安装和使用

    各位大佬,前文如下: K8S搭建自动化部署环境(一)安装Kubernetes K8S搭建自动化部署环境(二)安装K8S管理工具Kuboard V3 K8S搭建自动化部署环境(三)Jenkins下载.安 ...

  5. Python—自动化部署工具:Fabric

    Fabric是python编写的一款自动化部署工具 Fabric依赖paramiko进行SSH交互,某种意义上Fabric是对paramiko的封装,封装完成后,不需要像使用paramiko一样处理S ...

  6. python自动化部署程序,聊聊Python自动化脚本部署服务器全流程(详细)

    原标题:聊聊Python自动化脚本部署服务器全流程(详细) 来源:AirPython 作者:星安果 1. 前言 大家好,我是安果! 日常编写的 Python 自动化程序,如果在本地运行稳定后,就可以考 ...

  7. python项目自动化部署_Jenkins+GitLab+Msbuild+Python自动化部署.Net项目

    发布应用 应用构建成功后,接下来是将构建项目的输出目录copy到应用服务器相应的站点目录中,由于目标的应用服务器都是windows系统,因此无法像linux系统一样通过ssh远程命令操作.目前提供了三 ...

  8. python自动化测试环境搭建_selenium+python自动化测试之环境搭建

    最近由于公司有一个向谷歌网站上传文件的需求,需要进行web的自动化测试,选择了selenium这个自动化测试框架,以前没有接触过这门技术,所以研究了一下,使用python来实现自动化脚本,从环境搭建到 ...

  9. Jenkins自动化部署环境搭建

    Jenkins实现流程图 1.1. docker部署jenkins,可避免很多问题 1.2. war包启动 下载war包链接:https://get.jenkins.io/war-stable/ je ...

最新文章

  1. 整理了 65 个 Matplotlib 案例,这能不收藏?
  2. 老子《道德经》第四十一章
  3. 西点军校最贵一课:没强大内心的人,没资格谈人生
  4. 在屏幕上输出你好的python语句是_编程实现:在屏幕上输出中文字符“你好,世界”。(输出结果中不带双引号)_学小易找答案...
  5. 对makefile中,变量定义中 通配符的理解
  6. linux 卸载lv,Linux 软件安装、卸载、查询
  7. useGeneratedKeys的用法
  8. 实现树状结构_组合模式 - 树状结构的优雅实现
  9. Spring Ioc 源码分析(一)- XML 解析
  10. 测试计划剔除 log剔除_我是如何在整个公司面前被剔除的(以及为什么这样做很好)...
  11. php属于复合型人才,【PHP】我国薪水上涨最快的行业
  12. vscode svn使用_使用Typescript封装Vue组件
  13. VS2015 还是VS2017 好用_如何卸载清理vs2017前vs2015,vs2013等版本
  14. 【BLE-CC2640】CC2640之OLED
  15. 计算机网络组建课设心得,计算机网络课程设计心得体会
  16. 利用Python进行数据分析笔记-pandas建模(statsmodels篇)
  17. CodeQL笔记之基本语法(一)
  18. 皮尔逊相关系数和检验P值
  19. 安卓App生成签名证书,uniapp生成自有证书打包
  20. oracle数据库工程师的工资,数据库开发工程师工资待怎么样

热门文章

  1. ★ Learn how you can use Adobe Creative Suite to create skins for Flex and AIR applications.
  2. 微软Silverlight==跨浏览器、跨客户平台的技术
  3. [转] ASP.NET中使用javascript
  4. 【Vue】父子组件的传值(父组件-->子组件、子组件-->父组件)
  5. Prototype(原型原型链)
  6. linux ftp服务器已拒绝访问,linux ftp服务器已拒绝
  7. 混合类型数据格式化输入
  8. springmvc为什么不能拦截jsp页面?
  9. idea部署tomcat并实现简单的web项目
  10. java 中加法递归_java 简单的加法 递归 从A加到B