我正在使用Xcode Server和持续集成。我们的构建时间非常慢。
我第一次尝试加速使用RAM DISK并在那里存储构建文件。我们正在使用带有SATA驱动器的mac mini,所以我试图通过从部分构建过程中消除该驱动器来查看可以节省多少时间。
我用以下内容创建了一个RAM磁盘:
diskutil erasevolume HFS+ 'XcodeData' `hdiutil attach -nomount ram://8388608
我首先尝试将DerivedData位置设置到ram磁盘上,但是在运行CI构建时,数据不存储在那里。
我在/Library/Developer/Integrations/Caches
找到了每个CI的构建数据。
我尝试了符号链接ln -s /XcodeData/IntegrationCaches/ /Library/Developer/Integrations/Caches
,但在运行CI时出现权限错误。
我尝试了chmod 777 /XcodeData/IntegrationCaches/
,但我仍然得到了许可问题。
我还尝试将ramdisk文件夹命名为chown _xcsbuildd IntegrationsCaches
以获取ram磁盘文件夹。
到目前为止没有运气。
有没有其他人尝试过这样的事情?
答案 0 :(得分:0)
与评论中提到的@bolnad一样,事实证明RAM DISK默认忽略所有权。您可以在该卷的查找器中“获取信息”,然后取消选中“忽略所有权”,这将允许您使用chmod和工具在需要时更改用户。