2011-01-13 38 views
8

Tôi muốn truy vấn máy chủ CCNet của mình để tìm hiểu trạng thái của các bản dựng. Tôi đã nghe tin đồn rằng có một (ReST?) API của các loại, nhưng tôi dường như không thể tìm thấy bất kỳ tài liệu hướng dẫn cho nó.CCNet API, tài liệu?

Có tài liệu nào cho tài liệu đó hay không, tôi có cần tải xuống mã nguồn CCNet và bắt đầu đọc không?

EDIT: Tôi đã tìm thấy điểm cuối /XmlStatusReport.aspx, cung cấp tổng quan về XML của tất cả các dự án. Tuy nhiên, cùng một tên tệp trong bất kỳ thư mục nào cũng đưa ra chính xác cùng một phản hồi, vì vậy tôi e rằng đó có thể là API duy nhất có.

+0

Xem câu hỏi này để biết các câu trả lời có thể có: http://stackoverflow.com/questions/3467364/is-there-an-api-for-cruise-control-net –

Trả lời

4

Là một thay thế cho XML bạn đã đề cập đến chính mình, bạn có thể sử dụng tính năng remoting làm ứng dụng CCTray. Nếu bạn tham khảo hình thức ThoughtWorks.CruiseControl.Remote.dll thư mục CruiseControl.NET \ server, bạn có thể khởi tạo CruiseServerRemotingClient và sử dụng nó để lấy thông tin từ máy chủ.

Đoạn in sau ra danh sách các dự án trên máy chủ và xây dựng của họ trạng thái:

CruiseServerRemotingClient client = new CruiseServerRemotingClient("tcp://ccnetserver:21234/CruiseManager.rem"); 
ProjectStatus[] statusList = client.GetProjectStatus(); 
foreach (ProjectStatus status in statusList) 
{ 
    Console.WriteLine("{0}: {1}", status.Name, status.BuildStatus); 
} 

Bạn cũng có thể lấy các bản ghi cho việc xây dựng mới nhất trong định dạng XML như sau:

string buildName = client.GetLatestBuildName("Jasenje"); 
Console.WriteLine(client.GetLog("Jasenje", buildName)); 

Tôi chưa quản lý để tìm bất kỳ tài liệu thực nào cho API nhưng ít nhất có các nhận xét XML với các mô tả ngắn gọn về các phương thức và tham số.