使用 Jenkins 构建 Coding 项目 (资源)

Jenkins简介

Jenkins是一种跨平台的持续集成和交付的应用软件,它便于不断稳定地交付新的软件版本,并提高你的工作效率。这款开发运维工具还让开发人员更容易把项目的变化整合起来,并使用大量的测试和部署技术。

使用 Jenkins 构建 Coding 项目

 

Jenkins 是一个用 Java 编写的开源的持续集成工具。它运行在 Servlet 容器中(例如 Apache Tomcat)。它支持软件配置管理(SCM)工具(包括 AccuRev SCM、CVS、Subversion、Git、Perforce、Clearcase 和 RTC),可以执行基于 Apache Ant 和 Apache Maven 的项目,以及任意的 Shell 脚本和 Windows 批处理命令。

使用 Jenkins 构建 Coding 项目是利用 Webhook 向 Jenkins 服务器发送请求。Jenkins 接收到 Webhook 请求后,进行构建。要实现以上功能需要使用 Jenkins 的插件来实现,Jenkins Coding Webhook Plugin 是通过 Jenkins Gitlab Webhook 插件修改而得。安装后即可响应 Coding 的 Webhook 请求。

Jenkins 版本

在 Jenkins 插件库里标记的,对 Jenkins 的版本依赖是 1.625.3。 在我司吃自己的狗粮的实践中,目前使用 Jenkins 版本为 2.67。(稳定版为 2.60 / 2.73

安装配置 Jenkins Coding Webhook Plugin

  1. 安装

    登陆到您的 Jenkins 服务器。选择『系统管理』。

    ba462f087011b0dfc368bd66ba57ce2acfb.jpg

    点击『管理插件』

afa262125203f74a3b49c9313cdc455dad7.jpg

选择『可选插件』,在右上方 『过滤』框中,输入『coding』,即可看到『Coding Webhook Plugin』。 勾选后,点击下方的『直接安装』。如果没有搜索到结果,可以点击右下方的『立即获取』,获取后即可看到。

1d0655988644d1416552b50bdef60eb108a.jpg

如果搜索不到,还可以前往 这里 下载,进行手动安装。

下面介绍手动安装的方法:

进入插件列表,选择上方『高级』标签 

d3d0afc0f5647729adc3423848b2dae6d5e.jpg在『高级』标签下,上传插件栏中点击选择文件,选中 coding-wehook.hpi

e56700d1b333d95c0d42c821c630bd7a263.jpg点击『上传』按钮,便会自动上传后安装。

2956d50c92d3b487c942d3620bb20c0016c.jpg

2 . 配置项目

在 Jenkins 中选择新建项目

a4346d2346cfb76e176decde6d198c49ca6.jpg

d45517017f82f767e31cc17ef6231482ae8.jpg

 

进入项目配置页面,在源码管理下选择 Git,并填入项目地址,以及认证的形式。

cec59ad4d14ba9eef2294f0c294fdb0a7e5.jpg

在构建触发器栏中选择『收到 Coding 发送过来的请求时触发构建』,并填入相应的选项。

a2f4eb247da65c3bf819160c4e8d8ca9e5b.jpg

如果需要根据 Merge Request 的构建,先点击右侧的问好。

ab8ead96e868c526700b14d6a67375e3249.jpg

会展开提示信息。

1c010b1fc6c612de5e3fb0bad9bcad41dc4.jpg

根据提示信息,回到源码管理中,点击『高级』,在 Refspec 中填入+refs/heads/*:refs/remotes/origin/* +refs/merge/*/MERGE:refs/remotes/origin/merge/* ,如果是公开项目,则填入+refs/heads/*:refs/remotes/origin/* +refs/pull/*/MERGE:refs/remotes/origin/pull/*

af5c9ca66272fdcc471ecc492f127aac4aa.jpg

最后可以添加构建的脚步。

f23b8d86bacfa9d6034196f1ee5f605c9df.jpg

76bbe70c3a9a99f6ba10fa25f6622dae59f.jpg

在 Coding 中配置 Webhook

回到 Coding 中,在项目的设置中选择添加 Webhook。

9a8ff9e136da185ff81029f829c7b76f4e8.jpg

707e05c7472f17cee38447583d916f2cd6f.jpg

添加成功后,即可。

这时,我们提交一个 Merge Request。

2164ed75e08327a7d19a0d764c320f24915.jpg

再回到 Jenkins 中,即可看到项目构建的信息。

25c2e13447371bfc520133643fd5c12e7d0.jpg

Jenkins邮件配置

通过控制信息可以查看每个JOB工程构建的状态

借助 Jenkins Email插件实现网站构建完成,自动发送邮件给相应的开发人员,开发人员,或者测试人员。

Jenkins发送邮件需要安装Email邮件插件,Email-ext、Token-macro和Email-template.

Jenkins Email邮件配置常见参数:

SMTP server                         邮件服务器的地址

Default Content Type              内容展现的格式,一般选择HTML

Default Recipients                       默认收件人

Use SMTP Authentication          使用SMTP身份验证

User Name                                邮件发送账户的用户名

          基于 Jenkins 自动部署网站的流程大致分为:需求分析----原型分析---开发代码---提交测试---- Jenkins内网部署---确认上线--- Jenkins  备份数据--- Jenkins 外网部署--发布完毕--- Jenkins网站测试等,如果发现外网部署的代码有异常,可以通过 Jenkins及时回滚,如图

d7482b15d1ddda0dfd741febfc1f6c60007.jpg

 

常见问题 :

1、用jenkins怎么实现发布和回滚?

回答:发布:jenkins配置好代码路径(SVN或GIT),然后拉代码,打tag。需要编译就编译,编译之后推送到发布服务器(jenkins里面可以调脚本),然后从分发服务器往下分发到业务服务器上。

回滚:按照版本号到发布服务器找到对应的版本推送

 

 

链接 :

(易百教程)  Jenkins教程  : https://www.yiibai.com/jenkins/

Jenkins使用简易教程 (安装配置) :  https://www.jianshu.com/p/b524b151d35f

(w3c school)Jenkins官方文档   : https://www.w3cschool.cn/jenkins/

使用Jenkins进行持续集成   :    https://www.liaoxuefeng.com/article/001463233913442cdb2d1bd1b1b42e3b0b29eb1ba736c5e000

 

Jenkins介绍:Jenkins使用教程      : https://www.2cto.com/kf/201712/707935.html

Jenkins入门教程之--Jenkins管理  : https://yq.aliyun.com/ziliao/321229

Jenkins   系列   :  https://yq.aliyun.com/wenzhang/blog_2636?spm=a2c4e.11155472.0.0.2ab86b04oK6x8g

Jenkins部署Maven项目到Tomcat.txt  :  http://www.voidcn.com/code/p-qdirodfe-q.html

Jenkins   系列     :  https://testerhome.com/search?q=Jenkins

Jenkins安装和配置 (ubuntu16.04)  :https://www.jianshu.com/p/1a7f46896c40

Linux下安装配置Jenkins              :        http://blog.51cto.com/fangwei009/2087624

实战Jenkins+SVN+tomcat持续集成发布             :         http://blog.51cto.com/fangwei009/1977933

Centos7.3系统下搭建Jenkins+ant+Jmeter持续集成自动化搭建步骤       :         http://blog.51cto.com/fangwei009/1954030

Jenkins+Ant+Jmeter搭建持续集成的接口测试平台(转)      :      http://blog.51cto.com/fangwei009/1952504

jenkins实现自动化部署及服务重启-初级             : http://blog.51cto.com/vekergu/1627955

 

JMeter学习(三十七)Jmeter录制手机app脚本      :        http://blog.51cto.com/fangwei009/1911634

ant+jmeter 在Linux环境下接口自动化测试环境搭建(2)      :     http://blog.51cto.com/fangwei009/1911218

ant+jmeter+Jenkins接口自动化测试实战(1)         ;           http://blog.51cto.com/fangwei009/1910388

jmeter下载及安装配置       :      http://blog.51cto.com/fangwei009/1910385

Windows下ant环境搭建        :      http://blog.51cto.com/fangwei009/1910384

 

持续集成接口自动化-jmeter+ant+jenkins(一)        : http://blog.51cto.com/fangwei009/1906033

Jenkins+Jmeter+Ant自动化集成环境搭建              :         http://blog.51cto.com/fangwei009/1906030

windows下安装jenkins           : http://blog.51cto.com/fangwei009/1882542

Jmeter分布式压测    :       http://blog.51cto.com/fangwei009/1886976

使用JMeter创建数据库(Mysql)测试     :    http://blog.51cto.com/fangwei009/1877567

JMeter创建FTP测试服务器上传下载性能       : http://blog.51cto.com/fangwei009/1866834

使用Jmeter进行http接口测试         :         http://blog.51cto.com/fangwei009/1773724

JMeter安装教程       :      http://blog.51cto.com/fangwei009/1751611

 

 

windows服务器部署多个不同端口的tomcat      :     http://blog.51cto.com/fangwei009/1857337

windows查看端口占用以及关闭相应的进程 : http://blog.51cto.com/fangwei009/1854142

Jenkins与Docker的自动化CI/CD实战            :  https://mp.weixin.qq.com/s/gZl9nQuPtMsekjNBcdfE8g

 

jenkins 按标签发布   : http://blog.51cto.com/sgk2011/1927169

jenkins实战安装java maven项目   : http://blog.51cto.com/sgk2011/1926750

jenkins实战之发布一个php小的项目   : http://blog.51cto.com/sgk2011/1926295

jenkins的安装配置 置顶  : http://blog.51cto.com/sgk2011/1926270

Jenkins+Maven+SVN+Nexus 搭建持续集成环境  :  http://blog.51cto.com/abcdocker/2137268

Jenkins 自动化部署上线         :   http://blog.51cto.com/abcdocker/2136114

Jenkins (8篇)  ; https://www.cnblogs.com/sparkdev/tag/CI%2FCD/

95c4449912a85a081f118c9f363bc1cbb48.jpg

 

053-Jenkins : https://mp.weixin.qq.com/s/1fN3fbq9jO9lGzEz2-igGw

Jenkins  系列 : https://www.cnblogs.com/fawaikuangtu123/category/1386781.html

14cf889fcd346b09296371c553ddf7ed7eb.jpg

7e9de7a40e15c3d6f1eb4216e19fc01d9c2.jpg

CentOS 7 Gitlab+Jenkins持续集成+自动化部署     :   https://www.cnblogs.com/bigdevilking/p/9544476.html

CentOS 7 部署Gitlab+Jenkins持续集成(CI)环境 :https://www.cnblogs.com/bigdevilking/p/9543092.html

CentOS 7 部署GitLab : https://www.cnblogs.com/bigdevilking/p/9539368.html

 

 

 

 

 

 

转载于:https://my.oschina.net/u/3803405/blog/1800021

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值