我最近一直在研究buildbot,由于缺乏良好的文档和示例配置,很难理解buildbot是如何被广泛使用的。
根据buildbot手册,每个buildmaster负责1个代码库。这意味着,一家公司想要在10个项目中使用buildbot,需要维护10套不同的buildbot安装(主从配置、开放端口、带输出的网站等)。这真的是做事情的方式吗?我是否错过了创建易于维护和监控的mash-up的选项?
谢谢!
发布于 2009-08-02 20:45:10
在我工作的地方,我们使用Buildbot在几种体系结构和Python版本上测试单个程序。我使用一个构建主控来管理大约16个从属。每组从属程序从不同的存储库中提取数据,并针对Python2.x进行测试。
根据我的经验,可以很容易地配置一个构建主控来运行项目的混搭。这可能不是一个好主意,因为瀑布页面( build slaves报告结果的地方)可能会因为有多个slaves而变得非常拥挤。如果你喜欢滚动一个很长的瀑布页面,那么这不是问题。
编辑:
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为每个构建器创建一个目录,并运行该目录中的所有步骤。
发布于 2010-10-29 03:53:12
仅供参考,BuildBot 0.8.x支持在一个主机上使用多个存储库,从而简化了一些事情。
https://stackoverflow.com/questions/1219757
复制相似问题