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