bl 0.0.17 → 0.0.18
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bl.gemspec +3 -1
- data/lib/bl/cli.rb +1 -10
- data/lib/bl/config.rb +20 -2
- data/lib/bl/formatting.rb +2 -1
- data/lib/bl/project.rb +23 -6
- data/lib/bl/recent.rb +10 -4
- data/lib/bl/requestable.rb +2 -1
- data/lib/bl/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ad4bf727d88d7db10b943cb746c7fae8d5a4c56a
|
4
|
+
data.tar.gz: 1c4e165df3c2925a0903987542407604289dbea7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c2adffd8959a0166d98d8dc39574c9891391022ba673bfc6b5f1b87b661da69d307e928eb31325d1af50ffad8296f7f5242bd76166711205b95b74dfe132ea5a
|
7
|
+
data.tar.gz: 55d89e37cf36f10a84b8eeef9f28aca618419ecdcd6e6cc237400a00984d475909393adeab0094aae378430b5cc7e2f874c4ac436f2bae78c9958424490474b9
|
data/bl.gemspec
CHANGED
@@ -14,7 +14,9 @@ Gem::Specification.new do |spec|
|
|
14
14
|
spec.homepage = 'https://github.com/sakihet/bl'
|
15
15
|
spec.license = 'MIT'
|
16
16
|
|
17
|
-
spec.files = `git ls-files -z`.split("\x0").reject { |f|
|
17
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f|
|
18
|
+
f.match(%r{^(test|spec|features)/})
|
19
|
+
}
|
18
20
|
spec.bindir = 'exe'
|
19
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
20
22
|
spec.require_paths = ['lib']
|
data/lib/bl/cli.rb
CHANGED
@@ -39,16 +39,7 @@ module Bl
|
|
39
39
|
if File.exist?(filename)
|
40
40
|
puts "#{filename} exits."
|
41
41
|
else
|
42
|
-
config =
|
43
|
-
space_id: '',
|
44
|
-
api_key: '',
|
45
|
-
project_key: '',
|
46
|
-
issue: {
|
47
|
-
default_project_id: '',
|
48
|
-
default_issue_type_id: '',
|
49
|
-
default_priority_id: ''
|
50
|
-
}
|
51
|
-
}
|
42
|
+
config = Bl::Config.instance.default_config
|
52
43
|
f = File.new(filename, 'w')
|
53
44
|
f.write(config.to_yaml)
|
54
45
|
puts "#{filename} generated."
|
data/lib/bl/config.rb
CHANGED
@@ -2,17 +2,35 @@ require 'singleton'
|
|
2
2
|
require 'yaml'
|
3
3
|
|
4
4
|
module Bl
|
5
|
-
CONFIG_FILE = '.bl.yml'
|
5
|
+
CONFIG_FILE = '.bl.yml'.freeze
|
6
6
|
|
7
7
|
class Config
|
8
8
|
include Singleton
|
9
9
|
|
10
10
|
def initialize
|
11
|
-
|
11
|
+
file = File.join(Dir.home, Bl::CONFIG_FILE)
|
12
|
+
if File.exist?(file)
|
13
|
+
@config = YAML.load_file(file)
|
14
|
+
else
|
15
|
+
@config = nil
|
16
|
+
end
|
12
17
|
end
|
13
18
|
|
14
19
|
def [](key)
|
15
20
|
@config[key]
|
16
21
|
end
|
22
|
+
|
23
|
+
def default_config
|
24
|
+
{
|
25
|
+
space_id: '',
|
26
|
+
api_key: '',
|
27
|
+
project_key: '',
|
28
|
+
issue: {
|
29
|
+
default_project_id: '',
|
30
|
+
default_issue_type_id: '',
|
31
|
+
default_priority_id: ''
|
32
|
+
}
|
33
|
+
}
|
34
|
+
end
|
17
35
|
end
|
18
36
|
end
|
data/lib/bl/formatting.rb
CHANGED
data/lib/bl/project.rb
CHANGED
@@ -17,11 +17,11 @@ module Bl
|
|
17
17
|
|
18
18
|
desc 'status ID', 'show project status'
|
19
19
|
def status(id)
|
20
|
-
all_issues_count =
|
21
|
-
open_issues_count =
|
22
|
-
in_progress_issues_count =
|
23
|
-
resolved_issues_count =
|
24
|
-
closed_issues_count =
|
20
|
+
all_issues_count = count_issues(id)
|
21
|
+
open_issues_count = count_issues(id, 1)
|
22
|
+
in_progress_issues_count = count_issues(id, 2)
|
23
|
+
resolved_issues_count = count_issues(id, 3)
|
24
|
+
closed_issues_count = count_issues(id, 4)
|
25
25
|
puts "#{closed_issues_count} / #{all_issues_count}"
|
26
26
|
puts "open: #{open_issues_count}"
|
27
27
|
puts "in progress: #{in_progress_issues_count}"
|
@@ -32,8 +32,25 @@ module Bl
|
|
32
32
|
desc 'users ID', 'show project users'
|
33
33
|
def users(id)
|
34
34
|
client.get("#{@url}/#{id}/users").body.each do |u|
|
35
|
-
puts [
|
35
|
+
puts [
|
36
|
+
u.id,
|
37
|
+
u.userId,
|
38
|
+
u.name,
|
39
|
+
u.roleType,
|
40
|
+
u.lang,
|
41
|
+
u.mailAddress
|
42
|
+
].join("\t")
|
36
43
|
end
|
37
44
|
end
|
45
|
+
|
46
|
+
private
|
47
|
+
|
48
|
+
def count_issues(project_id, *status)
|
49
|
+
client.get(
|
50
|
+
'issues/count',
|
51
|
+
projectId: [project_id],
|
52
|
+
statusId: status
|
53
|
+
).body.count
|
54
|
+
end
|
38
55
|
end
|
39
56
|
end
|
data/lib/bl/recent.rb
CHANGED
@@ -8,15 +8,21 @@ module Bl
|
|
8
8
|
end
|
9
9
|
|
10
10
|
desc 'issues COUNT', 'list recently viewed issues'
|
11
|
-
def issues(count=nil)
|
12
|
-
client.get(
|
11
|
+
def issues(count = nil)
|
12
|
+
client.get(
|
13
|
+
'users/myself/recentlyViewedIssues',
|
14
|
+
count: count
|
15
|
+
).body.each do |i|
|
13
16
|
puts [i.issue.issueKey, i.issue.summary].join("\t")
|
14
17
|
end
|
15
18
|
end
|
16
19
|
|
17
20
|
desc 'wikis COUNT', 'list recently viewed wikis'
|
18
|
-
def wikis(count=nil)
|
19
|
-
client.get(
|
21
|
+
def wikis(count = nil)
|
22
|
+
client.get(
|
23
|
+
'users/myself/recentlyViewedWikis',
|
24
|
+
count: count
|
25
|
+
).body.each do |w|
|
20
26
|
puts [w.page.id, w.page.name].join("\t")
|
21
27
|
end
|
22
28
|
end
|
data/lib/bl/requestable.rb
CHANGED
data/lib/bl/version.rb
CHANGED