diff --git a/roles/taskotron/buildmaster-configure/templates/ci.master.cfg.j2 b/roles/taskotron/buildmaster-configure/templates/ci.master.cfg.j2 index bf1bfabfd0..ccecef6c42 100644 --- a/roles/taskotron/buildmaster-configure/templates/ci.master.cfg.j2 +++ b/roles/taskotron/buildmaster-configure/templates/ci.master.cfg.j2 @@ -271,86 +271,9 @@ authz_cfg=authz.Authz( stopAllBuilds = False, cancelPendingBuild = 'auth', ) -c['status'].append(html.WebStatus(http_port=8080, authz=authz_cfg, - change_hook_dialects={'base':True})) c['status'].append(html.WebStatus(http_port=8010, authz=authz_cfg)) -from buildbot.status.mail import MailNotifier -from buildbot.status.builder import Results - -import cgi - -# http://docs.buildbot.net/current/manual/cfg-statustargets.html#mailnotifier -def html_message_formatter(mode, name, build, results, master_status): - """Provide a customized message to Buildbot's MailNotifier. - - The last 80 lines of the log are provided as well as the changes - relevant to the build. Message content is formatted as html. - """ - result = Results[results] - - limit_lines = 80 - text = list() - text.append(u'

Build status: %s

' % result.upper()) - text.append(u'') - text.append(u"" % build.getSlavename()) - if master_status.getURLForThing(build): - text.append(u'' - % (master_status.getURLForThing(build), - master_status.getURLForThing(build)) - ) - text.append(u'' % build.getReason()) - text.append(u'
Buildslave for this Build:%s
Complete logs for all build steps:%s
Build Reason:%s
') - text.append(u'
') - - logs = [] - steps = build.getSteps() - for step in steps: - if step.getName().endswith('test'): - logs = step.getLogs() - break - - # logs within a step are in reverse order. Search back until we find stdio - for log in reversed(logs): - if log.getName() == 'stdio': - break - - name = "%s.%s" % (log.getStep().getName(), log.getName()) - content = log.getText().splitlines() # Note: can be VERY LARGE - url = u'%s/steps/%s/logs/%s' % (master_status.getURLForThing(build), - log.getStep().getName(), - log.getName()) - - text.append(u'Detailed log of last build step: %s' - % (url, url)) - text.append(u'
') - text.append(u'

Last %d lines of "%s"

' % (limit_lines, name)) - unilist = list() - for line in content[len(content)-limit_lines:]: - unilist.append(cgi.escape(unicode(line,'utf-8'))) - text.append(u'
')
-        text.extend(unilist)
-        text.append(u'
') - text.append(u'

') - text.append(u'-The Buildbot') - return { - 'body': u"\n".join(text), - 'type': 'html' - } -''' -mn = MailNotifier(fromaddr='taskotron@fedoraproject.org', - sendToInterestedUsers=False, - subject="%(prop:taskname)s %(result)s in %(projectName)s on %(builder)s", - mode=('failing', 'exception', 'warnings'), - extraRecipients=['qa-taskotron-admin-members@fedoraproject.org'], - relayhost="bastion.phx2.fedoraproject.org", - messageFormatter=html_message_formatter) - - -c['status'].append(mn) -''' - ####### PROJECT IDENTITY # the 'title' string will appear at the top of this buildbot