2013-10-06 55 views
0

我们使用Assembla票据系统和SVN存储库。我们计划使用Jenkins服务器自动化构建过程。是否可以根据票证状态触发构建?触发器Jenkins基于Assembla票据状态构建

我们有4个不同的服务器

  1. 开发服务器
  2. QA服务器
  3. 临时服务器
  4. PROD服务器。

开发人员完成编码后,他将提交代码并将票状态更改为Assigned以进行代码审查,Jenkins将构建提交并将其部署到dev服务器中。开发团队成员(审阅者)将执行代码审查并将测试开发服务器中的构建。代码审查完成后,审查人员会将故障单状态更改为已完成的代码审查。我们希望在完成的代码审查状态中获取所有票据,构建它并将其部署到QA服务器。 dev和QA服务器是由SVN中的同一分支构建的。 UAT和Prod由后备箱构成。

QA Build应该只包含已通过代码审查阶段的提交。 “完成的代码审查”是Assembla中的一张票状态。

任何帮助表示赞赏。

问候 KK

+1

建议您最好建立一个基于Subversion提交的自动化构建。 Jenkins内部版本号可以确保每个版本号都是唯一的。 Assembla Jenkins插件将链接所有对Assembla票据的更改(提供用于在Subversion提交消息中提交票号)。 –

+0

感谢Mark回复。更详细地更新了这个问题。 – user2309846

回答

0

Mark说什么。 Plus: 为什么代码审查一些未显示的工作?如果你在詹金斯有另一项测试工作,你可以把这个工作与成功的发布联系起来。

0

我建议使用二进制存储库管理器(如Nexus)来存放构建输出,通常部署的文件。每个Subversion提交都会导致自动测试并保存到资源库管理器中。 Jenkins的下游工作可以自动将其部署到开发服务器中进行自动化集成测试。

该方法的优点是,不是在构建系统内创建认证过程,而是将其集成到部署过程中。第二个好处是,每次部署到QA,Staging,Prod系统中始终使用相同的二进制文件。

值得注意的是,Nexus专业版通过其staging suite支持这种构建升级流程。所以这个过程可以使用票务系统在外部进行控制或集成到二进制存储库管理器中。

最后,Gerrit是一个代码审查系统的例子,它具有许多您正在寻找的功能。不幸的是,它只支持Git。