Tại nơi làm việc của mình, chúng tôi sử dụng Buildbot để kiểm tra một chương trình trên một số kiến trúc và phiên bản của Python. Tôi sử dụng một bậc thầy xây dựng để giám sát khoảng 16 nô lệ. Mỗi bộ nô lệ lấy từ một repo khác và kiểm tra nó với Python 2.X.
Từ kinh nghiệm của tôi, bạn có thể dễ dàng định cấu hình một bậc thầy xây dựng duy nhất để chạy kết hợp các dự án. Điều này có thể không phải là một ý tưởng tốt bởi vì trang thác nước (nơi các kết quả báo cáo nô lệ xây dựng) có thể bị tắc nghẽn với nhiều hơn một vài nô lệ. Nếu bạn cảm thấy thoải mái khi cuộn qua một trang thác nước dài thì đây sẽ không phải là vấn đề.
EDIT:
Lệnh cập nhật trong master.cfg:
test_python26_linux.addStep(ShellCommand, name = "update pygr",
command = ["/u/opierce/PygrBuildBot/update.sh","000-buildbot","ctb"], workdir=".")
000-buildbot và ctb là tham số bổ sung để xác định các chi nhánh và repo để kéo từ để có được thông tin. Kịch bản update.sh là một cái gì đó tôi đã viết để tránh một vấn đề git không liên quan. Nếu bạn muốn chạy các dự án khác nhau, bạn có thể viết một cái gì đó như:
builder1.addStep(ShellCommand, name = "update project 1",
command = ["git","pull","git://github.com/your_id/project1.git"], workdir=".")
(the rest of builder1 steps)
builder2.addStep(ShellCommand, name = "update project 2",
command = ["git","pull","git://github.com/your_id/project2.git"], workdir=".")
(the rest of builder2 steps)
Hai dự án này không phải liên quan. Buildbot tạo một thư mục cho mỗi người xây dựng và chạy tất cả các bước trong thư mục đó.
Nguồn
2009-08-02 20:45:09
FWIW, hiện tại công việc đang được tiến hành để cải thiện quy mô của buildbot, được tài trợ bởi dự án Mozilla. (Ai điều hành một _master lớn buildmaster). Xem danh sách thư của buildbot để biết chi tiết. – Macke