The Cinch Github Plugin. Give your cinch bot abilities to interact with Github! This is still in its early phases!
if you haven't already...
$ gem install cinch
then install this gem.
$ gem install cinch-github
This plugin manages interaction between Github issues via the Github API.
To setup the Issue plugin to work with your cinch bot, we'll need to provide some info like so:
Cinch::Plugins::Github::Issue.configure do |c| c.user = 'achiu' # your github username c.token = 'some_token' # your github API token c.author = 'padrino' # your repository author c.repo = 'padrino-framework' # your repository name end
- !issue state [open|closed] [query] - returns issues that have state open or closed matching the query
- !issue find [query] - returns issues matching the query. defaults to state open
- !issue link [number] - returns issue link for issue number(must be digits)
- !issue comment [number] [comment] - comment on an issue
- !issue new [title] - Create a new issue
- !issue close [number] [optional comment] - Close an issue with an optional comment
- !issue reopen [number] [optional comment] - Reopen an issue with an optional comment
- !help github issue - returns commands for Github Issue
Integration with Cinch
It's simple. follow the guide on cinch or do something like:
# mybot.rb require 'cinch' require 'cinch/plugins/github' Cinch::Plugins::Github::Issue.configure do |c| c.user = 'achiu' # your github username c.token = 'some_token' # your github API token c.author = 'padrino' # your repository author c.repo = 'padrino-framework' # your repository name end bot = Cinch::Bot.new do configure do |c| c.server = "irc.freenode.net" c.nick = "cinch" c.channels = ["#padrino"] c.plugins.plugins = [Cinch::Plugins::Github::Issue] end end bot.start
Finally, run your bot.
ruby -rubygems mybot.rb
And there you go!
Michael D. Ivey (ivey)
- For having issue return a title and link when called.
- For adding new, close, reopen, and commenting operations with issues
- finish the other plugins for rest of Github API