class Backlog::Cli::Commands
Public Class Methods
new(args = [], options = {}, config = {})
click to toggle source
Calls superclass method
# File lib/backlog/cli/commands.rb, line 21 def initialize(args = [], options = {}, config = {}) super(args, options, config) profile = config[:shell].base.options['profile'] @core = Backlog::Cli::Core.new(profile) end
Public Instance Methods
create_issue(project_key)
click to toggle source
# File lib/backlog/cli/commands.rb, line 31 def create_issue(project_key) puts JSON.pretty_generate(@core.create_issue(project_key.upcase, options)) end
create_issue_by_file()
click to toggle source
# File lib/backlog/cli/commands.rb, line 113 def create_issue_by_file yaml = load_yaml project_key = yaml.delete(:project_key) @core.create_issue(project_key, yaml) end
find_issue(project_key)
click to toggle source
# File lib/backlog/cli/commands.rb, line 68 def find_issue(project_key) results = @core.find_issue(project_key.upcase, options) selected = results.map do |result| result.select { |k, v| %w(id url key summary description).include? k } end puts JSON.pretty_generate(selected.reverse) end
get_comments()
click to toggle source
# File lib/backlog/cli/commands.rb, line 37 def get_comments puts JSON.pretty_generate(@core.get_comments(options)) end
get_issue()
click to toggle source
# File lib/backlog/cli/commands.rb, line 50 def get_issue result = @core.get_issue(options) puts JSON.pretty_generate(result) end
get_project_summaries()
click to toggle source
# File lib/backlog/cli/commands.rb, line 101 def get_project_summaries results = @core.get_project_summaries puts JSON.pretty_generate(results) end
get_projects()
click to toggle source
# File lib/backlog/cli/commands.rb, line 95 def get_projects results = @core.get_projects puts JSON.pretty_generate(results) end
get_users(project_key)
click to toggle source
# File lib/backlog/cli/commands.rb, line 107 def get_users(project_key) results = @core.get_users(project_key.upcase) puts JSON.pretty_generate(results) end
list(project_key)
click to toggle source
# File lib/backlog/cli/commands.rb, line 78 def list(project_key) items = @core.get_rss(project_key.upcase).slice(0, options[:limit]) results = [] items.each do |item| result = {} result[:title] = item.title result[:content] = item.content result[:authors] = item.authors.first result[:date_published] = item.date_published result[:url] = item.id result[:urls] = @core.urls(item.content) results << result end puts JSON.pretty_generate(results.reverse) end
open()
click to toggle source
# File lib/backlog/cli/commands.rb, line 57 def open result = @core.get_issue(options) `open #{result['url']}` end
update_issue()
click to toggle source
# File lib/backlog/cli/commands.rb, line 44 def update_issue puts JSON.pretty_generate(@core.update_issue(options)) end
update_issue_by_file()
click to toggle source
# File lib/backlog/cli/commands.rb, line 120 def update_issue_by_file @core.update_issue(load_yaml) end
version()
click to toggle source
# File lib/backlog/cli/commands.rb, line 125 def version puts Backlog::Cli::VERSION end
Private Instance Methods
load_yaml()
click to toggle source
# File lib/backlog/cli/commands.rb, line 131 def load_yaml yaml = YAML.load(STDIN.read) yaml.symbolize_keys! yaml end