Jenkins获取git提交记录并上传fir.im


写在前面
Jenkins持续集成就不多介绍了,用过的人都知道。
这里有个背景,fir.im上可以看到版本号,但是不知道每次版本都更新了什么,如果每次人为的添加更新记录,就违背了自动化持续集成的初衷。
自动化生成版本的时候,自动更新版本记录是一个很妙的体验。


一、寻找

浏览了各大论坛和网站,发现这个功能并不是有很多人需要,谈论者寥寥。
抱着不撞南墙不回头,撞了南墙也不回头的信念,终于在大海中找到了。。。\(≧▽≦)/激动
地址:http://www.tuicool.com/articles/zQbeuir

介绍的相当清楚,有兴趣的可以去围观。
有人也向Jenkins提了这个需求,地址:https://issues.jenkins-ci.org/browse/JENKINS-12032

二、做

1、下载插件源码

插件地址:https://github.com/daniel-beck/changelog-environment-plugin

2、安装Maven

下载地址:https://maven.apache.org/download.cgi
解压到某个目录下,例如:
/Users/用户名/apache-maven-3.5.0

在终端执行:

$ vi ~/.bash_profile
添加下面的代码:

# Maven
export M2_HOME=/Users/sunbinhua/apache-maven-3.5.0
export PATH=$PATH:$M2_HOME/bin


保存并退出。

输入命令,来使.bash_profile生效

$ source ~/.bash_profile

输入mvn -v来检查Maven是否生效


2、编译生成hpi

cd 到  changelog-environment-plugin-master 下,执行

mvn verify


经过比较长的时间,会在changelog-environment-plugin-master/target/下有个changelog-environment.hpi文件这就是我们需要的插件。

3、上传Jenkins

在Jenkins的系统管理-> 管理插件-> 高级 上传插件,安装

4、配置

在项目的配置中,构建环境下面多了一项   Add Changelog Information to Environment
选中后,多了三项:Entry Format、File Item Format、Date Format
Entry Format中添加 %3$s(at %4$s via %1$s)\n  
Date Format中添加 yyyy-MM-dd
在命令行中使用SCM_CHANGELOG获取。
"${SCM_CHANGELOG}"

你可能感兴趣的:(实用技术,发布)