infra-docs-fpo/modules/sysadmin_guide/pages/zodbot.adoc
2021-07-26 10:39:47 +02:00

102 lines
2.8 KiB
Text

= Zodbot Infrastructure SOP
zodbot is a supybot based irc bot that we use in our #fedora channels.
== Contents
[arabic]
. Contact Information
. Description
. shutdown
. startup
. Processing interrupted meeting logs
. Becoming an admin
== Contact Information
Owner::
Fedora Infrastructure Team
Contact::
#fedora-admin
Location::
Phoenix
Servers::
value01
Purpose::
Provides our IRC bot
== Description
zodbot is a supybot based irc bot that we use in our #fedora channels.
It runs on value01 as the daemon user. We do not config manage the
zodbot.conf because supybot makes changes to it on its own. Therefore it
gets backed up and is treated as data.
shutdown::
`killall supybot`
startup::
`cd /srv/web/meetbot` # zodbot current needs to be started in the
meetbot directory. # This requirement will go away in a later meetbot
release. `sudo -u daemon supybot -d /var/lib/zodbot/conf/zodbot.conf`
== Startup issues
If the bot won't connect, with an error like:
....
"Nick/channel is temporarily unavailable"
....
found in `/var/lib/zodbot/logs/messages.log`, hop on Freenode (with your
own IRC client) and do the following:
....
/msg nickserv release zodbot [the password]
....
The password can be found on the bot's host in
`/var/lib/zodbot/conf/zodbot.conf`
This should allow the bot to connect again.
== Processing interrupted meeting logs
zodbot forgets about meetings if they are in progress when the bot goes
down; therefore, the meetings never get processed. Users may request a
ticket in [52]our Trac instance to have meeting logs processed.
Trac tickets for meeting log processing should consist of a URL where
zodbot had saved the log so far and an uploaded file containing the rest
of the log. The logs are stored in /srv/web/meetbot. Append the
remainder of the log uploaded to Trac (don't worry too much about
formatting; meeting.py works well with irssi- and XChat-like logs), then
run:
....
sudo python /usr/lib/python2.7/site-packages/supybot/plugins/MeetBot/meeting.py replay /path/to/fixed.log.txt
....
Close the Trac ticket, letting the user know that the logs are processed
in the same directory as the URL they gave you.
== Becoming an admin
Register with zodbot on IRC.:
....
/msg zodbot misc help register
....
You have to identify to the bot to do any admin type commands, and you
need to have done so before anyone can give you privs.
After doing this, ask in #fedora-admin on IRC and someone will grant you
privs if you need them. You'll likely be added to the admin group, which
has the following capabilities (the below snippet is from an IRC log
illustrating how to get the list of capabilities).
....
21:57 < nirik> .list admin
21:57 < zodbot> nirik: capability add, capability remove, channels, ignore add,
ignore list, ignore remove, join, nick, and part
....