从头开始搭建Buildbot
看起来这个东西应该很简单,大家似乎都能顺利安装。我花了好几个小时在一个新的 Debian squeeze 系统上,尝试了不同的安装方式(比如 easy_install、aptitude 还有从源代码 0.81p.tar.gz 安装),结果只得到了一个 localhost:9989 的页面,但没有启动任何从属节点。
我知道我创建了两个账户:buildmaster 和 buildslave,想问一下怎么清理并重新安装,以便能有一个服务器和一个从属节点来使用 git?
谢谢大家的帮助!
补充说明:
你说得对,确实有些细节没说清楚:
我是在 VirtualBox 上使用 Debian squeeze 6.0 的 32 位版本来运行 buildbot,两个账户:buildmaster 和 buildslave 都是在同一个虚拟环境中运行的。
我刚刚尝试了一个小例子(这个看起来真的很有趣):
easy_install buildbot
buildbot create-master /tmp/experimental_buildmaster
buildbot start /tmp/experimental_buildmaster
- 作为 root 用户时,缺少 jinja2,但从 buildmaster 启动时没有报错(??)
- 注释掉了那些导致错误的 Git 调用,试图启动最简单的演示
- buildslave create-slave /tmp/experimental_buildslave 127.0.0.1:9989 slave-name mypasswd
- 在日志中总是出现一条信息:"没有与主机名关联的地址"
看起来我离成功更近了一步,是吧?
4 个回答
这里有一些关于配置和运行buildslave的额外信息,适合在创建后使用。
安装完buildbot包后,会添加一个叫做/etc/init.d/buildbot的脚本,这样就可以把buildbot当作一个服务来运行(也就是说,系统重启后会自动启动)。
为了让这个脚本正常工作,你需要编辑它的配置文件。这个文件的名字在脚本里有说明,通常是/etc/default/buildbot。这个文件里的选项都比较简单明了。有一点特别的可以调整,就是buildbot运行的用户(默认是buildbot)。下面是一个例子,说明在什么情况下这很有用:
我需要写一个buildbot任务,其中一部分是管理在buildslave机器上运行的虚拟机(比如启动、停止、管理快照)。但是,只有vbox用户有权限这么做(我用的是Virtual Box虚拟机)。所以我简单地把/etc/buildbot/default里的user字段改成了vbox用户,这样就解决了问题。
希望这些信息对你有帮助。
对于像Kamal这样的人,这可能会有用:
这个小演示现在可以运行了: - 我以root身份操作,没有使用任何构建账户。 - 运行命令:easy_install buildbot - 然后执行:buildbot create-master /tmp/experimental_buildmaster
这里最重要的是
cp /tmp/experimental_buildmaster/master.cfg.example xperimental_buildmaster/master.cfg edit it
注意:slavePortnum 默认是:9989,git配置:如果参数不正确,buildmaster会报错。
接下来,
运行命令:buildbot start /tmp/experimental_buildmaster
等着看到“成功启动”的提示。
接着运行:easy_install buildbot-slave
然后执行:buildslave create-slave /tmp/experimental_buildslave localhost:9989 example-slave Password
我非常不同意提议的“.. .. ..”
接下来运行:buildslave start /tmp/experimental_buildslave
现在来点完全不同的:打开浏览器,输入localhost:8010
欢迎页面在这里,点击buildslave可以看到你的从属节点:摇滚吧!