class Gish::Runner

Public Class Methods

new(*args) click to toggle source
Calls superclass method
# File lib/gish/runner.rb, line 13
def initialize(*args)
  super
  return unless options.repository? && options.repository != 'repository'
  Gish.repository = options.repository
end

Public Instance Methods

assign(issue_number, user_login) click to toggle source
# File lib/gish/runner.rb, line 88
def assign(issue_number, user_login)
  return Gish.assign(issue_number, user_login) if Gish.is_collaborator?(user_login)

  puts "#{user_login} is not a collaborator on #{Gish.repository}"
end
assignees() click to toggle source
# File lib/gish/runner.rb, line 83
def assignees
  puts Gish.list_assignees
end
browse(issue_number=nil) click to toggle source
# File lib/gish/runner.rb, line 78
def browse(issue_number=nil)
  Gish.browse(issue_number)
end
close(issue_number) click to toggle source
# File lib/gish/runner.rb, line 64
def close(issue_number)
  return unless options.force? || options.message? || confirm("Are you sure you want to close issue ##{issue_number} (y/n)... ")
  message = capture_editor_input if options.message? && options.message == 'message'
  message ||= options.message
  Gish.comment(issue_number, message) if options.message?
  Gish.close(issue_number)
end
comment(issue_number) click to toggle source
# File lib/gish/runner.rb, line 37
def comment(issue_number)
  message = capture_editor_input unless options.message? || options.message == 'message'
  message ||= options.message
  Gish.comment(issue_number, message)
end
edit(issue_number) click to toggle source
# File lib/gish/runner.rb, line 113
def edit(issue_number)
  issue = Gish.show(issue_number)
  message = capture_editor_input(issue.body)
  title = options.title unless options.nil? and options.title.nil?
  title ||= issue.title
  Gish.edit(issue_number, title, message)
end
label(issue_number, label, *more_labels) click to toggle source
# File lib/gish/runner.rb, line 23
def label(issue_number, label, *more_labels)
  Gish.label(issue_number, label, more_labels)
end
list(count=20) click to toggle source
# File lib/gish/runner.rb, line 46
def list(count=20)
  args = {:per_page => count}
  args[:state] = 'closed' if options.closed?
  args[:direction] = 'asc' if options.order == 'asc'
  puts Gish.list(args)
end
open(title) click to toggle source
# File lib/gish/runner.rb, line 103
def open(title)
  labels = (options.labels || []).map{|l| l.strip }
  message = capture_editor_input unless options.message? && options.message != 'message'
  message ||= options.message
  assignee = options.assignee
  Gish.create(title, message, labels, assignee)
end
reopen(issue_number) click to toggle source
# File lib/gish/runner.rb, line 73
def reopen(issue_number)
  Gish.reopen(issue_number)
end
show(issue_number) click to toggle source
# File lib/gish/runner.rb, line 55
def show(issue_number)
  puts Gish.show(issue_number)
  puts "\n"
  puts Gish.comments(issue_number) if options.include_comments?
end
unassign(issue_number) click to toggle source
# File lib/gish/runner.rb, line 95
def unassign(issue_number)
  Gish.unassign(issue_number)
end
unlabel(issue_number, label, *more_labels) click to toggle source
# File lib/gish/runner.rb, line 28
def unlabel(issue_number, label, *more_labels)
  Gish.unlabel(issue_number, label, more_labels)
end
version() click to toggle source
# File lib/gish/runner.rb, line 122
def version
  puts "v#{Gish::VERSION}"
end