我有一个svn回购和一些Jenkins的工作。使用Jenkins svn插件的“包含区域”功能,我可以配置Jenkins来轮询某些文件夹或文件类型的更改。但这是为了触发这项工作。当实际作业开始执行时,我如何知道其更改触发构建的文件是什么?
如果只有一个提交触发构建,我可以轻松地从shell脚本中的svn log中解答答案。但如果有一个未知数量的提交导致我的詹金斯工作开始,我就麻烦了。
我问这个是因为我希望我的Jenkins工作只针对那些更改触发构建的文件运行某些分析。
答案 0 :(得分:0)
同时推送多个提交也可以执行脚本。所以我觉得你已经遇到麻烦了。因此,请在作业工作区中维护一个文件,以便在最后的每个构建中保存其commit id
。在您的脚本中,现在检查从该提交到当前(HEAD
)diff并根据您的约束检查文件中的更改。如果符合所有条件,现在就开始工作。希望这会有所帮助。
答案 1 :(得分:0)