This formatter can be used to generate arbitrary messages bodies according to arbitrary calculations.

As opposed to MessageFormatterRenderable, more information is made available to this reporter. As opposed to MessageFormatterFunctionRaw, only the message body can be customized.

class buildbot.reporters.message.MessageFormatterFunction(function, template_type, want_properties=True, wantProperties=None, want_steps=False, wantSteps=None, wantLogs=None, want_logs=False, want_logs_content=False)
  • function (callable) –

    A callable that will be called with a dictionary.

    If the message formatter is used to format a build, the dictionary contains build key with the build dictionary as received from the data API.

    If the message formatter is used to format a buildset (e.g. when used from BuildSetCombinedStatusGenerator), the dictionary contains the following:

    • buildset key with the buildset dictionary as received from the data API.

    • builds key with the builds dictionaries as received from the data API.

  • template_type (string) – either plain, html or json depending on the output of the formatter. JSON output must not be encoded.

  • want_properties (boolean) – include ‘properties’ in the build dictionary

  • wantProperties (boolean) – deprecated, use want_properties instead

  • want_steps (boolean) – include ‘steps’ in the build dictionary

  • wantSteps (boolean) – deprecated, use want_steps instead

  • wantLogs (boolean) – deprecated, use want_logs and want_logs_content set to the same value.

  • want_logs (boolean) – include ‘logs’ in the steps dictionaries. This implies wantSteps=True. This includes only log metadata, for content use want_logs_content.

  • want_logs_content (boolean) – include logs content in the logs dictionaries. This implies want_logs=True and wantSteps=True. This dumps the full content of logs and may consume lots of memory and CPU depending on the log size.