【发布时间】:2020-01-19 13:01:10
【问题描述】:
是否有任何插件或脚本可以从 Jenkins 中删除旧的构建数据?有与构建相关的 docker 映像,因此它们占用了大量空间。我不想将构建数据保留超过 30 天。
看到这个插件:Jenkins: remove old builds 但它似乎有问题,很多人都遇到了问题
【问题讨论】:
是否有任何插件或脚本可以从 Jenkins 中删除旧的构建数据?有与构建相关的 docker 映像,因此它们占用了大量空间。我不想将构建数据保留超过 30 天。
看到这个插件:Jenkins: remove old builds 但它似乎有问题,很多人都遇到了问题
【问题讨论】:
我建议您坚持使用您已经知道的插件。 摆脱旧版本和相关工件(存档步骤)对我来说效果很好。
看看你可以用它设置的各种参数 - https://jenkinsci.github.io/job-dsl-plugin/#path/pipelineJob-logRotator
在您的情况下 - 将“daysToKeep”设置为 30 应该可以
注意它不会删除 docker 图像;为此,您需要实施单独的策略;说“docker system prune”或“docker image prune”
检查这个 - https://docs.docker.com/engine/reference/commandline/image_prune/
【讨论】:
我已经使用了这里描述的几个 Groovy Jenkins scriptlet:https://github.com/jenkinsci/jenkins-scripts/tree/master/scriptler
搜索“散装”,您会发现几种口味。我最喜欢的是https://github.com/jenkinsci/jenkins-scripts/blob/master/scriptler/bulkDeleteBuilds.groovy,它允许您删除指定范围内的作业构建。
您可以在构建过程中自动运行 Scriptlet,或者从 Scriptlet 控制台或什至从 chron Jenkins 作业手动进行更多控制。
【讨论】: