Chúng tôi có mã nguồn được lưu trữ trong kho lưu trữ Kiln/Mercurial; chúng tôi sử dụng MSBuild để xây dựng sản phẩm của mình và chúng tôi có Bài kiểm tra đơn vị sử dụng MSTest (Kiểm tra đơn vị Visual Studio).Các khuyến nghị để tích hợp liên tục cho Mercurial/Kiln + MSBuild + MSTest
Giải pháp nào tồn tại để triển khai máy tích hợp liên tục (ví dụ: Máy xây dựng).
Các yêu cầu cho việc này là:
- Một xây dựng nên được đá khi cần thiết (ví dụ mã đã thay đổi trong Repositories chúng ta quan tâm)
- Trước khi xây dựng thực tế, phiên bản mới nhất của mã nguồn mã phải được mua từ kho chúng tôi đang xây dựng từ
- việc xây dựng phải xây dựng toàn bộ sản phẩm
- việc xây dựng phải xây dựng tất cả các Unit Tests
- việc xây dựng phải thực hiện tất cả kiểm tra đơn vị
- Tóm tắt thành công/thất bại phải được gửi đi sau khi quá trình xây dựng kết thúc; điều này phải bao gồm thông tin về bản thân xây dựng mà còn về việc Kiểm tra Đơn vị nào bị lỗi và những thành công nào đã thành công.
- Bản tóm tắt phải chứa những thay đổi trong bản dựng này chưa có trong thành công trước đó! (01) Xây dựng
- Hệ thống phải được cấu hình để nó có thể xây dựng từ nhiều nhánh (/ Kho lưu trữ).
Lý tưởng nhất, hệ thống này sẽ chạy trên một hộp (sản phẩm của chúng tôi không lớn) mà không có bất kỳ thành phần máy chủ nào.
Giải pháp nào hiện có sẵn? Ưu/nhược điểm của họ là gì? Từ danh sách trên, những gì có thể được thực hiện và những gì không thể được thực hiện?
Cảm ơn
Tôi đã bỏ CruiseControl cho TeamCity và toàn bộ nhóm của tôi rất hài lòng với thay đổi này. Chúng tôi sử dụng MSBuild script cho các dự án và NUnit để thử nghiệm. Chúng tôi phát triển chủ yếu các ứng dụng C++ và C# – T33C