0

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

我们有 4 台不同的服务器

  1. 开发服务器
  2. 质量检查服务器
  3. 登台服务器
  4. 产品服务器。

一旦开发人员完成编码,他将提交代码并将票证状态更改为已分配以进行代码审查,Jenkins 将构建提交并将其部署在开发服务器中。开发团队成员(审阅者)将进行代码审查,并将在开发服务器中测试构建。代码审查完成后,审查者会将工单状态更改为已完成代码审查。我们希望将所有处于已完成代码审查状态的工单,构建并部署到 QA 服务器。dev 和 QA 服务器是从 SVN 中的同一个分支构建的。UAT 和 Prod 是从主干构建的。

QA Build 应仅包含已通过代码审查阶段的提交。“已完成代码审查”是 Assembla 中的工单状态。

任何帮助表示赞赏。

问候 KK

4

2 回答 2

0

马克说什么。另外:为什么要对没有被证明有效的东西进行代码审查?如果您在 Jenkins 中有另一个测试工作,您可以将其连接到发布成功的构建工作中。

于 2013-10-06T11:52:30.837 回答
0

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

这种方法的优势在于,它不是在构建系统中创建认证过程,而是集成到部署过程中。第二个好处是每个部署到 QA、Staging、Prod 系统中总是使用相同的二进制文件。

值得注意的是,Nexus Professional 通过其staging suite支持这种构建升级过程。因此,可以使用票务系统从外部控制此过程,也可以将其集成到二进制存储库管理器中。

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

于 2013-10-06T20:15:34.233 回答