我正在使用Buildbot V.0.9.0rc3
当我通过命令行发送更改或者我收到http Post请求到正确的地址时,我的Buildbot会触发。
目前我以两种不同的方式向Buildbot发送更改:
$ buildbot sendchange -m localhost:9999 -a example-user:pass -W me -C default
或
curl -X POST -d author=aalvz -d comments=mycomment -d project=my_project -d category=default -d repository=some http://192.168.33.20:8020/change_hook/base
我的计划程序的定义如下:
c['schedulers'].append(schedulers.SingleBranchScheduler(
name="waiter",
builderNames=["runtests"],
change_filter=util.ChangeFilter(category='default')))
c['www'] = dict(port=8020,
plugins=dict(waterfall_view={}, console_view={}),
change_hook_dialects={
'base': True,
'somehook': {'option1':True,
'option2':False}})
我的步入工厂克隆回购邮件如下:
factory.addStep(steps.Git(repourl='git@github.com:AAlvz/my_repo.git', mode='full', workdir='newFolder', branch='my_branch', submodules=True, clobberOnFailure=True))
我想接收带有一些数据的POST,并使用该数据触发不同的命令。类似于:(使用$
使变量显着)
factory.addStep(steps.Git(repourl=$myjson.name, mode='full', workdir=$myjson.path, branch=$myjson.branch, submodules=True, clobberOnFailure=True))
这样我就可以发送一个JSON,如:
{myjson: {name: github/myrepo.git, path: /tmp/my/path, branch: my_branch}}
并且能够克隆JSON提供的存储库。
提前致谢!我希望这个问题足够清楚。我可以提供日志或任何所需的配置。谢谢!
答案 0 :(得分:1)
使用Buildbot Properties解决了这个问题。
你可以使用标志
通过命令行(使用PBChangeSource)发送它们buildbot sendchange ... --properties=my_property:myvalue
如果需要多个属性,则可以使用多个timpes。