[Buildbot-commits] [Buildbot] #2063: Documentation for IRC bot configuration is wrong
Buildbot
nobody at buildbot.net
Tue Jul 26 12:14:51 UTC 2011
#2063: Documentation for IRC bot configuration is wrong
--------------------+--------------------------------
Reporter: ajb | Owner:
Type: defect | Status: new
Priority: major | Milestone: undecided
Version: 0.8.3p1 | Keywords: documentation, irc
--------------------+--------------------------------
The manual currently describes configuring the IRC bot as:
{{{
from buildbot.status import words
irc = words.IRC("irc.example.org", "botnickname",
channels=[{"channel": "#example1"},
{"channel": "#example2",
"password": "somesecretpassword"}],
password="mysecretnickservpassword",
notify_events={
'exception': 1,
'successToFailure': 1,
'failureToSuccess': 1,
})
}}}
This was resulting in a failure to logon with the following backtrace:
{{{
2011-07-25 16:25:26+0100 [IrcStatusBot,client] Unhandled Error
Traceback (most recent call last):
File "/usr/lib/python2.6/dist-packages/twisted/internet/tcp.py",
line 460, in doRead
return self.protocol.dataReceived(data)
File "/usr/lib/python2.6/dist-
packages/twisted/words/protocols/irc.py", line 2279, in dataReceived
basic.LineReceiver.dataReceived(self, data.replace('\r', ''))
File "/usr/lib/python2.6/dist-
packages/twisted/protocols/basic.py", line 251, in dataReceived
why = self.lineReceived(line)
File "/usr/lib/python2.6/dist-
packages/twisted/words/protocols/irc.py", line 2287, in lineReceived
self.handleCommand(command, prefix, params)
--- <exception caught here> ---
File "/usr/lib/python2.6/dist-
packages/twisted/words/protocols/irc.py", line 2331, in handleCommand
method(prefix, params)
File "/usr/lib/python2.6/dist-
packages/twisted/words/protocols/irc.py", line 1726, in irc_RPL_WELCOME
self.signedOn()
File "/usr/lib/python2.6/dist-
packages/buildbot/status/words.py", line 793, in signedOn
self.join(c)
File "/usr/lib/python2.6/dist-
packages/twisted/words/protocols/irc.py", line 1327, in join
if channel[0] not in CHANNEL_PREFIXES:
exceptions.KeyError: 0
}}}
After examining the code it seems it's looking for a simple list of
channels. For example:
{{{
from buildbot.status import words
irc = words.IRC("localhost", "buildbot",
channels=["#eng"],
password="buildbot_nick_pw",
notify_events={
'exception': 1,
'successToFailure': 1,
'failureToSuccess': 1,
})
c['status'].append(irc)
}}}
This configuration worked fine.
--
Ticket URL: <http://trac.buildbot.net/ticket/2063>
Buildbot <http://buildbot.net/>
Buildbot: build/test automation
More information about the Commits
mailing list