轮询SCM:Jenkins管道脚本没有在SVN提交上醒来

时间:2017-09-15 20:34:05

标签: svn jenkins jenkins-pipeline

我是Jenkins管道脚本的新手,我已经将我的FreeStyle项目移动到管道但是当我提交我的SVN仓库时,我无法让我的主服务器唤醒。这是我的前几行以及声明我的SVN凭据的位置:

node {
try {
    notifyBuild('STARTED')

stage('Checkout') {
checkout([$class: 'SubversionSCM',
    additionalCredentials: [], 
    excludedCommitMessages: '', 
    excludedRegions: '', 
    excludedRevprop: '', 
    excludedUsers: 'buildbot', 
    filterChangelog: false, 
    ignoreDirPropChanges: false, 
    includedRegions: '', 
    locations: [[credentialsId: 'my-login-id-creds-are-here', 
        depthOption: 'infinity', 
        ignoreExternalsOption: true, 
        local: '.', 
        remote: "http://this.is.myweburl.com/svn/path/to/branch"]],
    workspaceUpdater: [$class: 'UpdateUpdater']])
}

有没有办法投票SCM?

如果您有任何疑问,请与我们联系。

谢谢!

3 个答案:

答案 0 :(得分:1)

您是否尝试在Jenkinsfile中添加properties以触发时间?

properties([
   pipelineTriggers([cron('H/30 * * * *')])
])

请参阅this

在脚本和declarative pipeline中有不同的方法,在第一次执行后,两者都会在jenkins作业中创建相关参数。

答案 1 :(得分:0)

这是一份简短的清单:

  • 在您的管道作业中,在“构建触发器”下,配置“轮询SCM”(例如H/2 * * * *每2分钟轮询一次)
  • 如果您最近编辑了管道脚本并更改了其中的SVN配置(例如,将分支更改为轮询),则可能需要单击“立即构建”一次以更新SVN轮询配置。
  • 检查您的SCM过滤器(包括* / excluded *)。在提供的示例中,我看到您通过'buildbot'筛选出提交,请确保不是这样。
  • 时区和时间同步问题:确保在SVN和Jenkins主服务器上正确配置了正确的时区和日期/时间。将“@HEAD”附加到SVN URL可以节省一些时间同步问题(例如http://this.is.myweburl.com/svn/path/to/branch@HEAD)。
  • 检查作业页面中的“Subversion轮询日志”,可能有助于排查网络/凭据问题。

答案 2 :(得分:0)

即使遵循此处的答案,我仍然看到了这个确切的问题。对我来说,Jenkins不进行轮询的原因是大约10个构建之前,我运行了一个不带scm校验步骤的构建,但是所有后续构建(确实具有scm校验步骤)都失败了。

我认为詹金斯忽略了这些问题,可能是由this WorkflowJob code引起的。