2013-10-29 1 views
10

Xcode 봇을 사용하여 지속적인 통합을 원합니다. OSX Mavericks and Server (버전 3)를 설치했습니다. Xcode 5.0.1을 사용하여 봇을 만들 수 있습니다. 통합하는 동안 테스트 분석을 성공적으로 수행하지만 최종 통합 결과는 항상 실패합니다.Xcode 봇과의 지속적인 통합

통합에 실패했습니다. 예기치 않은 내부 서버 오류입니다. 자세한 내용은 통합 로그를 참조하십시오.

위키 서비스 관련 오류로 인해 서버 오류 로그에서 아무 것도 이해하지 못했습니다.

아무도 도와 줄 수 있습니까?

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 
+0

으로 구성하는 방법을 설명하는 아주 좋은 기사를 발견? 난 평범한 SVN repo를 사용하여 문제가 있었다. 하지만 svn + ssh 및 공개 키 인증을 사용하여 해결했습니다. – gamma

+0

@ gamma 나는 SVN Repo (암호 인증 필요)를 사용합니다. 우리 회사가 –

+0

Yup을 제공하는 중앙 저장소는 거의 동일한 설정이었습니다. 유일한 방법은 svn + ssh를 작동시키는 방법을 파악하는 것이 었습니다. SSHService (Cygwin)를 설치하고 Xcode 및 로컬 사용자로 실행중인 사용자의 PublicKey auth에 대한 인증 체계를 만들었습니다. 아직 암호 인증을 사용하여이를 수행하는 방법을 알지 못했습니다. 원하는 경우 전체 설명이 포함 된 답변을 만들 수 있습니다 – gamma

답변

1

나는 비슷한 문제가있었습니다. 제 경우에는 소스 코드 저장소에 액세스하는 것이 문제였습니다. OSX 서버에 호스트에 도달하지 못하게하는 DNS 문제가있었습니다. 소스 코드 저장소에 액세스 할 수 있는지 확인할 수 있습니까?

+0

확인하는 방법? 문제를 어떻게 해결했는지. 내 리포지토리에서 프록시를 사용할 수 있으며 인증이 필요합니다. OSX 서버에 필요한 자격 증명을 제공했습니다. 통합과 분석을 마친 후 마지막 단계에서만 실패하기 때문에 저장소에 액세스 할 수 있다고 생각합니다. 최종 결과는 항상 실패 –

+0

나는 본다. 통합 로그에 표시된 내용을 붙여 넣을 수 있습니까? 최근에 왼쪽 실행을 선택하면 봇 세부 정보 페이지에서 찾을 수 있습니다. – Truth

9

문제는 XCode5 봇이 순수 svn을 사용하는 방법을 모르는 것으로 보입니다. svn + ssh를 사용해야합니다.

[업데이트] 당신의 SVN과 동기화 된 git ...를 사용할 수도 있습니다. 워크 플로는 약간 다르지만 훌륭하게 작동합니다. 그들은 모두 동기화에 남아있을 것입니다 - 당신이 엑스 코드 서버에서 GIT 저장소를 설정하고 subgit로 업그레이드 할 수 있습니다 subgit

그것은 완벽하게 GIT와 SVN에 통합 :

나는이 오늘을 발견했다. (어떻게 작동하는지 완전히 이해하는 데 30 분 정도 걸렸습니다.)

10 자리 라이센스 (서브 작업을 통한 공동 작업자 10 명을 의미)는 전적으로 무료입니다 (사용 사례에는 충분히 충분 함).

[이전 답변] 나는 SVN 서버 컴퓨터에서 SSH 서버와 관련된 간단한 솔루션을 만들었습니다. 나는 어느 것이 든 상관 없다고 생각하지만 현재 Cygwin을 사용하고있다. 은/etc/sshd_config에에서

당신은 당신이 파일 당신은 각각 svnserve 명령 repository을 수정해야 /etc/svnserve-proxy

cat > /etc/svnserve-proxy 
#!/bin/bash 
svnserve -t -r <repository> 

를 만들 필요가 서브 시스템을

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

를 추가해야합니다.

[tunnels] 
ssh = $SVN_SSH ssh -v -l <username> -s 

username 당신이 인증 할 사용자의 이름입니다 : 로컬 컴퓨터에서 당신은 파일 ~/.subversion/config을 수정하고 [tunnels] 라인을 추가해야합니다. 이 솔루션은 빠르고 빠르며 다른 사용자가 인증 할 수 없습니다. 또한 Xcode는 로컬 시스템과 Bot-Server에서 동일한 사용자 이름을 사용해야합니다. _teamsuser 홈 디렉토리를 만들고 거기에 Subversion/config를 넣어야 할 가능성이 큽니다.

대안은 (봇 서버가 이미 생성으로) 그런 다음 authorized_keys에이를 넣을 수 있습니다 공개 키를 사용하여 전면에서 명령을 넣어하는 것입니다 :

엑스 코드 (9) 사과와
command="svnserve -t -r <repository> --tunnel-user=<user>" rsa-ssh AAA 
+0

공개 키를 사용하여이 설정을 시도했지만 xcode에서 봇을 만들 수 없습니다! 는 내가 REPO/계정을 붙어 설정을 얻을 : 엑스 코드 -> 환경 설정 ->의 repo를 추가 SVN + SSH 주소 유형 서브 그것은 사용자 이름 암호를 요구하지만 키에 넣어 곳이 없습니다를 입력 탭 계정. 서버 설정 측면에서 실제로 키 텍스트에 붙여 넣을 수 있습니다. Add를 누르면 "인증 정보 확인 중 ..."이라고 표시되고 큰 팝업 창에 ssh 서버 배너가 표시됩니다. -update OMG 나는 대답을 업데이트하고 보조 자릿수 경로를 추가하기 위해 배너를 삭제하고 인증을 – hooby3dfx

+0

+1했습니다. git에는'git svn'도 있습니다. https://www.atlassian.com/git/tutorials/migrating-overview – thesummersign

0

연속으로 완화 제공 Xcode 봇과의 통합

Xcode 서버가 내장되어 있습니다. 지속적인 통합 봇은 MacOS Server를 설치할 필요가없는 Xcode 9가 설치된 모든 Mac에서 실행할 수 있습니다.

난 당신이 저장소의 어떤 종류를 사용합니까 엑스 코드 (9)

Xcode9 - Xcode server comprehensive iOS continuous integration