我正在尝试根据条件阻止svn-polling Jenkins作业上的svn checkout。结账后执行预先步骤,并通过svn轮询触发此作业。请指教。
答案 0 :(得分:3)
有一个允许在SVN结账前执行步骤的插件
https://wiki.jenkins-ci.org/display/JENKINS/pre-scm-buildstep
但是,即使这些pre-scm步骤失败,也不会阻止作业继续。如果此预构建步骤失败,则最新版本允许构建失败。
我能想到的一件事就是设置2个工作岗位。一个作业的任务仅仅是轮询SVN,如果满足条件,则使用第二个作业触发构建。第二个作业甚至可以使用“自定义工作区”选项并使用第一个作业的工作区来防止额外的结帐
答案 1 :(得分:0)
我不知道它是否仍然相关,但我可能已经找到了解决这个问题的方法。让我们说你有一个名为' svn_root'的根的SVN回购。在它下面你有trunk文件夹,你的标签文件夹,你的分支文件夹等 您只希望Jenkins对您的svn_root'进行投票。无需检查trunk / tags / branch的内容。为此,在您的作业配置中,在subversion部分中,放入您的存储库URL'打开您的高级网址(例如:svn:// ip / svn_root)并在'存储库深度'下拉选择' immediates'。当作业开始时,jenkins将仅检查高级文件夹(svn_root)并且仅在其中发生更改时才会触发。例如,如果有一个提交trunk,高级文件夹的trunk条目将改变,并且将触发作业 这完全成了我的伎俩 希望我能帮助你 祝你好运