Class: Bl::Project

Inherits:
Thor
  • Object
show all
Includes:
Requestable
Defined in:
lib/bl/project.rb

Instance Method Summary collapse

Methods included from Requestable

client

Constructor Details

#initializeProject

Returns a new instance of Project.



5
6
7
8
9
# File 'lib/bl/project.rb', line 5

def initialize(*)
  @config = Bl::Config.instance
  @url = 'projects'
  super
end

Instance Method Details

#listObject



12
13
14
15
16
# File 'lib/bl/project.rb', line 12

def list
  client.get(@url).body.each do |p|
    puts [p.id, p.projectKey, p.name].join("\t")
  end
end

#status(id) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/bl/project.rb', line 19

def status(id)
  all_issues_count = count_issues(id)
  open_issues_count = count_issues(id, 1)
  in_progress_issues_count = count_issues(id, 2)
  resolved_issues_count = count_issues(id, 3)
  closed_issues_count = count_issues(id, 4)
  puts "#{closed_issues_count} / #{all_issues_count}"
  puts "open: #{open_issues_count}"
  puts "in progress: #{in_progress_issues_count}"
  puts "resolved: #{resolved_issues_count}"
  puts "closed: #{closed_issues_count}"
end

#users(id) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/bl/project.rb', line 33

def users(id)
  client.get("#{@url}/#{id}/users").body.each do |u|
    puts [
      u.id,
      u.userId,
      u.name,
      u.roleType,
      u.lang,
      u.mailAddress
    ].join("\t")
  end
end