使用AccuRev和Jenkins CI(门控流)

时间:2015-12-14 12:35:26

标签: jenkins accurev

我们的一位客户正在使用AccuRev进行源代码管理/版本控制。我们正在尝试为他们设置Jenkins CI环境。 目前我们已经这样做了,Jenkins只是一遍又一遍地轮询相同的流。

然而,我们正在寻找将Jenkins CI与AccuRev工作流程集成的更好方法。我读了一些关于Gated Streams的内容,它可以触发外部构建并确定是否可以提升来自下游的更改。 这听起来很有希望,但是由于我对AccuRev缺乏经验,我不确定如何实现。

有人能指出我使用Jenkins CI和AccuRev的示例和/或教程,特别是使用Gated Streams吗? 或者或许解释一下这个特定主题的细节?

1 个答案:

答案 0 :(得分:2)

我也使用Jenkins和AccuRev。

在我的环境中,我的CI构建基于promote / purge / demote启动,这可以通过使用server_post_promote_trig来完成 (涵盖推广和清除)和新的server_master_trig(涵盖降级)。

我使用门控流abit,但在我的环境中没有实现此功能,因为我遇到了一个缺陷(可能在最新版本中已修复)。

使用门控流的基本概念是,当您将更改提升到此流时,更改实际上会发送到暂存流(子流)。 您可以根据验收标准构建/测试更改,确定是否可以将更改提升为门控流。

实施例: 我推广并且更改未通过构建,更改将保留在暂存流中。您需要解决问题并成功构建 将更改提升为门控流。

这样你就不会污染门控流下的所有流。

目前,如果您将更改提升为流并且它会破坏构建,则该流下面的所有流现在都包含错误的代码。

查看在线accurev帮助,第11章。使用Streams强制执行流程。