Числе людей в моих организациях имеют разные имена электронной почты из неволи имен, так что мне нужно, чтобы создать вывод IEmailLookup, который переопределяет GetAddress делать свои злые торги:BuildBot не принимает мой объект IEMailLookup MailNotifier в
(С мой master.cfg)
class MyIEmailLookup:
from buildbot import interfaces
__implements__ = interfaces.IEmailLookup
def getAddresses(user):
address_dict = {"user1", "[email protected]_domain.com"}
try:
address = address_dict[user]
except KeyError:
address = user + "@our_domain.com"
return address
maillookup = MyIEmailLookup()
from buildbot.status import mail
c['status'].append(mail.MailNotifier(....
....
lookup=maillookup
))
Я пытался любое количество перестановок, но я либо получаю:
Traceback (most recent call last):
File "/Library/Python/2.6/site-packages/buildbot-0.8.3p1-py2.6.egg/buildbot/scripts/runner.py", line 1071, in doCheckConfig
ConfigLoader(configFileName=configFileName)
File "/Library/Python/2.6/site-packages/buildbot-0.8.3p1-py2.6.egg/buildbot/scripts/checkconfig.py", line 46, in __init__
self.loadConfig(configFile, check_synchronously_only=True)
File "/Library/Python/2.6/site-packages/buildbot-0.8.3p1-py2.6.egg/buildbot/master.py", line 727, in loadConfig
exec f in localDict
File "/Users/playbuilder/buildbot/master.cfg", line 207, in <module>
lookup=maillookup
File "/Library/Python/2.6/site-packages/buildbot-0.8.3p1-py2.6.egg/buildbot/status/mail.py", line 293, in __init__
assert interfaces.IEmailLookup.providedBy(lookup)
AssertionError
... или любое другое число вопросов, висимость как я пытаюсь реализовать интерфейс IEmailLookup.
Я использую buildbot 0.8.3p1 и python 2.6.1.
Я вижу несколько примеров того, как это сделать, и каждый из них терпит неудачу в моем контексте. Что мне здесь не хватает?
+1 для входа, но я уже давно отказался на стройке и переключился на Дженкинса. Я не мог быть счастливее с решением. – Sniggerfardimungus
'tools (interfaces.IEmailLookup)' достаточно, нет причин иметь 'if tools '. (Если вы импортируете инструменты, то он всегда будет там. В любом случае zope.interface является жесткой зависимостью скрученного и buildbot. –