寫在前面
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 下,執行
經過比較長的時間,會在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}"