Jenkins

https://blog.csdn.net/baidu_38432732/article/details/80499898
https://www.cnblogs.com/hellxz/p/jenkins_install_plugins_faster.html
https://blog.csdn.net/qq_28911061/article/details/105736129
https://blog.csdn.net/qq_21768483/article/details/80177920
https://blog.csdn.net/qq_23603437/article/details/82885375
https://mp.weixin.qq.com/s/nkH30jeetY5sG9RTQyNnJA

原理

在这里插入图片描述

准备工作

安装jdk1.8

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113374902

安装maven

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113375088

安装tomcat

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113375539

安装svn服务器

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113375793

安装jenkins

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113394187

svn+jenkins+maven构建项目

idea新建webapp maven项目

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113373732

jenkins新建任务

新建maven项目

在这里插入图片描述

添加svn地址和账号密码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

输入maven命令

在这里插入图片描述
或者用该插件也行
在这里插入图片描述

构建后的操作

在这里插入图片描述
要是没有这个选项插件那边需要下载,搜索Deploy就行了
在这里插入图片描述
工作空间查看构建后war包的地址
在这里插入图片描述
在这里插入图片描述

构建触发器

远程触发的基本原理是 SVN 服务器给 Jenkins 项目特定的 URL 地址发送请求, 但必须以请求参数的形式携带一个特定值,这个特定值就是这里的“身份验证令牌”。
在这里插入图片描述
那我们的url是

http://39.108.119.121:8080/jenkins/job/two_web/build?token=ATGUIGU_TOKEN

浏览器访问可以直接构建

获取 crumb 值

访问该URL
@之前是jenkins的账号和密码

http://admin:1bd726ee1c964a14a9ccefac0f0bf6d8@39.108.119.121:8080/jenkins/crumbIssuer/api/xml

在这里插入图片描述
则触发 Jenkins 远程构建时需要携带的请求消息头就是:

Jenkins-Crumb:ac328a20401618878c0c18d5f12572e3a1b4473214ecf5e7bc9416c163c4e386

Linux 的 curl 命令

Linux 的 curl 命令用来发送 HTTP 请求。
-X 参数:指定请求方式
-v 参数:显示响应结果
-u 参数:携带用户名/密码
-H 参数:携带请求消息头信息

示范:

curl -X post -v -u [Jenkins 用户名]:[Jenkins 密码] -H "请求消息头信息" http://[服务器 IP 地址]:[服务器端口 号]/jenkins/job/[Jenkins 项目名称]/build?token=[身份验证令牌]

我的

curl -X post -v -u admin:1bd726ee1c964a14a9ccefac0f0bf6d8 -H "Jenkins-Crumb:5e909869d0c1266a1d1edc6de0052a690858ee64cfdcd89ccdd9622e6b8257f3" http://39.108.119.121:8080/jenkins/job/two_web/build?token=ATGUIGU_TOKEN

如果jenkins和svn同一架机器,可以用内网网址

编辑 SVN 版本库中的钩子程序

钩子程序由 post-commit.tmpl 复制得到
程序路径,在仓库中的hooks文件夹中

/svn/dev_test/hooks

在这里插入图片描述

  • 这里注意不要使用任何扩展名。如果按照我们习惯的使用.sh 扩展名则钩 子程序无法正常工作。
  • 记得使用 chmod 命令设置为可执行权限

把原有内容注释,加入 curl 命令

curl -X post -v -u admin:1bd726ee1c964a14a9ccefac0f0bf6d8 -H "Jenkins-Crumb:5e909869d0c1266a1d1edc6de0052a690858ee64cfdcd89ccdd9622e6b8257f3" http://39.108.119.121:8080/jenkins/job/two_web/build?token=ATGUIGU_TOKEN

在这里插入图片描述

立即构建

这里可以先试试立即构建看看是否有没有啥问题
在这里插入图片描述

svn提交代码构建

如果立即构建没问题,试试提交本地提交svn代码,提交之后,jenkins会自动构建
在这里插入图片描述

浏览器访问项目

构建成功后,浏览器访问项目,路径就是jenkins配置的项目路径
在这里插入图片描述
在这里插入图片描述

补充

如果发生 Jenkins 服务器从 SVN 服务器下载代码不是最新版的情况,那么就在 SVN 服务器的 URL 地址后面加上@HEAD 强制要求下载最新版。
在这里插入图片描述

码云gitee+jenkins+maven构建

该资料来源:https://blog.csdn.net/qq_28911061/article/details/105736129

官网插件教程:https://gitee.com/help/articles/4193#article-header11
官网已经很详细了。

Jenkins安装插件:
git client
git
gitee

1.安装git

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113394955

2.jenkins配置git工具

在这里插入图片描述

3.Jenkins 【系统配置】添加gitee服务

在这里插入图片描述
Gitee API Token 输入你的 Gitee 私人令牌,获取地址:https://gitee.com/profile/personal_access_tokens

