1

我们最近发现 Xcode Server(即 Bot)将保留所有过去的集成。(我们在构建开始失败时发现了这一点,并且我们意识到 CI 服务器完全没有磁盘空间)。

您如何配置机器人(或一般的服务器)以仅保留最后的n集成?甚至是最后n几天?

如果没有内置设置,有没有办法通过不必使用非官方 XCode Server APIcron的工作来完成此操作?

4

2 回答 2

1

当前的最大磁盘大小是容量的 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 行。从那里您应该能够更深入地挖掘并亲自查看。

希望这可以帮助。

于 2015-12-08T19:40:58.757 回答
1

这非常有帮助,@czechboy!

获取设置时返回的 JSON 文档将包含_id您希望修改其设置的 xcode 实例,您必须将PATCH请求发送到https://localhost:20343/api/settings/<id>. 请求的主体应该是这样的:

{ "set_props": { "max_percent_disk_usage": 0.40 } }

完成此操作后,我需要在清理旧文件之前重新启动服务器。

于 2015-12-14T19:55:05.433 回答