Rom*_*las 18 hudson maven maven-release-plugin jenkins
我目前正在加强Jenkins(1.430)项目的发布过程.
当前的发布工作
今天,对于一个特定项目,我们有一个专门负责发布流程的工作.完整的程序如下:
mvn versions:set -DnewVersion=2.0)来摆脱-SNAPSHOT.2.1-SNAPSHOT).这种方法的优点是我只有Jenkins作业,因为构建只依赖于标记.
但是,此过程涉及太多人为干预(pom.xml,提交,标签等的更改).
新的发布工作
现在,我使用Maven发布插件.我创建了一个工作,向启动构建的用户提出三个信息:
releaseVersion发布插件的参数);developmentVersion发布插件的参数);tag发布插件的参数).这项工作正常,除了一点:作业基于中继或SVN的分支.这意味着如果我有2个分支(除了主干),我将需要创建3个发布作业:每个分支一个.
保持两个世界中最好的一个想法(即使用mvn发布,但保留1个发布作业),添加一个构建参数,该参数将询问用户中继/分支的路径.因此,我将设置并要求用户输入参数,而不是在作业配置中设置http://my-svn-repo/project/trunk(或http://my-svn-repo/project/branches/BRANCH_V1).http://my-svn-repo/project/$FROM_BRANCHFROM_BRANCH
这种解决方案的问题在于,用户必须输入任一trunk或branches/BRANCH_Vx,这可能导致错误.
理想情况下,我希望有一个构建参数,让我可以选择分支(包括主干),因为选择标签时存在参数List Subversion标签...
所以我的问题是:有没有更好的方法来配置一个可以在所有分支上工作的Jenkins作业?
谢谢.
编辑:我发现验证字符串 Jenkins插件可以很有趣,以确保用户定义的值尊重某些正则表达式.这对我的情况很有帮助......
dez*_*zhi 17
如果你不熟悉詹金斯,只是为彼得的答案添加一些注释.
默认情况下,subversion插件安装在最新版本中(2015年9月).
然后,您应该按如下方式配置项目:
查看以下截图:
你需要版本1.32的subversion插件.该问题JENKINS-10678在该版本中实现.
然后你只给它你的项目URL(需要包含主干,分支和标签),它将为你提供主干和你的分支.
| 归档时间: |
|
| 查看次数: |
46033 次 |
| 最近记录: |