詹金斯管道选择性删除

Posted

技术标签:

【中文标题】詹金斯管道选择性删除【英文标题】:Jenkins pipeline selective delete 【发布时间】:2017-05-11 16:18:09 【问题描述】:

我正在慢慢地用 Jenkins 管道取代传统工作。我们有一些工作,我之前通过仅从先前构建的工作区中删除一些关键文件来优化这些工作 - 因此我们最终得到增量构建而不是完整构建。 FTR 这使我们的基本构建速度提高了 3/4 倍,我很想保留它。

我需要删除那些包含“缓存”的文件(以简化实际场景)。我目前使用“**/cache”作为删除工作区构建步骤的包含参数。问题:管道步骤中是否已经有类似的东西?我可能可以使用 find 或类似方法来完成,但这也必须在 Windows 上工作,并且具有可移植性。

【问题讨论】:

【参考方案1】:

您可以使用cleanWS 步骤来清理工作区的某些部分。但是,它是一个插件,您可以在这里找到:Workspace Cleanup Plugin。

您可以在your-jenkins-url/pipeline-syntax/ 找到有关此步骤的 sn-p 生成器的语法

【讨论】:

【参考方案2】:

我已经不再使用 cleanWS 了。相反,我使用文件操作来明确删除相关文件。

文件操作在那里执行。 cleanWs 在运行结束时起作用,如果运行出错并且没有完成,则不能依赖 - 例如。语法错误 - 或者正在运行不同的脚本。

【讨论】:

以上是关于詹金斯管道选择性删除的主要内容,如果未能解决你的问题,请参考以下文章

复制詹金斯管道项目

Jenkins管道脚本的开发过程应该如何?

如何在Jenkins管道中使用自定义Dockerfile名称?

将更改推送到特定分支时不会触发多分支管道

如何在另一个詹金斯管道B中调用詹金斯管道A

詹金斯管道:代理与节点?