Caution

Buildbot no longer supports Python 2.7 on the Buildbot master.

2.5.15.9. GitHubStatusPush

from buildbot.plugins import reporters, util

context = Interpolate("bb/%(prop:buildername)s")
c['services'].append(reporters.GitHubStatusPush(token='githubAPIToken', context=context))

GitHubStatusPush publishes a build status using the GitHub Status API.

It requires txrequests package to allow interaction with the GitHub REST API.

It requires a GitHub API token in order to operate.

You can create a token from your own GitHub - Profile - Applications - Register new application or use an external tool to generate one.

class buildbot.plugins.reporters.GitHubStatusPush(token, context=None, generators=None, baseURL=None, verbose=False)
Parameters:
  • token (string) – Token used for authentication. (can be a Secret)

  • context (renderable string) – Passed to GitHub to differentiate between statuses. A static string can be passed or Interpolate for dynamic substitution. The default context is buildbot/%(prop:buildername)s.

  • generators (list of IReportGenerator instances) – A list of report generators that will be used to generate reports to be sent by this reporter. Currently the reporter will consider only the report generated by the first generator.

  • baseURL (string) – Specify the github api endpoint if you work with GitHub Enterprise

  • verbose (boolean) – If True, logs a message for each successful status push