J'utilise Buildbot V.0.9.0rc3Comment passer des variables à Buildbot?
Mon Buildbot déclenche quand j'envoie un changement via la ligne de commande ou si je receieve une demande HTTP POST à l'adresse correcte.
Actuellement, je suis envoyer les modifications à buildbot de deux façons différentes:
$ buildbot sendchange -m localhost:9999 -a example-user:pass -W me -C default
ou
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
Mes ordonnanceurs sont définis comme suit:
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}})
Et mon étape dans l'usine le clonage d'un repo ressemble à ceci:
factory.addStep(steps.Git(repourl='[email protected]:AAlvz/my_repo.git', mode='full', workdir='newFolder', branch='my_branch', submodules=True, clobberOnFailure=True))
Je voudrais recevoir un POST avec des données et utiliser ces données pour déclencher différentes commandes. Quelque chose comme: (en utilisant $
pour rendre les variables visibles)
factory.addStep(steps.Git(repourl=$myjson.name, mode='full', workdir=$myjson.path, branch=$myjson.branch, submodules=True, clobberOnFailure=True))
De cette façon, je pouvais envoyer un JSON comme:
{myjson: {name: github/myrepo.git, path: /tmp/my/path, branch: my_branch}}
et être en mesure de cloner le dépôt fourni par le JSON.
Merci d'avance! J'espère que la question est assez claire. Je peux fournir des journaux ou toute configuration nécessaire. Merci!