我正在使用Jenkins每10分钟从git中提取代码然后进行编译,将其存档以用于克隆此工作区的其他作业。目前它每次都从git中提取代码,然后每次都归档。
我想从git克隆代码,只要有任何新的更改,否则它应该跳过并且不归档工作区。我应该使用哪个插件以及我应该使用哪种配置?
答案 0 :(得分:0)
所以听起来你在这里发生了一些事情。以下是我用来满足类似需求的一些可能建议:
1。)如果您只想在源控件发生变化时构建您的作业,在本例中为GIT,您可以使用“Poll SCM”插件。然后在那里设置一个cron表达式,每10分钟运行一次。
“Poll SCM”插件将检查源控件是否有任何更改,并在找到它时构建作业。如果这项工作正常,您的工作将无法构建,因此不会存储任何不必要的内容。
2.。)对于存档,我会确保使用“Discard Old Builds”插件和“Advanced”部分来保留作业工件的轮换和保留策略。
3。)您声明“用于克隆此工作空间的其他作业”。你真的在这个工作空间里有其他工作吗?或者你的意思是复制它的文物?我问,因为从某种意义上说,工作空间是暂时的,你应该拉出工件。有一个插件,也可以使用“Copy Artifact Plugin”,它允许各种选项。
4.。)“Poll SCM”插件的替代方案,如果它不起作用或您不喜欢这个,根据您的GIT设置,您还可以设置一个钩子,通知Jenkins更改。根据GIT实现,有各种钩子。
希望这有帮助!