jenkins自动部署到linux服务器记录
来源:互联网 发布:php工程师面试题及答案 编辑:程序博客网 时间:2024/04/28 01:03
场景是这样的:开发打包出来放到windows共享目录上,然后我们测试去取安装包然后上传到linux服务器,解压包,执行安装命令。
今天刚好把这块流程用jenkins自动执行出来,记录一下
问题1:
如何从共享文件夹里把安装包拷贝到jenkins工程文件下呢?
因为我电脑是记住远程文件服务器的密码的直接写python 复制是没有问题的。
然后我放到jenkins上去跑,报了权限的问题。我jenkins服务器也是记住共享文件服务器密码的。
于是想到另一个办法,做映射,做好映射之后,用jenkins跑,提示没有这个文件夹。
于是写了个bat每次跑的时候做映射,第一次还ok第二次又报错,说上一次连接没失效,无法连接。然后我就在bat前加一个每次做映射之前断开之前所有映射。
bat和python的命令要用两个命令框
这个是映射的share.bat文件内容,因为偶尔会出现一些64错误,所以我加了个判断,出错再执行一遍。
net use * /delete /ynet use z: \\192.168.24.160\Share\ /user:username passwordecho %errorlevel%if not %errorlevel%==0 net use z: \\192.168.24.160\Share\ /user:username password
这个是从共享文件服务器复制到jenkins服务器的脚本cp.py
#coding=utf-8import osimport sysimport shutilsharename=u'Z:/'+sys.argv[1]newname=u'C:\Program Files (x86)\Jenkins\workspace\工控工具箱自动部署\gk\gksec.tar.gz'print "start copy file"shutil.copyfile(sharename,newname)print "finish copy file"
好了,第一个问题解决了,项目文件夹下有个安装包,第二个问题是怎么把安装包上传到linux服务器,并执行linux命令
这个网上教程很多很详细,我就不写了,具体可以百度 jenkins 远程ssh文件上传
文件上传上去以后,我们还要监控web平台什么时候能正常打开,这样的话才能,执行我们的测试脚本。
所以我写了个脚本去监控check.py
import requestsimport sysimport timeimport warningswarnings.filterwarnings("ignore")url = "https://"+sys.argv[1]+":10443/login"while True: try: r=requests.get(url,timeout=5,verify=False) if r.status_code == 200: print "gksec started!" break else: print "gksec error!" except: print "timeout" time.sleep(10)
接下来给大家一些截图
阅读全文
0 0
- jenkins自动部署到linux服务器记录
- linux服务器配置jenkins maven svn自动部署到tomcat
- linux服务器配置jenkins maven svn自动部署到tomcat
- Jenkins自动部署到(远程)tomcat服务器
- linux服务器部署jenkins,让代码定时自动编译
- jenkins自动部署到tomcat
- Jenkins部署到远程服务器
- jenkins配置应用自动部署到docker
- Jenkins自动部署maven项目到tomcat
- Jenkins自动部署maven项目到tomcat
- jenkins自动部署到tomcat/weblogic
- linux服务器部署记录
- Jenkins构建本地项目到服务器上自动部署的方法
- jenkins部署到tomcat服务器上
- 使用wagon-maven-plugin自动部署文件到Linux服务器
- Linux下安装Jetty服务器部署Jenkins
- Jenkins 多服务器自动部署,发布到多台服务器
- JENKINS+MAVEN+GIT+TOMCAT自动构建部署记录
- Android 7.1 新特性:快捷方式 Shortcuts 详解
- 在ubuntu上开发编译内核模块,并查看printk打印的消息
- Android 图标自适应:用 TextView 来显示图片 & 生成自己的字体库
- 在Github上删除一个项目
- cookie本地记住密码
- jenkins自动部署到linux服务器记录
- 熟练这些,才会知道 Android studio 有多高效
- 自动客服功能的微信小程序
- 还在用枚举?我早就抛弃了!(Android 注解详解)
- web项目jquery实现本地图片预览
- 小诗《心结》
- 常用电脑软件你选对了吗?(知道的不知道的,这些软件每个都值得你安装)
- Oracle利用PIVOT和UNPIVOT进行行列转换
- 一文详尽 Android 通信:四大组件之间 & 进程间 & 线程间 & 多个App间