背景
- 现阶段:开辟 -> git push -> git pull -> 比较代码 -> 编译 -> 布置到全网 -> 重启服务器
- 接入jenkins以后:开辟 -> git push -> jenkins自动构建布置
jenkins是什么
jenkins是一个开源软件项目,是基于Java开辟的一种延续集成东西,用于监控延续反复的事情,旨在供应一个开放易用的软件平台,使软件的延续集成变成能够。
构建流程
- 从Jenkins官网下载最新war文件。(https://jenkins.io/download/)
- 装置jdk(https://www.oracle.com/techne…
- 运转java -jar jenkins.war即可
- 装置插件(github,Generic Webhook Trigger)
- nodejs设置:system settings -> 全局东西设置
- create new job
- 运用webhooks竖立衔接
- git push –> 触发webhooks –> jenkins最先事情
- 构建效果 -> 经由过程邮件关照效果
细致流程
初始化jenkins包
下好war包以后,运转java -jar jenkins.war –httpPort=8383(指定端口8383)
翻开当地localhost:8383 根据提示顺次可看到
装置插件(github,Generic Webhook Trigger)
NodeJs设置:system settings -> 全局东西设置
create new job:
建立一个自在作风的软件项目
在Source Code Management中填入相干的git源码地点
在Build Triggers 中挑选
在Build Environment及在build中挑选NodeJs版本和写入需实行的shell剧本
此次的shell剧本以下:
echo 'check node --version'
node --version
cd mock-demo
npm install -g cnpm --registry=https://registry.npm.taobao.org
npm install
npm install -g mocha
echo 'test-------start'
npm run test
echo 'npm--------build'
npm run build
运用webhooks竖立衔接
事情道理:
在远端堆栈上设置一个Jenkins服务器的接口地点,当当地向远端堆栈提议push时,远端堆栈会向设置的Jenkins服务器的接口地点提议一个带参数的要求,jenkins收到后最先事情。
在github中设置webhooks
图中Secret是jenkins的暗码,有个选项是想什么时候触发这个钩子,这里默认用push触发钩子\
点击提交完成设置。
个中Payload URL是在jenkins中能够猎取的。当当地向远端堆栈提议push要求时,会触发jenkins,然后jenkins最先事情。
在jenkins中设置github Hook URL:
git push –> 触发webhooks –> jenkins最先事情
构建效果 –> 经由过程邮件关照效果
在Jenkins -> 体系设置 -> E-mail Notification 中设置\
在Test e-mail recipient出填写测试邮件地点,便可测试是否能收到邮件
然后在jenkins项目中settings -> Post-build Actions设置\
在挑选触发器时可选always或failure等触发邮件提示
构建效果
写在末了
jenkins的插件不计其数,功用非常壮大,现在完成了自动构建以及邮件提示功用。
本次运用的demo地点为:https://github.com/liujianxi/jenkins-demo。
原文地点:https://github.com/liujianxi/share/tree/master/jenkins-demo