rcr-notify 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
- data/bin/rcr-notify +13 -2
- data/lib/rcr-notify.rb +12 -2
- data/rcr-notify.gemspec +1 -1
- metadata +1 -1
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.6
|
data/bin/rcr-notify
CHANGED
@@ -8,16 +8,27 @@ OptionParser.new do |opts|
|
|
8
8
|
opts.banner = "Usage: #{$0} [options]"
|
9
9
|
opts.instance_eval do
|
10
10
|
on("-u", "--user USERNAME", "Runcoderun Username") {|u| notifier.settings[:username] = u }
|
11
|
-
on("-i", "--interval INTERVAL", Numeric, "Polling interval in seconds (default: 30)") do |i|
|
11
|
+
on("-i", "--interval INTERVAL", Numeric, "Polling interval in seconds", " (default: 30)") do |i|
|
12
12
|
notifier.settings[:interval] = i
|
13
13
|
end
|
14
|
+
on("-e", "--except x,y,z", Array, "Projects to ignore", " (mutually exclusive to -o)") do |projects|
|
15
|
+
notifier.settings[:blacklist] = projects
|
16
|
+
end
|
17
|
+
on("-o", "--only a,b,c", Array, "Only notify of these build", " (mutually exclusive to -e)") do |projects|
|
18
|
+
notifier.settings[:whitelist] = projects
|
19
|
+
end
|
14
20
|
on_tail("--help", "This message") {puts opts; exit}
|
15
21
|
end
|
16
22
|
end.parse!
|
17
23
|
|
18
24
|
unless notifier.settings[:username]
|
19
25
|
puts "at least username is required. see --help"
|
20
|
-
exit
|
26
|
+
exit -1
|
27
|
+
end
|
28
|
+
|
29
|
+
if notifier.settings[:whitelist] && notifier.settings[:blacklist]
|
30
|
+
puts "Options --except (-e) and --only (-o) are mutually exclusive.\nSupply one or the other."
|
31
|
+
exit -1
|
21
32
|
end
|
22
33
|
|
23
34
|
loop do
|
data/lib/rcr-notify.rb
CHANGED
@@ -24,7 +24,7 @@ module RcrNotify
|
|
24
24
|
|
25
25
|
if last_projects
|
26
26
|
projects.each do |name, this_time|
|
27
|
-
notify_for name, last_projects[name], this_time
|
27
|
+
notify_for name, last_projects[name], this_time if notify_for? name
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
@@ -35,8 +35,18 @@ module RcrNotify
|
|
35
35
|
|
36
36
|
private
|
37
37
|
|
38
|
+
def notify_for?(name)
|
39
|
+
if settings[:blacklist]
|
40
|
+
!settings[:blacklist].include? name
|
41
|
+
elsif settings[:whitelist]
|
42
|
+
settings[:whitelist].include? name
|
43
|
+
else
|
44
|
+
true
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
38
48
|
def notify_for(name, last_time, this_time)
|
39
|
-
return if this_time['commit'] == last_time['commit']
|
49
|
+
# return if this_time['commit'] == last_time['commit']
|
40
50
|
|
41
51
|
commit_message = "#{this_time['commit_message']}\n" +
|
42
52
|
"\t\t—#{this_time['author_name']}"
|
data/rcr-notify.gemspec
CHANGED