trellor 2.0.2 → 2.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +1 -1
- data/lib/cli.rb +6 -5
- data/lib/trellor.rb +4 -7
- data/lib/trellor/version.rb +1 -1
- data/lib/web_trellor.rb +19 -9
- data/lib/webapi.rb +10 -17
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 85d97d017e9e202db49b8a9a4ec8ff05472fc3e0
|
4
|
+
data.tar.gz: 7de26825b22aa66f3086d983802cf4186301048d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 737f9fc421e8d2af416001014b368d2288a6583f644177c2fbf7e71fa5b4d2e3fb326f39e294f98e2fbf1a8e8c0765f511ccd3860c8da8f3daf7c9dfeb724330
|
7
|
+
data.tar.gz: 1ffb79c6a4f311dd524ebb1b8b30842d67927eb7fe59be2be436762704a437073a30fe201039e03c19b9da97cd3e14d7edfa13ee4b1ed484fc940228dd8ca6d8
|
data/README.md
CHANGED
data/lib/cli.rb
CHANGED
@@ -15,11 +15,11 @@ module Trellor
|
|
15
15
|
end
|
16
16
|
|
17
17
|
if webapi?
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
18
|
+
require_relative 'web_trellor'
|
19
|
+
web = WebTrellor.new
|
20
|
+
web.be_verbose = true if @opts[:verbose]
|
21
|
+
web.ensure_webapp_is_running
|
22
|
+
exit 0
|
23
23
|
end
|
24
24
|
|
25
25
|
if cache?
|
@@ -42,6 +42,7 @@ module Trellor
|
|
42
42
|
verbose_log('using webapi')
|
43
43
|
require_relative 'web_trellor'
|
44
44
|
web = WebTrellor.new
|
45
|
+
web.be_verbose = true if @opts[:verbose]
|
45
46
|
web.ensure_webapp_is_running
|
46
47
|
web
|
47
48
|
end
|
data/lib/trellor.rb
CHANGED
@@ -52,7 +52,6 @@ module Trellor
|
|
52
52
|
card.name = name
|
53
53
|
card.desc = descript if descript
|
54
54
|
card.save
|
55
|
-
# card_names(board_name, list_name)
|
56
55
|
end
|
57
56
|
def archive_card(board_name, list_name, name)
|
58
57
|
card = find_card(board_name, list_name, name)
|
@@ -74,17 +73,15 @@ module Trellor
|
|
74
73
|
def board(name)
|
75
74
|
boards # to get verbose log ordering correct
|
76
75
|
verbose_log('getting board', name)
|
77
|
-
name = name
|
78
|
-
boards.detect{ |board|
|
76
|
+
name = Regexp.new(name, Regexp::IGNORECASE)
|
77
|
+
boards.detect{ |board| name.match(board.name) }
|
79
78
|
end
|
80
79
|
|
81
80
|
def list(board_name, list_name)
|
82
81
|
this_board = board(board_name)
|
83
82
|
verbose_log(' getting list', board_name, list_name)
|
84
|
-
|
85
|
-
this_board.lists.detect
|
86
|
-
list.name.downcase.start_with?(list_name)
|
87
|
-
end
|
83
|
+
name = Regexp.new(list_name, Regexp::IGNORECASE)
|
84
|
+
this_board.lists.detect{ |list| name.match(list.name) }
|
88
85
|
end
|
89
86
|
|
90
87
|
def cards(board_name, list_name)
|
data/lib/trellor/version.rb
CHANGED
data/lib/web_trellor.rb
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
require 'trello'
|
4
4
|
require 'net/http'
|
5
5
|
require 'pathname'
|
6
|
+
require 'addressable/uri'
|
6
7
|
require_relative "trellor/version"
|
7
8
|
|
8
9
|
module Trellor
|
@@ -15,38 +16,45 @@ module Trellor
|
|
15
16
|
fail unless v
|
16
17
|
rescue
|
17
18
|
puts "The background webapp wasn't running. Will run it now."
|
19
|
+
verbose_log "The background webapp wasn't running. Will run it now."
|
18
20
|
run_webapp
|
19
21
|
end
|
20
22
|
|
21
23
|
def run_webapp
|
22
24
|
path = Pathname.new(__FILE__).parent.parent
|
23
25
|
cmd = "cd '#{path}' && ruby lib/webapi.rb &> /dev/null"
|
26
|
+
verbose_log cmd
|
24
27
|
job = fork do
|
25
28
|
exec cmd
|
26
29
|
end
|
27
30
|
# give webapp time to run before returning
|
28
|
-
(1..
|
31
|
+
(1..30).each do |n|
|
32
|
+
verbose_log '.'
|
29
33
|
sleep 0.1
|
30
|
-
|
34
|
+
ver = get_version
|
35
|
+
return if ver and ver!=''
|
31
36
|
end
|
32
37
|
Process.detach(job)
|
33
38
|
end
|
34
39
|
|
35
40
|
def get_version
|
36
|
-
response = get_http('/version', nil, false)
|
41
|
+
response = get_http('/version', nil, nil, false)
|
37
42
|
response.body
|
38
43
|
rescue
|
39
44
|
nil
|
40
45
|
end
|
41
46
|
|
42
|
-
def get_http(url, timeout=nil, show_error=true)
|
43
|
-
uri = URI("#{site}#{url}")
|
47
|
+
def get_http(url, data=nil, timeout=nil, show_error=true)
|
48
|
+
uri = Addressable::URI.parse("#{site}#{url}")
|
44
49
|
http = Net::HTTP.new uri.host, uri.port
|
45
50
|
http.open_timeout = default_open_timeout
|
46
51
|
http.read_timeout = timeout || default_read_timeout
|
47
52
|
request = Net::HTTP::Get.new(uri.request_uri)
|
48
53
|
# request.basic_auth 'trellor', password if password
|
49
|
-
|
54
|
+
request.set_form_data data if data
|
55
|
+
response = http.request(request)
|
56
|
+
verbose_log response.code, response.body
|
57
|
+
response
|
50
58
|
rescue Exception => e
|
51
59
|
$stderr.puts "ERROR in get_http(#{url})" if show_error
|
52
60
|
raise e
|
@@ -65,7 +73,9 @@ module Trellor
|
|
65
73
|
# request.basic_auth 'trellor', password if password
|
66
74
|
|
67
75
|
request.set_form_data data
|
68
|
-
http.request(request)
|
76
|
+
response = http.request(request)
|
77
|
+
verbose_log response.code, response.body
|
78
|
+
response
|
69
79
|
rescue Exception => e
|
70
80
|
$stderr.puts "ERROR in post_http(#{url})"
|
71
81
|
raise e
|
@@ -102,11 +112,11 @@ module Trellor
|
|
102
112
|
end
|
103
113
|
|
104
114
|
def list_names(board_name)
|
105
|
-
JSON.parse(get_http("/boards
|
115
|
+
JSON.parse(get_http("/boards", {board_name: board_name}).body)
|
106
116
|
end
|
107
117
|
|
108
118
|
def card_names(board_name, list_name)
|
109
|
-
JSON.parse(get_http("/boards
|
119
|
+
JSON.parse(get_http("/boards", {board_name: board_name, list_name: list_name}).body)
|
110
120
|
end
|
111
121
|
|
112
122
|
def create_card(board_name, list_name, name, descript=nil)
|
data/lib/webapi.rb
CHANGED
@@ -41,23 +41,16 @@ get '/version' do
|
|
41
41
|
end
|
42
42
|
|
43
43
|
get '/boards' do
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
cards = trellor.list(board_name,list_name).cards.collect{ |card| card.name }
|
55
|
-
cards.to_json
|
56
|
-
end
|
57
|
-
|
58
|
-
get '/bbboards/:board_name/lists/:list_name/cards/:card_name' do
|
59
|
-
card = trellor.list(params['board_name'],params['list_name'],params['card_name'])
|
60
|
-
card.to_json
|
44
|
+
if params[:list_name]
|
45
|
+
cards = trellor.list(params[:board_name],params[:list_name]).cards.collect{ |card| card.name }
|
46
|
+
cards.to_json
|
47
|
+
elsif params[:board_name]
|
48
|
+
lists = trellor.list_names(params[:board_name])
|
49
|
+
lists.to_json
|
50
|
+
else
|
51
|
+
boards = trellor.board_names
|
52
|
+
boards.to_json
|
53
|
+
end
|
61
54
|
end
|
62
55
|
|
63
56
|
post '/boards/:board_name/lists/:list_name/cards' do |board_name, list_name|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: trellor
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Brian Murphy-Dye
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-10-
|
11
|
+
date: 2015-10-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ruby-trello
|