CI - Jenkins自动化构建和自动化部署
2017-02-14 09:35
337 查看
https://jenkins.io/index.html 下载安装部署jenkins环境, 直接用ip加端口进行登录
http://localhost:8080,设置登录用户,密码进入Jenkins
系统管理-》Configure Global Security
设置安全域
也可以跳过用户登录:C:\Users\Administrator\.jenkins\config.xml 替换为:
<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured">
系统管理-》管理节点-》新建节点
勾选第二项为新建一
4000
个节点,勾选第三项并输入node name 为克隆节点
C:\Jenkins 为slave 机器上Jenkins的工作空间 目录
安装配置slave 机器
安装jdk,并且配置环境变量, 因为这里master用java-jar 来远程与slave 控制通信
安装slave Jenkins:http://confluence.netbraintech.com/confluence/pages/viewpage.action?pageId=51643386
Slave机器安装必备的工具,构建镜像,API 自动化BVT 安装了 jdk,python,.net framework,soupUI, WinRAR
Master 机器上新建-》自由风格项目-CreateNBEnviroment,如下 保存即可
这里的构建使用的是POWERSHELL, 因为启动镜像调用的powershell 脚本
在master上构建job ,作用在slave机器上,这里的salve机器用的10.10.4.110
源码管理用的SVN,输入SVN地址,登录账号,构建源码存放地址
配置好job之间的依赖关系,3中build 条件可供选择,一般选择第一项
批处理执行:
配置邮件
系统管理-》系统设置
1)系统管理员邮件地址设置为 邮件发送地址
填写发送邮件服务器,邮件后缀,发送邮件地址,密码,端口号
Ps: 这里的发送邮件地址 要和系统管理员邮件地址 保持一致
3)邮件通知
如果提示连接不上smtp server
需要C:\Program Files (x86)\Jenkins\Jenkins.xml 里修改节点,
添加WindowsServiceLifecycle -Dmail.smtp.starttls.enable=true
5)在job 上添加邮件接收者,这样就可以在job 构建完成之后接收邮件
6)附件添加,直接命名附件名称即可,附件默认放在workspace 对应工程下面
配置完成之后,就可以编译构建build:立即构建
点击项目编号 可以在控制台查看log
目前ng7.0 Bvt api Jenkins CI 的 流程分为5个job 构建
NG70UnBindLicense:用来解绑license
CreateNBEnviroment:恢复镜像
Restart_Jenkins_Slave; 重启slave Jenkins,并且配置管理员权限
NG70COPYBUILD: 从server上拷贝最新build 到本地
NG70APIBVTTes:执行初始化mongodb,安装build,修改配置文件,重启server,执行api,发送report
运行及流程方向为:
NG70UnBindLicense-》CreateNBEnviroment-》Restart_Jenkins_Slave-》NG70COPYBUILD-》NG70APIBVTTest
实现了镜像环境 安装最新build,并且执行api bvt 测试,并且激活license
遇见的问题难点及解决方案:
本地bat 批处理从server上拷贝build到本地可以实现,用Jenkins 调用bat失败
原因:10.10.10.1加入域了,本地机器也需要加入域,
解决方案:
a):机器加入域,并且 执行:NETDOM RESETPWD /Server:10.10.10.7 /UserD:datong\liufeng /PasswordD:netbrain.1
2)Jenkins 使用系统用户权限登录
本地bat安装build成功,Jenkins 调用批处理安装失败
原因:Jenkins调用bat 成功,但是安装exe 权限不够
解决方案:Jenkins——slave需要修改为管理员权限登录,这里用sc 远程重启server实现
修改配置文件时,文件的特殊符号会被当做变量使用,使定向输出时,文件缺少特殊符号,例如!
解决方案:etlocal enabledelayedexpansion 使用延时变量,修改作用域,并且在不适用延时变量的时候关闭
配置邮件的时候,提示smtp 连接不上
原因:Jenkins没有开启starttls
解决方案:C:\Program Files (x86)\Jenkins\Jenkins.xml 里修改节点,
添加WindowsServiceLifecycle -Dmail.smtp.starttls.enable=true
执行API时,调用解绑的接口,不能解绑
原因:恢复镜像之后,之前绑定的license 绑定的信息是机器之前的
解决方案:在恢复镜像之前,解绑license, 恢复镜像之后,直接绑定License,这样Jenkins ci构建成功之后,就绑定License了
http://localhost:8080,设置登录用户,密码进入Jenkins
系统管理-》Configure Global Security
设置安全域
也可以跳过用户登录:C:\Users\Administrator\.jenkins\config.xml 替换为:
<authorizationStrategy class="hudson.security.AuthorizationStrategy$Unsecured">
系统管理-》管理节点-》新建节点
勾选第二项为新建一
4000
个节点,勾选第三项并输入node name 为克隆节点
C:\Jenkins 为slave 机器上Jenkins的工作空间 目录
安装配置slave 机器
安装jdk,并且配置环境变量, 因为这里master用java-jar 来远程与slave 控制通信
安装slave Jenkins:http://confluence.netbraintech.com/confluence/pages/viewpage.action?pageId=51643386
Slave机器安装必备的工具,构建镜像,API 自动化BVT 安装了 jdk,python,.net framework,soupUI, WinRAR
Master 机器上新建-》自由风格项目-CreateNBEnviroment,如下 保存即可
这里的构建使用的是POWERSHELL, 因为启动镜像调用的powershell 脚本
在master上构建job ,作用在slave机器上,这里的salve机器用的10.10.4.110
源码管理用的SVN,输入SVN地址,登录账号,构建源码存放地址
配置好job之间的依赖关系,3中build 条件可供选择,一般选择第一项
批处理执行:
配置邮件
系统管理-》系统设置
1)系统管理员邮件地址设置为 邮件发送地址
填写发送邮件服务器,邮件后缀,发送邮件地址,密码,端口号
Ps: 这里的发送邮件地址 要和系统管理员邮件地址 保持一致
3)邮件通知
如果提示连接不上smtp server
需要C:\Program Files (x86)\Jenkins\Jenkins.xml 里修改节点,
添加WindowsServiceLifecycle -Dmail.smtp.starttls.enable=true
5)在job 上添加邮件接收者,这样就可以在job 构建完成之后接收邮件
6)附件添加,直接命名附件名称即可,附件默认放在workspace 对应工程下面
配置完成之后,就可以编译构建build:立即构建
点击项目编号 可以在控制台查看log
目前ng7.0 Bvt api Jenkins CI 的 流程分为5个job 构建
NG70UnBindLicense:用来解绑license
CreateNBEnviroment:恢复镜像
Restart_Jenkins_Slave; 重启slave Jenkins,并且配置管理员权限
NG70COPYBUILD: 从server上拷贝最新build 到本地
NG70APIBVTTes:执行初始化mongodb,安装build,修改配置文件,重启server,执行api,发送report
运行及流程方向为:
NG70UnBindLicense-》CreateNBEnviroment-》Restart_Jenkins_Slave-》NG70COPYBUILD-》NG70APIBVTTest
实现了镜像环境 安装最新build,并且执行api bvt 测试,并且激活license
遇见的问题难点及解决方案:
本地bat 批处理从server上拷贝build到本地可以实现,用Jenkins 调用bat失败
原因:10.10.10.1加入域了,本地机器也需要加入域,
解决方案:
a):机器加入域,并且 执行:NETDOM RESETPWD /Server:10.10.10.7 /UserD:datong\liufeng /PasswordD:netbrain.1
2)Jenkins 使用系统用户权限登录
本地bat安装build成功,Jenkins 调用批处理安装失败
原因:Jenkins调用bat 成功,但是安装exe 权限不够
解决方案:Jenkins——slave需要修改为管理员权限登录,这里用sc 远程重启server实现
修改配置文件时,文件的特殊符号会被当做变量使用,使定向输出时,文件缺少特殊符号,例如!
解决方案:etlocal enabledelayedexpansion 使用延时变量,修改作用域,并且在不适用延时变量的时候关闭
配置邮件的时候,提示smtp 连接不上
原因:Jenkins没有开启starttls
解决方案:C:\Program Files (x86)\Jenkins\Jenkins.xml 里修改节点,
添加WindowsServiceLifecycle -Dmail.smtp.starttls.enable=true
执行API时,调用解绑的接口,不能解绑
原因:恢复镜像之后,之前绑定的license 绑定的信息是机器之前的
解决方案:在恢复镜像之前,解绑license, 恢复镜像之后,直接绑定License,这样Jenkins ci构建成功之后,就绑定License了
相关文章推荐
- Linux平台搭建Jenkins+Maven+Shell实现自动化构建部署
- Centos7.3+Jenkins+Git+Maven 自动化构建部署项目(一)
- jenkins+mawen+svn实现自动化构建部署
- 【Jenkins教程二】基于Linux实现Jenkins+maven+tomcat的自动化构建部署项目
- 利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(三)(网内首发超详细版)
- svn + jenkins + maven 实现java环境的自动化构建和部署
- jenkins+tomcat+maven+svn实现自动化构建部署
- Jenkins部署.net自动化构建
- 利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(四)(网内首发超详细版)
- jenkins部署.net平台自动化构建的方法步骤
- 利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(五)(网内首发超详细版)
- Linux平台搭建Jenkins+Maven+Shell实现自动化构建部署
- svn + jenkins + maven 实现java环境的自动化构建和部署
- svn + jenkins + maven 实现java环境的自动化构建和部署
- 【Jenkins教程二】基于Linux实现Jenkins+maven+tomcat的自动化构建部署项目
- 利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(一)(网内首发超详细版)
- 【Jenkins教程三】基于Linux实现Jenkins+maven+git+tomcat的自动化构建部署项目
- 使用jenkins、docker、consul、nginx搭建支持自动化构建部署以及弹性伸缩的集群系统详细教程
- Jenkins 自动化构建与部署
- 利用apache+svn+jenkins+maven 实现java环境的自动化构建和部署(二)(网内首发超详细版)