2013-10-29 17 views
10

Tôi muốn thực hiện tích hợp liên tục bằng chương trình Xcode. Tôi đã cài đặt OSX Mavericks và Server (phiên bản 3). Tôi có thể tạo bot bằng Xcode 5.0.1. Trong khi tích hợp nó được thực hiện thành công phân tích thử nghiệm nhưng luôn luôn kết quả hội nhập cuối cùng là thất bại.Tích hợp liên tục với Xcode Bots

Không thể tích hợp. Lỗi máy chủ nội bộ không mong muốn. Xem nhật ký của tích hợp để biết thêm chi tiết.`

Tôi không hiểu bất kỳ điều gì từ nhật ký lỗi máy chủ. Không do một số lỗi liên quan đến dịch vụ wiki.

Có ai có thể giúp tôi không?

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

Những loại kho nào bạn sử dụng? Tôi đã có vấn đề bằng cách sử dụng một repo SVN đồng bằng. Nhưng tôi đã giải quyết nó bằng cách bật xác thực svn + ssh và khóa công khai. – gamma

+0

@gamma i'am sử dụng repo SVN được lưu trữ trên máy chủ (yêu cầu xác thực mật khẩu) Đây là kho lưu trữ tập trung mà công ty của tôi cung cấp –

+0

Yup, có cùng thiết lập. Chỉ có cách là để tìm ra cách để làm cho svn + ssh làm việc. Tôi đã cài đặt một SSHService (Cygwin), đã thực hiện một lược đồ xác thực cho PublicKey auth cho người dùng đang chạy với Xcode và người dùng cục bộ của tôi. Tôi chưa tìm ra cách làm điều này với auth mật khẩu. Nếu bạn muốn tôi có thể tạo ra một câu trả lời với mô tả đầy đủ – gamma

Trả lời

1

Tôi gặp sự cố tương tự. Trong trường hợp của tôi, đó là vấn đề truy cập kho lưu trữ mã nguồn. Máy chủ OSX có vấn đề về DNS đã ngăn không cho nó tiếp cận máy chủ. Bạn có thể kiểm tra xem bạn có thể truy cập kho lưu trữ mã nguồn của mình không?

+0

Làm thế nào để kiểm tra xem? Cách bạn giải quyết vấn đề của mình. Kho lưu trữ của tôi là proxy được kích hoạt và nó yêu cầu xác thực. Tôi đã cung cấp thông tin xác thực bắt buộc cho máy chủ OSX. Tôi nghĩ rằng nó có thể truy cập vào kho lưu trữ kể từ khi tích hợp là không chỉ ở giai đoạn cuối cùng sau khi phân tích và thử nghiệm. Kết quả cuối cùng luôn thất bại –

+0

Tôi hiểu. Bạn có thể dán nội dung hiển thị trong nhật ký tích hợp của mình không? Bạn sẽ tìm thấy nó trên trang chi tiết bot của bạn sau khi bạn đã chọn chạy gần đây của bạn ở bên trái. – Truth

9

Vấn đề có vẻ là XCode5 Bots không biết cách sử dụng svn thuần túy. Bạn phải sử dụng svn + ssh.

[CẬP NHẬT] Bạn cũng có thể sử dụng git ... được đồng bộ hóa với SVN của bạn. Quy trình làm việc hơi khác một chút, nhưng nó hoạt động rất tốt.

tôi thấy ngày hôm nay: subgit

Nó hoàn toàn tích hợp vào GIT và SVN, bạn có thể thiết lập các kho GIT trong Xcode Server và nâng cấp chúng với subgit - cả hai đều sẽ ở lại đồng bộ. (đã cho tôi khoảng nửa giờ để hoàn toàn hiểu cách hoạt động)

Tốt nhất của tất cả: giấy phép 10 chỗ ngồi (nghĩa là 10 cộng tác viên thông qua subgit) là hoàn toàn miễn phí (và khá đủ cho trường hợp sử dụng của tôi).

[TRẢ LỜI TRƯỚC] Tôi đã thực hiện một giải pháp đơn giản liên quan đến Máy chủ SSH trên máy chủ SVN. Tôi nghĩ rằng nó không quan trọng cái nào, nhưng tôi hiện đang sử dụng Cygwin.

Trong/etc/sshd_config bạn cần phải thêm một hệ thống phụ

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

Bạn cần phải tạo file /etc/svnserve-proxy

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

Bạn phải thay đổi svnserve lệnh và repository tương ứng. Trên máy tính địa phương của bạn, bạn phải thay đổi các tập tin ~/.subversion/config và thêm một dòng [tunnels]:

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

username là tên của người dùng mà bạn muốn để xác thực với. Giải pháp này nhanh chóng và dơ bẩn và không cho phép người dùng khác nhau xác thực. Ngoài ra, Xcode cần sử dụng cùng tên người dùng trên máy cục bộ của bạn và Bot-Server. Nó là khá có thể là bạn phải tạo một thư mục nhà _teamsuser và đặt một subversion/config trong đó là tốt.

Một thay thế sẽ được sử dụng công phím (Như máy chủ bot đã tạo ra) Sau đó bạn có thể đặt những thành authorized_keys và đặt một lệnh trước:

command="svnserve -t -r <repository> --tunnel-user=<user>" rsa-ssh AAA 
+0

Tôi đã cố gắng để có được thiết lập này với các khóa công khai, nhưng không thể tạo bot trong xcode! Tôi gặp khó khăn trong việc thiết lập tài khoản repo/tài khoản: Xcode -> Tùy chọn -> tab Tài khoản Thêm repo Nhập địa chỉ svn + ssh Loại Subversion Yêu cầu mật khẩu tên người dùng nhưng không có chỗ nào được đưa vào khóa. Về phía thiết lập máy chủ, bạn thực sự có thể dán vào văn bản khóa. Khi tôi nhấn Thêm nó nói "Đang xác minh thông tin đăng nhập ..." thì chỉ hiển thị biểu ngữ máy chủ ssh trong cửa sổ bật lên lớn. -OMG cập nhật Tôi đã xóa BANNER AND ITS AUTHENTICATING – hooby3dfx

+0

+1 để cập nhật câu trả lời và thêm đường dẫn phụ. git cũng có 'git svn' để làm điều đó. https://www.atlassian.com/git/tutorials/migrating-overview – thesummersign

0

Với Xcode 9 táo mang lại dễ dàng để liên tục tích hợp với chương trình Xcode.

Xcode Server được tích hợp sẵn. Các chương trình tích hợp liên tục có thể chạy trên bất kỳ máy Mac nào có Xcode 9, không cần cài đặt macOS Server.

tôi thấy bài viết rất tốt giải thích làm thế nào để cấu hình nó với Xcode 9.

Xcode9 - Xcode server comprehensive iOS continuous integration

Các vấn đề liên quan