“如何将Xcode Bot设置为运行”;“关于提交”;对于远程存储库的所有分支?

“如何将Xcode Bot设置为运行”;“关于提交”;对于远程存储库的所有分支?,xcode,continuous-integration,xcode-bots,Xcode,Continuous Integration,Xcode Bots,在Xcode 6中创建Xcode Bot时,它链接到Xcode源代码管理中的当前活动分支。在创建bot之后,似乎没有受支持的方法来更改分支 我已将我的bot设置为“在提交时”运行。我发现,当我致力于该分支时,bot立即集成了该项目。但当我提交到另一个分支时,bot不会采取任何行动 理想情况下,我希望使用单个Xcode机器人查看远程存储库的所有分支。当有新的提交到任何分支时,应该运行bot及其测试 我不想为每个分支创建新的bot。有解决办法吗 错误报告: 开发者论坛: 这在Xcode僵尸程序中

在Xcode 6中创建Xcode Bot时,它链接到Xcode源代码管理中的当前活动分支。在创建bot之后,似乎没有受支持的方法来更改分支

我已将我的bot设置为“在提交时”运行。我发现,当我致力于该分支时,bot立即集成了该项目。但当我提交到另一个分支时,bot不会采取任何行动

理想情况下,我希望使用单个Xcode机器人查看远程存储库的所有分支。当有新的提交到任何分支时,应该运行bot及其测试

我不想为每个分支创建新的bot。有解决办法吗

错误报告:

开发者论坛:

这在Xcode僵尸程序中是不可能的(当前版本为Xcode Server 4.0.3和Xcode 6.2)。机器人程序将只跟踪创建它的特定分支窗体

这在过去的Xcode Server 3和Xcode 5上是可能的,但是这个项目还没有更新到使用最新版本的Xcode Server和Xcode

我还真的希望苹果能很快推出这项功能,如果能有一个机器人监控回购协议中的新请求,并在发现时与该协议进行集成,那就太好了。不过,目前还不可能

2015年3月19日更新: 正如@Gus在另一个答案中所报告的,有一个新的基于Mac OS X的项目,可以帮助为功能分支/PR创建一个称为XBotBuilder-的临时机器人。值得注意的是,目前,该项目仅适用于一个github回购协议。因此,如果您有多个要监控PR的回购协议,目前仍然不可能做到这一点,除非您有多台机器运行不同的XBotBuilder实例并针对不同的回购协议。

同样的工具@jeremy fox的创建者也开发了该工具。它将为每个Pull请求创建一个bot,并为PR中的每个添加重新运行bot


它似乎处于早期阶段,没有文档,但代码似乎组织得很好,因此不难让它工作或改变它的行为来做你想做的事。

Apple来自开发论坛的回应:

这不是Xcode服务器所支持的。您可能能够创建一个预集成触发器来切换工作副本中的分支,并调用单独的xcodebuild调用,但UI中报告的结果将仅用于Xcode服务器构建(触发执行后XCS运行的构建)


rdar://20154198

目前,我们使用一个名为Buildasaur()的工具来改进CI工作流。它是用swift编写的,有助于为一个github存储库自动构建/运行/删除机器人程序,例如,每当创建pullrequest或将更新的提交推送到pullrequest时。实际上,它在我们的Xcode服务器6.3上运行良好。不幸的是,它同时只适用于一个存储库:-(
我们也希望苹果能尽快实现这些功能。

谢谢。你可以复制
rdar://20154198
如果您愿意帮忙的话!我们在构建过程中使用了这一功能。这是难以置信的,可能需要来自社区的额外关爱。我正在研究多重回购支持:)投票支持:事实上,Buildasaur现在支持多存储库同步。