2009-07-13 45 views
5

Tôi đang tìm giải pháp tự động hóa xây dựng để sử dụng với không gian giải pháp Visual Studio chứa nhiều dự án của các loại nguồn hỗn hợp (chủ yếu là Win32 C++ và C#). Ngoài ra, tất cả các mã được lưu trữ trong một kho lưu trữ Subversion. Vì vậy, nó cần phải đi tất cả các cách từ kéo xuống một bản sao làm việc của mã, để biên dịch nguồn, để xây dựng các tập tin cài đặt.Giải pháp tự động hóa Visual Studio Build

Yêu cầu như sau:

Absolute Phải có:

  • miễn phí
  • Dễ dàng sử dụng giao diện đồ họa (tôi đã có thể viết một loạt các nmake kịch bản ... Đây là những gì tôi không muốn làm)
  • Tích hợp Subversion (ít nhất có thể kéo xuống mã mới nhất)
  • Hỗ trợ nhiều ngôn ngữ nguồn (nghi ngờ vấn đề này vì nó được xây dựng với VS cuối cùng)
  • Tự động kết thúc đến cuối (một cú nhấp chuột)
  • Tạo cấu hình (tức là Trung gian vs phát hành)

Những điều tôi muốn

  • tập tin Nguồn tìm và thay thế (đối với tự động incrementing thông tin phiên bản trong các tập tin tiêu đề)
  • báo cáo
  • Automatic Email xây dựng sau Subversion cam kết
  • Giao diện web
  • Tích hợp FTP
  • Khả năng tên tập tin build tự động tạo với phiên bản chuỗi thích hợp

Những điều tôi không cần

  • hỗ trợ đơn vị kiểm tra
  • theo dõi Bug hội nhập
+0

Đây có phải là phần mềm thương mại hoặc miễn phí không? –

+0

Đó là để xây dựng Phần mềm thương mại –

Trả lời

3

NAntCruiseControl.Net thực hiện tất cả những điều này ngoại trừ việc không có GUI để tạo chính kịch bản dựng. GUI mà nó có là một giao diện người dùng web cho phép bạn giám sát/xây dựng lực lượng, cũng như một ứng dụng khay hệ thống làm như vậy. Nếu việc tạo ra các kịch bản GUI là một yêu cầu thực sự lớn thì final builder là một trong những lựa chọn tốt nhất của bạn, tuy nhiên nó sẽ khiến bạn mất tiền. Tôi không nghĩ rằng bạn sẽ nhận được GUI trong không gian này miễn phí.

+0

Bảng điều hướng web của ccnet có thể được sử dụng như một GUI rất đơn giản; bạn có thể ép buộc xây dựng từ đó, xem xét tiến trình (với các plugin thích hợp) và xem kết quả của bản dựng. Trân trọng, Sebastiaan –

+0

Tuyệt vời, đã cập nhật câu trả lời của tôi để phản ánh điều đó. cám ơn –

3

Bạn đã cân nhắc sử dụng MSBuild chưa? Nó đi kèm với khung công tác .NET.

Nó sẽ yêu cầu một lượng nhỏ mã hóa. Ví dụ, bạn phải tạo một lớp .net mới (xuất phát từ Tác vụ) ghi đè hàm Execute, sau đó gọi SVN để cập nhật mã nguồn của bạn. Nhưng phần lớn thiết lập sẽ nằm trong tệp build.xml nơi bạn có thể chỉ định tên tệp giải pháp và các cấu hình khác nhau.

Một giới thiệu hợp lý là ở đây: MSBuild

Tôi hiểu lý do tại sao bạn muốn làm điều này thông qua một giao diện đồ họa, nhưng IMHO sự linh hoạt bạn nhận được sử dụng MSBuild là xứng đáng với nỗ lực của cài đặt nó lên, trong khi không phức tạp như viết nó hoàn toàn từ đầu trong một ngôn ngữ kịch bản khác.

+1

Điều đó có hỗ trợ xây dựng ngôn ngữ không phải NET không? –

+0

Nếu bạn tạo một tác vụ xây dựng khác (một lần nữa, một lớp xuất phát từ Tác vụ và ghi đè Thực thi), bạn có thể gọi ra trình biên dịch cho ngôn ngữ đó. Chúng tôi làm điều này cho các bộ phận của sản phẩm của chúng tôi mà không phải là .NET, mà còn để xây dựng các gói cài đặt non-.NET. –

+1

Trước khi tạo các tác vụ MSBuild của riêng bạn, tôi khuyên bạn nên tìm kiếm trên web. Ví dụ, hầu hết các nhiệm vụ SVN bạn có thể cần là một phần của MSBuild Community Tasks, nằm ở đây: http://msbuildtasks.tigris.org/ – Pedro

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