Menu

Gribble_Backups

nanotube

This page contains information on data backups and restoration for the configuration of the gribble bot.

Setup

There is a crontab to do things automatically. Changes are committed to a git repo on the dreamhost (nanotube's) VPS, then the git repo is rsync'ed to the following directory on the project webspace:

/home/groups/g/gr/gribble/datastore/.git

We're not using the built-in project git facility for this, because that's world-readable. Since configuration files have passwords in them, we're keeping it private.

All the config necessary to replicate gribble exactly (minus the actual project supybot code) is in there. This is being rsync'ed every day at midnight California time.

Backup contents

  • conf/channels.conf - channel-specific configuration
  • conf/ignores.conf - list of users to be ignored by the bot (currently empty)
  • conf/userdata.conf - used by some plugins for user data
  • conf/users.conf - registered user database with user hostmasks and permissions
  • data/#sourceforge/Dunno.flat.db - the Dunno plugin database - currently used to put out a more helpful message when an invalid command is issued to the bot
  • data/#sourceforge/Factoids.db - the Factoids plugin database, used to point users to frequently-asked-for information
  • data/#sourceforge/MessageParser.db - the MessageParser plugin database, used to respond to patterns within IRC messages.
  • data/ChannelStats.db - the ChannelStats plugin database, containing historical channel statistics
  • my_supybot.conf - Main supybot config file, containing everything else.

File restoration

Grab the .git directory from

/home/groups/g/gr/gribble/datastore/

on the project webspace, and place it inside an empty directory. Then, from the same directory where you placed .git, run

git checkout .

to check out the latest committed versions of the conf files, factoids database, and everything else listed in the previous section. (For more info on using git, see the git project site.

You can then grab the latest code from project supybot, set up the bot, and feed it the conf files.