4.项目配置

General 配置之前配置的gitee服务连接
在这里插入图片描述
源码管理配置安装官方那样配置
在这里插入图片描述
点击 Advanced 按钮, Name 字段中输入 origin, Refspec 字段输入 +refs/heads/:refs/remotes/origin/ +refs/pull//MERGE:refs/pull//MERGE

origin

+refs/heads/*:refs/remotes/origin/* +refs/pull/*/MERGE:refs/pull/*/MERGE

触发器勾选webhook
在这里插入图片描述
重要的是要配置webhook密码,点击生成按钮
在这里插入图片描述
触发器暂时默认配置,
在这里插入图片描述
然后配置密码
在这里插入图片描述
在这里插入图片描述
经过测试,密码一定要配置,不然就会出现404问题

如果内网的话可以配置花生壳代理

其他项目配置(例如maven和构建后的操作)可参考:svn+jenkins+maven构建项目

git+jenkins+maven配置

资料来源:https://blog.csdn.net/qq_21768483/article/details/80177920
https://blog.csdn.net/qq_23603437/article/details/82885375

安装git

参考文章:https://blog.csdn.net/sinat_28317385/article/details/113394955

jenkins配置git工具

在这里插入图片描述

配置

启动自动构建,Jenkins需要在Hook URL中监听Github的Post请求,才会进行自动构建
要获取Jenkins的Hook URL,打开Jenkins首页控制台–》系统管理
在这里插入图片描述
在Github插件的配置中,点击“高级”按钮
在这里插入图片描述
启用Hook URL,并将Hook URL复制出来,并保存刚才的设置
在这里插入图片描述
第二步:配置Github项目仓库

还需要配置Github项目仓库,因为Github经常有代码处理动作,需要配置Github项目仓库在处理这些动作的同时会发送信号至Jenkins,才使用Jenkins自动构建
在这里插入图片描述
在"Webhooks"选项卡中,点击"Add webhook"
在这里插入图片描述
将在Jenkins生成的Hook URL填入至Payload URL中,另外,选择自主事件
在这里插入图片描述
保存WebHook之后
在这里插入图片描述
第三步:配置Jenkins项目
在这里插入图片描述
在这里插入图片描述

其他配置

邮件配置

参考:
https://blog.csdn.net/baidu_38432732/article/details/80499898
https://www.cnblogs.com/yangxia-test/p/4366172.html

jmeter+Jenkins自动化性能测试高级用法

资料来源:https://mp.weixin.qq.com/s/nkH30jeetY5sG9RTQyNnJA

问题背景

  • 前两天,自己在搭建好了jmeter+Jenkins自动化性能测试后思考,若有时候我们需要修改并发数、测试时长或者请求地址变了之类的,难道我们需要一个个的去修改脚本么?有么有更加便利的方法?

解决方法

  • 利用Jmeter 命令行下动态化参数传递和Jenkins的build with parameter。(大家有更好的方法,欢迎大家公众号里微我,分享出来一起进步)

具体操作

  • 我们知道JMeter测试计划在运行Sampler之前会先加载运行属性(jmeter.properties,system.properties等)文件,而且JMeter还提供了方法可以动态修改属性,在命令行使用 -J 来指定JMeter Properties,脚本里面使用__P() 函数来获取命令中指定的属性值。

1、编写jmx脚本

在需要动态化参数的地方按照如下方式填写,此处是对线程数和持续时间进行了定义。
在这里插入图片描述

2、用命令行运行时候增加如下选项。

在这里插入图片描述
-JthreadCount=${thread_num}为脚本指定的线程数

其中thread_num变量值可以动态的从Jenkins页面自己填写。

-Jduration=${test_time}为测试计划要指定的测试时长

其中test_time变量值可以动态的从Jenkins页面自己填写。

3、配置Jenkins的build with parameter

安装插件build with parameter
在这里插入图片描述
在这里插入图片描述
这样每次构建都可以动态的传递参数值了,不用再手工去修改脚本。

4,简要验证

经过上面的配置后,接下来进行简要验证,配置是否正确。大家在点击build with parameter按钮后,弹出如下对话框,在这里我填写的线程数目是15,测试时长是30s
在这里插入图片描述
点开构建运行时的控制台输出,可以看到,jmeter命令行正确的获取了前面填写的线程数值和测试时长。OK,大功告成!!!

Jenkins技巧:如何停止、重启、重载Jenkins

http://localhost:8080/restart # 重启
http://localhost:8080/reload # 重载Jenkins配置信息
http://localhost:8080/exit # 停止Jenkins服务器

pipeline

参考:

https://mp.weixin.qq.com/s/98-8_BG1DjOZncUhqBkmEQ
https://www.cnblogs.com/shenh/p/8963688.html
https://mp.weixin.qq.com/s/4MF8UODv_ZFQqqh4VuMRVw

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值