1

我有一个有趣的情况:

  1. 作业轮询 SVN 更改并在识别此类更改时构建
  2. 作业自行提交到同一个地方
  3. SVN 中发生了变化,因此该作业被一次又一次地构建。

有没有办法防止这种情况发生?以某种方式重置 SCM 轮询?

4

4 回答 4

3

查看 subversion 配置中的高级部分。我会使用排除用户选项。但是,这意味着 Jenkins 应该使用自己的 SVN 用户进行提交。

于 2013-10-14T16:19:03.667 回答
1

执行此操作的正确方法是安装SVN 提交后挂钩以通知 Jenkins 构建作业。当 Jenkins SVN 用户提交时,您可以将钩子设置为不轮询 Jenkins。这也意味着关闭轮询 SCM 的詹金斯工作。

于 2013-10-13T22:05:36.527 回答
0

我知道这是一个老问题,但我会分享我的解决方案,因为所有其他解决方案都很老旧。

如果您使用的是 Subversion 插件,您可以配置 SVN 以忽略包含特定 revprop 名称的提交。

以下是帮助部分的摘录:

如果设置,并且 Jenkins 设置为轮询更改,Jenkins 将在确定是否需要触发构建时忽略使用给定修订属性 (revprop) 标记的任何修订。假设构建服务器使用正确的 revprop 提交更改,这可用于排除构建本身完成的提交以触发另一个构建。

我想指出,我所指的配置是全局 SVN 配置(可在http://jenkins_address/configure上找到),而不是特定构建的配置。

编辑:经过进一步调查,我发现在构建配置页面中,您可以单击Pipeline下的Advanced按钮,您将有一些机会来忽略提交(按用户、提交消息、道具等) )

于 2018-01-10T22:47:27.453 回答
0

当前版本(从 2.0 开始)中的另一个选项是排除特定的提交消息以防止触发。

于 2016-08-02T13:00:41.310 回答