首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Buildbot如何处理多个构建器

Buildbot如何处理多个构建器
EN

Stack Overflow用户
提问于 2020-09-16 18:46:31
回答 1查看 183关注 0票数 2

我按照本教程在FreeBSD 12.1上安装了buildbot服务器:

https://www.digitalocean.com/community/tutorials/how-to-build-and-deploy-packages-for-your-freebsd-servers-using-buildbot-and-poudriere

在我更改教程如何处理工作人员数组之后,服务器正在使用poudriere进行工作和构建。

我在/var/buildbot-master/master.var文件中对教程说明作了如下调整:

代码语言:javascript
复制
. . .
####### SCHEDULERS

c['schedulers'] = []

# Forceful scheduler allowed for all builders
c['schedulers'].append(schedulers.ForceScheduler(
    name='force',
    builderNames=[builder.name for builder in c['builders']]))

# Watch ports tree for changes on given branch
c['schedulers'].append(schedulers.SingleBranchScheduler(
    name='sched-bulk-121amd64-2020Q2',
    change_filter=util.ChangeFilter(project='freebsd-ports', branch='branches/2020Q2'),
    builderNames=['bulk-121amd64-2020Q2']))
. . .

这一行在启动上给出了错误

代码语言:javascript
复制
builderNames=[builder.name for builder in c['builders']]))

我不知道pyhton,但是我认为这是一个,用于数组中获取所有构建器名称.

错误信息是:

代码语言:javascript
复制
2020-09-16 15:33:18-0300 [-] twistd 20.3.0 (/usr/local/bin/python3.7 3.7.9) starting up.
2020-09-16 15:33:18-0300 [-] reactor class: twisted.internet.pollreactor.PollReactor.
2020-09-16 15:33:18-0300 [-] Starting BuildMaster -- buildbot.version: 2.7.0
2020-09-16 15:33:18-0300 [-] Loading configuration from '/var/buildbot-master/master.cfg'
2020-09-16 15:33:18-0300 [-] error while parsing config file:
        Traceback (most recent call last):
          File "/usr/local/lib/python3.7/site-packages/twisted/python/threadpool.py", line 266, in <lambda>
            inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
          File "/usr/local/lib/python3.7/site-packages/twisted/python/context.py", line 122, in callWithContext
            return self.currentContext().callWithContext(ctx, func, *args, **kw)
          File "/usr/local/lib/python3.7/site-packages/twisted/python/context.py", line 85, in callWithContext
            return func(*args,**kw)
          File "/usr/local/lib/python3.7/site-packages/buildbot/config.py", line 170, in loadConfig
            self.basedir, self.configFileName)
        --- <exception caught here> ---
          File "/usr/local/lib/python3.7/site-packages/buildbot/config.py", line 128, in loadConfigDict
            execfile(filename, localDict)
          File "/usr/local/lib/python3.7/site-packages/twisted/python/compat.py", line 247, in execfile
            exec(code, globals, locals)
          File "/var/buildbot-master/master.cfg", line 103, in <module>
            builderNames=[builder.name for builder in c['builders']]))
        builtins.KeyError: 'builders'

2020-09-16 15:33:18-0300 [-] Configuration Errors:
2020-09-16 15:33:18-0300 [-]   error while parsing config file: 'builders' (traceback in logfile)
2020-09-16 15:33:18-0300 [-] Halting master.
2020-09-16 15:33:18-0300 [-] BuildMaster startup failed
2020-09-16 15:33:18-0300 [-] BuildMaster is stopped
2020-09-16 15:33:18-0300 [-] Main loop terminated.
2020-09-16 15:33:18-0300 [-] Server Shut Down.

下面的部分指向 me 在其中做出change

代码语言:javascript
复制
          File "/var/buildbot-master/master.cfg", line 103, in <module>
            builderNames=[builder.name for builder in c['builders']]))
        builtins.KeyError: 'builders'

2020-09-16 15:33:18-0300 [-] Configuration Errors:
2020-09-16 15:33:18-0300 [-]   error while parsing config file: 'builders' (traceback in logfile)
2020-09-16 15:33:18-0300 [-] Halting master.

所以,检查数组,我对参数进行了硬编码:

代码语言:javascript
复制
builderNames=[builder.name for builder in c['builders']]))

至:

代码语言:javascript
复制
builderNames=['bulk-121amd64-2020Q2']))

然后构建机器人启动wihtout错误,并可以运行poudriere。

我的问题是

正确的语法应该使用什么来检查、数组、c‘’builders‘、让它动态而不是硬编码?

尝试了很多python教程中的例子,但都没有成功。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-22 06:18:40

在默认的master.cfg.sample中,结构c['builders']是在c['schedulers']之后创建的,这就是为什么在代码中没有定义它的原因。

尝试在调度程序块之前放置(移动)生成器块。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63926208

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档