如何在buildbot中“返工”(或者,如何修复缺失的力按钮)?

时间:2016-10-19 19:58:31

标签: buildbot

从这个buildbot主配置开始:

# -*- python -*-
# ex: set filetype=python:

from buildbot.plugins import *

c = BuildmasterConfig = {}
c['workers'] = [worker.Worker("example-worker", "pass")]
c['protocols'] = {'pb': {'port': 9989}}
c['change_source'] = []
c['schedulers'] = []
c['schedulers'].append(schedulers.ForceScheduler(
                            name="force",
                            builderNames=["awesomesauce", "runtests"]))

factory = util.BuildFactory()
factory.addStep(steps.ShellCommand(command=['echo', 'hi']))

c['builders'] = []
c['builders'].append(
    util.BuilderConfig(name="runtests",
      workernames=["example-worker"],
      factory=factory))

c['builders'].append(
    util.BuilderConfig(name="awesomesauce",
      workernames=["example-worker"],
      factory=factory))

c['status'] = []
c['title'] = "Cool Beans"
c['titleURL'] = "http://example.com"
c['buildbotURL'] = "http://localhost:8010/"
c['www'] = dict(port=8010,
                plugins=dict(waterfall_view={}, console_view={}))
c['db'] = {
    'db_url' : "sqlite:///state.sqlite",
}

如果我将ForceScheduler更改为具有以下内容:

builderNames=['awesomesauce', 'runtests', 'coolbeans']

然后只需复制构建器追加块并更改名称:

c['builders'].append(
    util.BuilderConfig(name="coolbeans",
      workernames=["example-worker"],
      factory=factory))

然后当我这样做时:

buildbot reconfigure master

它说它添加了新的构建器,但是当我进入构建器页面时,它只列出了原始两个构建器的worker,并且构建器页面中缺少force按钮。茹罗。

有没有办法在不完全重新启动buildbot master的情况下修复worker / builder链接?

1 个答案:

答案 0 :(得分:1)

对于Force按钮,我说你还必须重新配置ForceScheduler,这不是你描述的一部分。

对于工作人员分配,看起来确实这是我们的重新配置算法的错误 http://trac.buildbot.net/ticket/3629#ticket

此错误仅影响UI。构建器仍配置有此工作程序,并且应该能够使用该工作程序启动构建