if hasattr(config, 'irc') and config.irc: # This module will patch IRC reporter to make use of SASL # This is advised by Freenode oper to avoid bans which could trap our bot from utils import irc_sasl services.append(reporters.IRC( host=config.irc['server'], port=config.irc.get('port', 6667), useSSL=config.irc.get('ssl', False), nick=config.irc['nick'], password=config.irc.get('password', None), channels=config.irc.get('channels', []), pm_to_nicks=config.irc.get('nicks', []), useColors=True, authz={ # Order of match is 'command', '*', ''/'!' # Operation restricted to bot administrators '': config.irc.get('admins', False), # No dangerous command can be issued on IRC (real authentication required) '!': False, }, notify_events=[ 'exception', 'problem', 'recovery', ] )) if hasattr(config, 'discord_reporter') and config.discord_reporter: from utils import discord from buildbot.reporters.generators.buildset import BuildSetStatusGenerator from buildbot.reporters.generators.build import BuildStatusGenerator
__all__ = [] from buildbot.plugins import reporters import config irc_status = reporters.IRC(host=config.irc_host, nick=config.irc_nick, channels=config.irc_channels, notify_events={ 'exception': False, 'failureToSuccess': True, 'successToFailure': True }) webhook_status = reporters.HttpStatusPush(config.webhook_url)
str(config.options.get('GitHub Status', 'token')), context=Interpolate("%(prop:buildername)s"), verbose= True, # TODO: Turn off the verbosity once this is working reliably. builders=[ "llvm-clang-x86_64-expensive-checks-ubuntu", "llvm-clang-x86_64-win-fast", "clang-x86_64-debian-fast", "llvm-clang-x86_64-expensive-checks-debian", ]), reporters.IRC( useColors=False, host=str(config.options.get('IRC', 'host')), nick=str(config.options.get('IRC', 'nick')), channels=str(config.options.get('IRC', 'channels')).split(','), #authz=... # TODO: Consider allowing "harmful" operations to authorizes users. useRevisions=False, # FIXME: There is a bug in the buildbot showBlameList=True, notify_events=str(config.options.get('IRC', 'notify_events')).split(','), ), reporters.MailNotifier( mode=('problem', ), fromaddr= "*****@*****.**", # TODO: Change this to [email protected]. extraRecipients=status_email, extraHeaders={"Reply-To": status_email[0]}, # The first from the list. lookup="lab.llvm.org", messageFormatter=LLVMInformativeMailNotifier, # TODO: For debug purposes only. Remove later. dumpMailsToLog=True,
def getReporters(): # Should be a single e-mail address status_email = str(config.options.get('Master Options', 'status_email')).split(',') return [ # Note: reporters.GitHubStatusPush requires txrequests package to allow # interaction with GitHub REST API. reporters.GitHubStatusPush( str(config.options.get('GitHub Status', 'token')), context=Interpolate("%(prop:buildername)s"), verbose= True, # TODO: Turn off the verbosity once this is working reliably. builders=[ "llvm-clang-x86_64-expensive-checks-ubuntu", "llvm-clang-x86_64-win-fast", "clang-x86_64-debian-fast", "llvm-clang-x86_64-expensive-checks-debian", ]), reporters.IRC( useColors=False, host=str(config.options.get('IRC', 'host')), nick=str(config.options.get('IRC', 'nick')), channels=str(config.options.get('IRC', 'channels')).split(','), #authz=... # TODO: Consider allowing "harmful" operations to authorizes users. useRevisions=False, # FIXME: There is a bug in the buildbot showBlameList=True, notify_events=str(config.options.get('IRC', 'notify_events')).split(','), ), reporters.MailNotifier( mode=('problem', ), fromaddr= "*****@*****.**", # TODO: Change this to [email protected]. extraRecipients=status_email, extraHeaders={"Reply-To": status_email[0]}, # The first from the list. lookup="lab.llvm.org", messageFormatter=LLVMInformativeMailNotifier, # TODO: For debug purposes only. Remove later. dumpMailsToLog=True, ), # In addition to that the following notifiers are defined for special # cases. reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=[ "clang-aarch64-linux-build-cache", "clang-armv7-linux-build-cache" ]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["clang-x86_64-debian-fast"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["clang-x64-ninja-win7"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["clang-hexagon-elf"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=[ "clang-s390x-linux", "clang-s390x-linux-multistage", "clang-s390x-linux-lnt" ]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=[ "*****@*****.**", "*****@*****.**" ], subject="Build %(builder)s Failure", mode="failing", builders=["clang-x86_64-linux-abi-test"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["llvm-avr-linux"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=[ "lld-x86_64-win", "lld-x86_64-freebsd", "lld-x86_64-darwin", "clang-x86_64-linux-abi-test", "clang-with-lto-ubuntu", "clang-with-thin-lto-ubuntu", "llvm-clang-x86_64-expensive-checks-win", "llvm-clang-x86_64-expensive-checks-ubuntu" ]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=[ "*****@*****.**", "*****@*****.**" ], subject="Build %(builder)s Failure", mode="failing", builders=[ "polly-arm-linux", "aosp-O3-polly-before-vectorizer-unprofitable" ]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="problem", builders=["reverse-iteration"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["clang-cuda-k80", "clang-cuda-p4", "clang-cuda-t4"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["llvm-riscv-linux"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=[ "*****@*****.**", "*****@*****.**", "*****@*****.**", "*****@*****.**" ], subject="Build %(builder)s Failure", mode="failing", builders=["lldb-x64-windows-ninja"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**", "*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["mlir-windows"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["fuchsia-x86_64-linux"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["lldb-x86_64-fedora"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["fedora-llvm-x86_64", "x86_64-fedora-clang"]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["lldb-x86_64-debian"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["lldb-arm-ubuntu", "lldb-aarch64-ubuntu"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=[ "llvm-clang-x86_64-win-fast", "lld-x86_64-ubuntu-fast", "llvm-clang-x86_64-expensive-checks-ubuntu", "llvm-clang-win-x-armv7l", "llvm-clang-win-x-aarch64" ]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=["*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=["clang-ve-ninja"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**", "*****@*****.**"], subject="Build %(builder)s Failure", mode="failing", builders=[ "libc-x86_64-debian", "libc-x86_64_debian-dbg", "libc-x86_64-debian-dbg-asan" ]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="Sphinx build %(builder)s Failure", mode="failing", builders=["publish-sphinx-docs"]), reporters.MailNotifier( fromaddr="*****@*****.**", sendToInterestedUsers=True, extraRecipients=["*****@*****.**"], subject="ML Compiler Opt Failure: %(builder)s", mode="failing", builders=[ "ml-opt-dev-x86-64", "ml-opt-rel-x86-64", "ml-opt-devrel-x86-64" ]), reporters.MailNotifier(fromaddr="*****@*****.**", sendToInterestedUsers=False, extraRecipients=[ "*****@*****.**", "*****@*****.**" ], subject="Build %(builder)s Failure", mode="failing", builders=[ "flang-aarch64-ubuntu", "flang-aarch64-ubuntu-clang", "flang-aarch64-ubuntu-gcc10" ]), ]