На моем рабочем месте мы используем Buildbot для тестирования одной программы на нескольких архитектурах и версиях Python. Я использую одного мастера сборки, чтобы контролировать около 16 рабов. Каждый набор рабов извлекает из своего репо и тестирует его на Python 2.X.
Исходя из моего опыта, было бы легко настроить один мастер сборки для запуска набора проектов. Это может быть не очень хорошей идеей, потому что страница водопада (на которой подчиненные сборки сообщают о результатах) может быть перегружена несколькими рабами. Если вам удобно листать длинную страницу водопада, тогда это не будет проблемой.
EDIT:
Команда обновления в master.cfg:
test_python26_linux.addStep(ShellCommand, name = "update pygr",
command = ["/u/opierce/PygrBuildBot/update.sh","000-buildbot","ctb"], workdir=".")
000-buildbot и ctb - это дополнительные параметры, указывающие, из какой ветки и репо нужно извлечь информацию, чтобы получить информацию. Скрипт update.sh - это то, что я написал, чтобы избежать несвязанной проблемы с git. Если вы хотите запустить разные проекты, вы можете написать что-то вроде:
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)
Два проекта не должны быть связаны. Buildbot создает каталог для каждого сборщика и выполняет все шаги в этом каталоге.