Jenkins 正在删除代理上的工作区

问题描述 投票:0回答:2

Jenkins 将在 30 天或每月 30 天后删除代理/节点上的工作区。查看位于

的詹金斯文件夹后
/var/lib/jenkins/logs/tasks

我在这里找到了名为

Workspace\ clean-up.log
的日志。为什么要创建这个?我怀疑这可能是因为工作空间清理插件。现在我也删除了这个插件,但是这个问题并没有解决。如何知道代理上的工作区为何被删除?有什么办法可以阻止这个吗?

jenkins
2个回答
6
投票

请参阅 通过系统属性控制的 Jenkins 功能

  • hudson.model.WorkspaceCleanupThread.disabled [ 错误的 ] 不要清理代理节点上的旧工作区

  • hudson.model.WorkspaceCleanupThread.recurrencePeriodHours [ 24 ] 工作区清理的运行频率(以小时为单位)。

  • hudson.model.WorkspaceCleanupThread.retainForDays [ 30 ] 未使用的工作区会保留这么多天,然后才有资格删除

如果您有多个节点并且作业可以跨节点浮动,您确实希望它们被清理。

启动命令中参数的顺序很重要,但基本上这些选项属于最后。

参考:RPM启动器Docker启动器

变成:

$JENKINS_JAVA_CMD $JENKINS_JAVA_OPTIONS -DJENKINS_HOME=$JENKINS_HOME -jar $JENKINS_WAR $JENKINS_PARAMS

更新:从LTS 222.1(参考变更日志注释)开始,Jenkins 引入了全局构建丢弃器默认值。值得一读 Cloudbee 的 - 磁盘空间管理最佳策略:清理旧版本


0
投票

我正在 Windows 上工作,我在 Jenkins.xml 中设置了 hudson.model.WorkspaceCleanupThread.disabled=true 并重新启动了我的服务。 在“日志/任务”下,我不再看到工作区清理日志文件。我以为我解决了这个问题,但今天,在我重新启动服务 30 + 1 天后,我的工作区被清理干净了。 关于为什么会发生这种情况有什么想法吗?难道是我使用的SCM,即Perforce,来下载Pipeline Groovy文件的? 而且,由于我有两个代理和一个内置代理,您知道为什么只有一个被删除吗?

谢谢

© www.soinside.com 2019 - 2024. All rights reserved.