我们最近发现 Xcode Server(即 Bot)将保留所有过去的集成。(我们在构建开始失败时发现了这一点,并且我们意识到 CI 服务器完全没有磁盘空间)。
您如何配置机器人(或一般的服务器)以仅保留最后的n
集成?甚至是最后n
几天?
如果没有内置设置,有没有办法通过不必使用非官方 XCode Server APIcron
的工作来完成此操作?
我们最近发现 Xcode Server(即 Bot)将保留所有过去的集成。(我们在构建开始失败时发现了这一点,并且我们意识到 CI 服务器完全没有磁盘空间)。
您如何配置机器人(或一般的服务器)以仅保留最后的n
集成?甚至是最后n
几天?
如果没有内置设置,有没有办法通过不必使用非官方 XCode Server APIcron
的工作来完成此操作?
当前的最大磁盘大小是容量的 0.75 的比率(如果我很好地理解了输出)。如果您运行,您可以自己看到它curl -k -u USER:PASS https://localhost:20343/api/settings
。您可以通过将此 API 作为PATCH
请求调用此 API 并将其更改为max_percent_disk_usage
较小的值,然后给它时间进行清理来更改它。但是,我还没有测试过。
如果您对它的工作原理感兴趣,请参阅/Applications/Xcode.app/Contents/Developer/usr/share/xcs/xcsd/routes/routes_setting.js
第 19 行。从那里您应该能够更深入地挖掘并亲自查看。
希望这可以帮助。
这非常有帮助,@czechboy!
获取设置时返回的 JSON 文档将包含_id
您希望修改其设置的 xcode 实例,您必须将PATCH
请求发送到https://localhost:20343/api/settings/<id>
. 请求的主体应该是这样的:
{ "set_props": { "max_percent_disk_usage": 0.40 } }
完成此操作后,我需要在清理旧文件之前重新启动服务器。