有没有办法配置单个Jenkins作业来执行我的应用程序的每个较新版本的发布?
即,我想详细了解是否可以在没有任何人为干预的情况下完成以下任务。我使用 SVN 以及 Artifactory 。
从要发布的标签中分支
将pom文件中的快照版本更改为发行版本(对于pom中定义的每个依赖项)
采用发布版本(EAR)
在Weblogic实例中部署它。
准备发行说明
标记发布
提前致谢。
答案 0 :(得分:2)
使用Multijob插件可以完全自动化(也可以使用常规单个作业,但使用Multijob会更容易,您可以使用Maven目标而不是某些手动shell脚本)。 工作流程以:
开头1- commit并推送到git
git中的2- hook应该通过http POST触发作业,因此你需要配置你的作业以接受远程触发。您可以将分支名称作为参数
传递3-工作开始,克隆分支(git插件)
4-启动Maven项目以“mvn clean install”并检查单元测试(可选)
5-启动Maven项目到'mvn release:prepare'和'mvn release:perform'以省略pom.xml中的SNAPSHOT
6-标记分支(使用shell块和简单的git命令)
7-合并到主分支(可选)
8-启动Maven项目以'mvn deploy'部署到weblogic(weblogic应该在〜/ .m2 / settings.xml中配置为部署工件的存储库
注意:所有任务也可以在一个作业中使用一些shell脚本。最佳实践是使用插件,但有时您会发现使用shell脚本执行某些任务更容易。