首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与Xcode Bots的连续集成

与Xcode Bots的连续集成
EN

Stack Overflow用户
提问于 2013-10-29 05:34:30
回答 3查看 5.1K关注 0票数 10

我想使用Xcode机器人进行持续集成。我已经安装了OSX小牛和服务器(第3版)。我能够使用Xcode 5.0.1创建机器人。虽然集成是成功地执行分析测试,但最终的集成结果总是失败。

整合失败。意外的内部服务器错误。有关更多细节,请参见集成日志。

由于一些与wiki服务相关的错误,我对服务器错误logs.Its失败一无所知。

有谁可以帮我?

代码语言:javascript
复制
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:233 7e026310 +0ms] didReceiveData
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:246 7e026310 +2ms] connectionDidFinishLoading
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:172 7e026310 +0ms] Out of runloop; request completed
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceProxy.m:79 7e026310 +0ms] Received successful response.
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSConfig.m:55 7e026310 +0ms] Reading plist at /Library/Server/Wiki/Config/collabd.plist
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [XCSBuildHelper.m:97 7e026310 +0ms] Updating bot run with GUID fc16d3af-093e-44aa-8a40-ebfef45bbbd9
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [XCSBuildHelper.m:102 7e026310 +0ms] Updating bot run (fc16d3af-093e-44aa-8a40-ebfef45bbbd9): {
        guid = "fc16d3af-093e-44aa-8a40-ebfef45bbbd9";
        status = failed;
        subStatus = "internal-error";
    }
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSConfig.m:55 7e026310 +0ms] Reading plist at /Library/Server/Wiki/Config/collabd.plist
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSConfig.m:55 7e026310 +0ms] Reading plist at /Library/Server/Wiki/Config/collabd.plist
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSRemoteServiceClient.m:151 7e026310 +0ms] Connecting to https://localhost:4443/svc to execute [https]Request{XCBotService.updateBotRun:({
        guid = "fc16d3af-093e-44aa-8a40-ebfef45bbbd9";
        status = failed;
        subStatus = "internal-error";
    })}
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:159 7e026310 +0ms] Secure, async request
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:169 7e026310 +0ms] Before runloop; request pending
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:223 7e026310 +157ms] didReceiveResponse
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:225 7e026310 +0ms] response=<NSHTTPURLResponse: 0x7fd24a5a7980> { URL: https://localhost:4443/svc } { status code: 200, headers {
        "Accept-Ranges" = bytes;
        "Content-Length" = 3700;
        "Content-Type" = "x-apple/msgpack";
        Date = "Tue, 29 Oct 2013 04:48:41 GMT";
        Status = 200;
        "X-Apple-collabd" = yes;
    } }
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:233 7e026310 +0ms] didReceiveData
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:246 7e026310 +0ms] connectionDidFinishLoading
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:172 7e026310 +0ms] Out of runloop; request completed
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceProxy.m:79 7e026310 +0ms] Received successful response.
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [XCSBuildHelper.m:108 7e026310 +0ms] Updating bot with GUID 4e122aa2-56dd-4e3a-ad6e-25be1a65e657
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [XCSBuildHelper.m:117 7e026310 +0ms] Updating bot with latest bot run GUID key
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [XCSBuildHelper.m:124 7e026310 +0ms] Updating bot (4e122aa2-56dd-4e3a-ad6e-25be1a65e657): {
        guid = "4e122aa2-56dd-4e3a-ad6e-25be1a65e657";
        latestFailedBotRunGUID = "fc16d3af-093e-44aa-8a40-ebfef45bbbd9";
        latestRunStatus = failed;
        latestRunSubStatus = "internal-error";
    }
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSConfig.m:55 7e026310 +0ms] Reading plist at /Library/Server/Wiki/Config/collabd.plist
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSConfig.m:55 7e026310 +0ms] Reading plist at /Library/Server/Wiki/Config/collabd.plist
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Info>: [CSRemoteServiceClient.m:151 7e026310 +0ms] Connecting to https://localhost:4443/svc to execute [https]Request{XCBotService.updateBot:({
        guid = "4e122aa2-56dd-4e3a-ad6e-25be1a65e657";
        latestFailedBotRunGUID = "fc16d3af-093e-44aa-8a40-ebfef45bbbd9";
        latestRunStatus = failed;
        latestRunSubStatus = "internal-error";
    })}
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:159 7e026310 +0ms] Secure, async request
Oct 29 10:18:41 AnilV-InetliMac.local xcsbuildd[11285] <Debug>: [CSRemoteServiceClient.m:169 7e026310 +0ms] Before runloop; request pending
EN

回答 3

Stack Overflow用户

发布于 2013-11-13 15:12:48

问题似乎是XCode5机器人不知道如何使用纯svn。你必须使用svn+ssh。

更新你也可以使用git .和你的SVN同步。工作流列表略有不同,但它的工作原理很好。

我今天发现了这个:亚吉特

它完美地集成到GIT和SVN中,您可以在Xcode Server中设置GIT存储库并使用subgit升级它们--它们将保持同步。(我花了大约半个小时才完全理解它是如何工作的)

最棒的是:一个10个座位的许可(意味着10个协作者通过subgit)是完全免费的(对于我的用例来说也足够了)。

以前的答案I提出了一个简单的解决方案,它涉及到Server机器上的SSH服务器。我想这不重要,但我现在用的是Cygwin。

在/etc/sshd_config中,需要添加一个子系统

Subsystem "svnserve -t" /etc/svnserve-proxy

您需要创建文件/etc/svnserve-proxy

代码语言:javascript
复制
cat > /etc/svnserve-proxy
#!/bin/bash
svnserve -t -r <repository>

您必须分别修改svnserve命令和repository。在本地计算机上,您必须修改文件~/.subversion/config并添加一个[tunnels]行:

代码语言:javascript
复制
[tunnels]
ssh = $SVN_SSH ssh -v -l <username> -s

username是要对其进行身份验证的用户的名称。该解决方案快速、肮脏,不允许不同的用户进行身份验证。此外,Xcode需要在本地计算机和Bot上使用相同的用户名。您很可能必须创建一个_teamsuser主目录,并在其中放置subversion/config。

另一种选择是使用公钥(正如bot服务器已经创建的那样),然后您可以将它们放到authorized_keys中,并将命令放在前面:

代码语言:javascript
复制
command="svnserve -t -r <repository> --tunnel-user=<user>" rsa-ssh AAA
票数 9
EN

Stack Overflow用户

发布于 2013-10-29 17:04:54

我也有过类似的问题。在我的例子中,它是访问源代码存储库的问题。OSX服务器出现DNS问题,使其无法到达主机。您能检查一下是否能够访问源代码存储库吗?

票数 1
EN

Stack Overflow用户

发布于 2017-06-13 07:26:40

使用Xcode 9,苹果可以轻松地与Xcode机器人进行持续集成。

Xcode Server内置。可以在任何带有Xcode 9的Mac上运行连续集成机器人,不需要安装macOS服务器。

我发现了一篇很好的文章,解释了如何用Xcode 9来配置它。

Xcode9 - Xcode服务器全面iOS连续集成

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19650444

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档