Jenkins入门
目录
Java环境安装
JDK安装
https://www.oracle.com/technetwork/java/javase/downloads/index.html
环境变量
1. 添加JAVA_HOME
- 变量名:JAVA_HOME
- 变量值:C:\Program Files\Java\jdk1.8.0_181(根据自己的实际路径配置)
2. 添加CLASSPATH
- 变量名:CLASSPATH
- 变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;(记得前面有个“.”)
3. 编辑path
在系统变量中找到path变量名,双击或点击编辑,在末尾添加如下内容
- 变量名:path
- 变量值:;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
Jenkins MSI安装
此方法是在window端直接安装,如果采用此方法安装的话,后续开机可以直接用,不用启动Tomcat。
Jenkins Tomcat安装
此方法安装后,需要先启动Tomcat后才能使用
1.安装Tomcat,配置其环境变量
Tomcat安装
Tomcat官网:https://tomcat.apache.org/
选择合适的进行下载,例如:https://tomcat.apache.org/download-90.cgi
下载后解压,将其放置一个路径,例如:D:\rj-AnZhuang\apache-tomcat
Tomcat环境变量配置
1.新建TOMCAT_HOME变量
变量名:TOMCAT_HOME
变量值:D:\rj-AnZhuang\apache-tomcat(变量值即为我们下载的tomcat解压路径)
2.新建CATALINA_HOME变量
变量名:CATALINA_HOME
变量值:D:\rj-AnZhuang\apache-tomcat(CATALINA_HOME的变量值与TOMCAT_HOME的变量值是一样的)
3.修改path
在系统变量中找到path变量名,双击或点击编辑,在末尾添加如下内容
变量名:path
变量值:;%CATALINA_HOME%\bin;%CATALINA_HOME%\lib
启动Tomcat服务器
方法一:在cmd命令窗口下输入startup.bat回车,运行如下图所示(装了环境变量就不用切换到目录了)
方法二:双击启动startup.bat
验证Tomcat启动
Tomcat成功启动后,启动浏览器,在浏览器的地址栏里输入:http://localhost:8080/ ,然后回车,进入如下画面,表示Tomcat已经正确安装
Tomcat显示乱码问题
1.在Tomcat根目录下找到配置文件“logging.properties”,一般是在 apache-tomcat-8.5.51\conf下。
2.将其中的encoding = UTF-8配置项改为encoding = GBK。
3.保存修改后,重启Tomcat。
Jenkins War安装
1.Jenkins.war下载地址:https://mirrors.tuna.tsinghua.edu.cn/jenkins/war-stable/2.150.3/jenkins
2. 将安装包放到tomcat的webapps文件夹下
3. 启动jenkins(第一次启动的时候需要输入文件管理员密码,有给出相应的路径,去将密码复制过来即可;下一步点击左边的建议安装的插件;下一步创建用户)
重启Tomcat:startup.bat
在浏览器输入:http://localhost:8080/jenkins/
到这里Jenkins的环境已经安装完成,就可以去配置Jenkins,构建job了
构建任务
新建任务
1.新建任务
2.创建一个自由风格任务
任务配置
1.填写用例描述
2.指定目录,后续都是基于此目录
3.参数配置(可选,如果有用到参数的话可以配置)
4.触发(基于前面路径)
未带参数写法
带参数写法:(每个参数前后都要用%)
5.测试报告配置
任务指定执行
构建用例的时候,需要勾选限制服务器以及填写服务器名称
远程拉起Http任务
安装插件
下载安装Build Authorization Token Root 插件并重启Jenkins。
token配置
1.全局安全配置->授权策略->勾选匿名用户具有可读权限。
2..用户名->点击设置->API Token->点击生成->复制Token。
创建任务
创建任务->构建触发器->选择触发远程构建->输入Token。
备注:如果创建任务时参数化构建中添加参数, 则在post请求的时候需要带上参数
远程拉起
1.远程启动任务
远程请求URL路径:
War:http://IP:端口/jenkins/job/任务名 /build
exe:http://192.168.88.88:8080/view/Test_Demo/job/Test_JK_Demo/build
请求类型:POST
请求参数如下:
如果带参数的话
7.直接命令启动任务
curl -X POST http://192.168.88.88:8080/jenkins/job/Test_JK_Demo/build --user admin:1170dcb087de4da2de57391b036d737eb9
备注:Basic Auth认证标准写法;--user username:password
节点部署
Jenkins新建节点,启动方式没有“通过Java Web启动代理”选项
在Jenkins中,打开“系统管理”→“管理节点”→“新建节点”页面时,“启动方式”选项没有“通过Java Web启动代理”,怎么办?
打开“系统管理”,进入“全局安全配置”页面。
1.“JNLP代理协议的TCP端口” 配置成 “50005”,点开“代理协议...”,勾选“Java Web Start Agent Protocol/4(TLS加密)”。
2.配置路由器防火墙。注意:防火墙需要此端口映射出去,否则外部节点访问不了
2.创建节点
配置节点的JAVA Home的环境变量(从机的Java Home),避免调不到问题
第一步:进入节点页面
点launch,下载slave-agent.jnlp,放到节点远程工作目录 下
再右击:agent.jar链接,复制链接地址,会提示下载agent.jar,同样放到节点远程工作目录 下
第二步:
进入节点远程工作目录 下:执行如下命令
java -jar agent.jar -jnlpUrl http://XXX.XXX.XXX.XXX:8080/computer/test/slave-agent.jnlp -secret 4fe9e74fb15e2c9e10388d15973696ce5a65222a361cd9dc9879a81f55b7ad97 -workDir "D:\ProgramFiles2\Jenkins\var"
方法二:
在节点远程工作目录 下新建 一个bat文件,把如下命令放入:
java -jar agent.jar -jnlpUrl http://XXX.XXX.XXX.XXX:8080/computer/test/slave-agent.jnlp -secret 4fe9e74fb15e2c9e10388d15973696ce5a65222a361cd9dc9879a81f55b7ad97 -workDir "D:\ProgramFiles2\Jenkins\var"
然后双击这个文件就可以
测试报告
1.参考:https://www.cnblogs.com/yoyoketang/p/7518351.html
安装插件
HTML Publisher plugin
测试报告无法打开问题
Jenkins MSI安装解决方案
1.jenkins的安装分为jenkins.msi客户端安装和jenkins.war服务端安装,如果是jenkins.msi的安装,找到jenkins.xml文件
2.用Notepad++打开这个jenkins.xml文件,找到下图的arguments这一行,红色区域改成如下,改好后保存:
原来是:
-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle –jar
修改后:
-Xrs -Xmx256m -Dhudson.model.DirectoryBrowserSupport.CSP= -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar
邮件通知
参考
https://blog.csdn.net/mengtao0609/article/details/123867919
插件下载
Email Extension Plugin
配置
1.全局配置:Manage Jenkins->Configure System
点击Add添加放送邮箱的账号密码
2.下面是原生的邮件通知,功能比较少
勾选Use SMTP Authentication,Username中输入邮箱,Password输入授权密码 SSL表示是否对邮箱进行加密,如果勾选了SMTP Port使用465端口,如果不加密则使用25端口。
3.构建邮件配置
直接在Post-build Actions下Add post-build action,选择Editable Email Notification
Project Recipient List:收件人列表采用默认配置,也可以自己主动配置
Project Reply-To List:项目回复列表采用默认配置
Content Type:类型为默认HTML类型
Default Subject:默认标题模板,使用之前系统配置
Default Content:默认内容模板,使用之前系统配置
高级配置
QA
Jenkins无法读取python环境变量
问题:jenkins构建python项目提示:'python' 不是内部或外部命令,也不是可运行的程序或批处理文件
原因:要在jenkins配置本地环境变量
解决方案:添加python.exe的path值




