jenkins持续集成流水线构建

fengmian

jenkins持续集成流程说明:

回想一下我们的发布流程:

  • 本地把项目打包
  • 通过FTP等工具,传输到服务器
  • 关闭tomcat,把打包的项目放到webapp目录下
  • 启动tomcat

如果每次都这么搞的话,不仅慢,而且容易出错。

有了jenkins以后,发布流程可以是这样:

  • 用户在jenkins上点击某个按钮进行发布
  • jenkins收到发布命令
  • jenkins从SVN或者GIT上把源代码download下来
  • jenkins根据你设置的mvn命令进行打包
  • jenkins把你打包的好的war工程传输到tomcat的webapps目录下
  • tomcat启动

对于程序员而言,只要做两件事:

  • jenkins上配置某个项目的部署流程
  • jenkins上点击某个项目的部署按钮,进行一键部署

实际上,配置往往只做一次,其余的时候,你只要一键部署就可以了

下面是一个持续集成流水线搭建的案例:

jenkins+Tomcat+Maven+Git+Shell环境的搭建

配置思路:

  • jenkins调用git把Git上的代码下载到jenkins服务器
  • maven构建成war包
  • 调用ssh运行shell脚本完成备份
  • 停服务
  • 清webapps
  • 拷war包到tomcat下
  • 起服务

一、安装jenkins环境,

  • 系统centos7.6,关闭iptables,selinux等
  • 安装tomcat,用于部署部署jenkins.war
  • 安装jdk
  • 安装maven
  • 安装gityum install –y git
  • 安装插件:Maven Integration plugin,可以使用maven构建
  • 安装git plugin插件,用来git代码
  • 配置工具:jenkins-Global Tool Configuration中配置jdk.maven环境变量

二、构建项目

例:构建一个maven项目

上传自己的项目代码至gitee,在项目根目录下配置好pom.xml脚本,可以通过命令行在项目根目录下执行mvn clean package打包测试

新建item,选择构建一个maven项目

配置general,配置一些基础参数,配置构建丢弃,构建保留天数和构建个数

配置源码管理,gitsvn,需要安装git plugin插件

配置构建触发器,可以配置定时构建,书写格式和linux定时任务格式相同,如每天8点(H 8 * * * )定时构建一次,如果希望jenkins定时自动构建项目,可在Maven项目中配置构建触发器,在 Poll SCM 项中配置定时任务,如 H/30 * * * *,表示每30分钟定时检查版本库,如果发现有新的提交就触发构建

配置build,项目根目录pom.xml文件,可有在项目下执行命令clean package进行打包

在Post Steps下新增execute shell,执行shell脚本,

配置构建后操作,指定包存放路径**/target/*.war;配置邮件信息,具体参考文档

jenkins构建触发器Gitee webhook

jenkins构建触发器Gitee webhook部署思路

  1. 用户端提交代码至gitee
  2. gitee检测到代码更新,自动触发给jenkins
  3. jenkins接受到gitee代码推送信息,开始拉取代码进行构建,发布
  4. 程序员无需通过jenkins进行发布,只需要本地代码提交至gitee即可实现实时项目发布

gitee配置

————————————————————————————————————

jenkins上配置

填写上gitee api令牌,测试是否连接成功

jenkins持续集成流水线构建

发表回复

滚动到顶部