eotb 0.5.11 → 0.5.12
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/README.rdoc +14 -19
- data/Rakefile +1 -2
- data/VERSION +1 -1
- data/bin/eotb +57 -0
- data/eotb.gemspec +8 -8
- data/generators/eotb/USAGE +1 -1
- data/generators/eotb/eotb_generator.rb +1 -10
- data/generators/eotb/templates/initializer.rb +1 -1
- data/lib/eotb.rb +57 -21
- data/lib/generators/eotb/USAGE +1 -1
- data/lib/generators/eotb/eotb_generator.rb +5 -9
- data/spec/eotb_spec.rb +9 -10
- metadata +10 -25
data/README.rdoc
CHANGED
@@ -4,6 +4,16 @@ Rails plugin which allow you easily track and observe your apps.
|
|
4
4
|
|
5
5
|
== Installation
|
6
6
|
|
7
|
+
=== Bundler
|
8
|
+
|
9
|
+
For rails3 you just want to add this line to the Gemfile
|
10
|
+
|
11
|
+
gem 'eotb'
|
12
|
+
|
13
|
+
and run
|
14
|
+
|
15
|
+
$ bundle install
|
16
|
+
|
7
17
|
=== RubyGems
|
8
18
|
|
9
19
|
Install gem in traditional way
|
@@ -17,17 +27,7 @@ Install gem from GitHub repository
|
|
17
27
|
$ git clone git://github.com/Quirke/eotb_rails_plugin.git
|
18
28
|
$ cd eotb_rails_plugin
|
19
29
|
$ rake build
|
20
|
-
$ gem install ./pkg/eotb-0.5.
|
21
|
-
|
22
|
-
=== Bundler
|
23
|
-
|
24
|
-
Add this line to Gemfile in your rails application
|
25
|
-
|
26
|
-
gem 'eotb'
|
27
|
-
|
28
|
-
And run
|
29
|
-
|
30
|
-
$ bundle install
|
30
|
+
$ gem install ./pkg/eotb-0.5.11.gem
|
31
31
|
|
32
32
|
== Getting API Key
|
33
33
|
|
@@ -40,25 +40,20 @@ As a result you will get API Key of your application.
|
|
40
40
|
|
41
41
|
To configure your rails 3 app just run the generator with your_api_key and optional number of events sent in one package to Beholder:
|
42
42
|
|
43
|
-
rails generate eotb --api-key=your_api_key
|
43
|
+
rails generate eotb --api-key=your_api_key
|
44
44
|
|
45
45
|
=== Rails 2
|
46
46
|
|
47
47
|
To configure your rails 2 app just run the generator with your_api_key and optional number of events sent in one package to Beholder:
|
48
48
|
|
49
|
-
script/generate eotb --api-key=your_api_key
|
49
|
+
script/generate eotb --api-key=your_api_key
|
50
50
|
|
51
51
|
=== Configuration file
|
52
52
|
|
53
53
|
If you didn't use rails generator you can manualy create a file <tt>eotb.rb</tt> in directory <tt>config/initializers</tt> in your rails application with content:
|
54
54
|
|
55
55
|
require 'Eotb'
|
56
|
-
Eotb.configure("your_api_key"
|
57
|
-
# default host and port are 127.0.0.1 and 3000
|
58
|
-
# to use it with Beholder:
|
59
|
-
# host = "beta.beholder.ragnarson.com"
|
60
|
-
# port = "80"
|
61
|
-
# events - number of events sent in one package/request to beholder, default 1.
|
56
|
+
Eotb.configure("your_api_key")
|
62
57
|
|
63
58
|
== Using in your apps
|
64
59
|
|
data/Rakefile
CHANGED
@@ -8,12 +8,11 @@ begin
|
|
8
8
|
gem.summary = "Rails plugin which allow you easily track and observe your apps"
|
9
9
|
gem.description = "Rails plugin which allow you easily track and observe your apps"
|
10
10
|
gem.email = "bartlomiej.kozal@ragnarson.com"
|
11
|
-
gem.homepage = "http://github.com/
|
11
|
+
gem.homepage = "http://github.com/Ragnarson/eotb_rails_plugin"
|
12
12
|
gem.authors = ["Ragnarson"]
|
13
13
|
gem.add_development_dependency "rspec", ">= 1.3.0"
|
14
14
|
gem.add_development_dependency "jeweler", ">= 1.4.0"
|
15
15
|
gem.add_dependency "json", ">= 1.4.3"
|
16
|
-
gem.add_dependency "hoptoad_notifier", ">= 2.3.2"
|
17
16
|
end
|
18
17
|
|
19
18
|
Jeweler::GemcutterTasks.new
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.5.
|
1
|
+
0.5.12
|
data/bin/eotb
ADDED
@@ -0,0 +1,57 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'pp'
|
4
|
+
require 'optparse'
|
5
|
+
|
6
|
+
class EotbConfigurator
|
7
|
+
def parse_options
|
8
|
+
@app = Hash.new
|
9
|
+
options = OptionParser.new do |opts|
|
10
|
+
opts.on("init") do
|
11
|
+
@action = :init
|
12
|
+
end
|
13
|
+
opts.on("-a", "--api-key=[ARG]", "Your API Key") do |opt|
|
14
|
+
@app[:apikey] = opt
|
15
|
+
end
|
16
|
+
opts.on("-e", "--events=[ARG]", "Number of events") do |opt|
|
17
|
+
@app[:events] = opt
|
18
|
+
end
|
19
|
+
end
|
20
|
+
options.parse!(ARGV)
|
21
|
+
end
|
22
|
+
|
23
|
+
def recognize_rails_version
|
24
|
+
@version = %x( rails -v ).split[1]
|
25
|
+
end
|
26
|
+
|
27
|
+
def ensure_parameter_was_set
|
28
|
+
if !@app[:apikey]
|
29
|
+
puts "Must pass --api-key or create config/initializers/eotb.rb"
|
30
|
+
exit
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
def prepare_command
|
35
|
+
if @version >= "3"
|
36
|
+
command = "rails generate eotb --api-key=#{@app[:apikey]}"
|
37
|
+
else
|
38
|
+
command = "script/generate eotb --api-key=#{@app[:apikey]}"
|
39
|
+
end
|
40
|
+
if @app[:events]
|
41
|
+
command = command + " --events=#{@app[:events]}"
|
42
|
+
end
|
43
|
+
command
|
44
|
+
end
|
45
|
+
|
46
|
+
def configure args
|
47
|
+
@args = args
|
48
|
+
parse_options
|
49
|
+
ensure_parameter_was_set
|
50
|
+
recognize_rails_version
|
51
|
+
command = prepare_command
|
52
|
+
# exec( command )
|
53
|
+
puts "Will execute: "+command
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
EotbConfigurator.new.configure ARGV
|
data/eotb.gemspec
CHANGED
@@ -5,13 +5,15 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{eotb}
|
8
|
-
s.version = "0.5.
|
8
|
+
s.version = "0.5.12"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Ragnarson"]
|
12
|
-
s.date = %q{2010-09-
|
12
|
+
s.date = %q{2010-09-27}
|
13
|
+
s.default_executable = %q{eotb}
|
13
14
|
s.description = %q{Rails plugin which allow you easily track and observe your apps}
|
14
15
|
s.email = %q{bartlomiej.kozal@ragnarson.com}
|
16
|
+
s.executables = ["eotb"]
|
15
17
|
s.extra_rdoc_files = [
|
16
18
|
"LICENSE",
|
17
19
|
"README.rdoc"
|
@@ -25,6 +27,7 @@ Gem::Specification.new do |s|
|
|
25
27
|
"README.rdoc",
|
26
28
|
"Rakefile",
|
27
29
|
"VERSION",
|
30
|
+
"bin/eotb",
|
28
31
|
"eotb.gemspec",
|
29
32
|
"generators/eotb/USAGE",
|
30
33
|
"generators/eotb/eotb_generator.rb",
|
@@ -36,14 +39,14 @@ Gem::Specification.new do |s|
|
|
36
39
|
"spec/eotb_spec.rb",
|
37
40
|
"spec/spec_helper.rb"
|
38
41
|
]
|
39
|
-
s.homepage = %q{http://github.com/
|
42
|
+
s.homepage = %q{http://github.com/Ragnarson/eotb_rails_plugin}
|
40
43
|
s.rdoc_options = ["--charset=UTF-8"]
|
41
44
|
s.require_paths = ["lib"]
|
42
45
|
s.rubygems_version = %q{1.3.7}
|
43
46
|
s.summary = %q{Rails plugin which allow you easily track and observe your apps}
|
44
47
|
s.test_files = [
|
45
|
-
"spec/
|
46
|
-
"spec/
|
48
|
+
"spec/spec_helper.rb",
|
49
|
+
"spec/eotb_spec.rb"
|
47
50
|
]
|
48
51
|
|
49
52
|
if s.respond_to? :specification_version then
|
@@ -54,18 +57,15 @@ Gem::Specification.new do |s|
|
|
54
57
|
s.add_development_dependency(%q<rspec>, [">= 1.3.0"])
|
55
58
|
s.add_development_dependency(%q<jeweler>, [">= 1.4.0"])
|
56
59
|
s.add_runtime_dependency(%q<json>, [">= 1.4.3"])
|
57
|
-
s.add_runtime_dependency(%q<hoptoad_notifier>, [">= 2.3.2"])
|
58
60
|
else
|
59
61
|
s.add_dependency(%q<rspec>, [">= 1.3.0"])
|
60
62
|
s.add_dependency(%q<jeweler>, [">= 1.4.0"])
|
61
63
|
s.add_dependency(%q<json>, [">= 1.4.3"])
|
62
|
-
s.add_dependency(%q<hoptoad_notifier>, [">= 2.3.2"])
|
63
64
|
end
|
64
65
|
else
|
65
66
|
s.add_dependency(%q<rspec>, [">= 1.3.0"])
|
66
67
|
s.add_dependency(%q<jeweler>, [">= 1.4.0"])
|
67
68
|
s.add_dependency(%q<json>, [">= 1.4.3"])
|
68
|
-
s.add_dependency(%q<hoptoad_notifier>, [">= 2.3.2"])
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
data/generators/eotb/USAGE
CHANGED
@@ -2,13 +2,12 @@ class EotbGenerator < Rails::Generator::Base
|
|
2
2
|
|
3
3
|
def add_options!(opt)
|
4
4
|
opt.on('-k', '--api-key=key', String, "Your Beholder API key") {|v| options[:api_key] = v}
|
5
|
-
opt.on('-e', '--events=number_of_event', Integer, "Number of events sent in one package to Beholder") {|v| options[:events] = v}
|
6
5
|
end
|
7
6
|
|
8
7
|
def manifest
|
9
8
|
record do |m|
|
10
9
|
ensure_parameter_was_set
|
11
|
-
m.template "initializer.rb", "config/initializers/eotb.rb", :assigns => {:api_key => api_key_exp
|
10
|
+
m.template "initializer.rb", "config/initializers/eotb.rb", :assigns => {:api_key => api_key_exp}
|
12
11
|
end
|
13
12
|
|
14
13
|
end
|
@@ -16,14 +15,6 @@ class EotbGenerator < Rails::Generator::Base
|
|
16
15
|
def api_key_exp
|
17
16
|
"#{options[:api_key]}"
|
18
17
|
end
|
19
|
-
|
20
|
-
def events_exp
|
21
|
-
s = if options[:events]
|
22
|
-
"#{options[:events]}"
|
23
|
-
else
|
24
|
-
"1"
|
25
|
-
end
|
26
|
-
end
|
27
18
|
|
28
19
|
def ensure_parameter_was_set
|
29
20
|
if !options[:api_key]
|
data/lib/eotb.rb
CHANGED
@@ -3,46 +3,82 @@ require 'net/http'
|
|
3
3
|
require 'timeout'
|
4
4
|
require 'uri'
|
5
5
|
require 'json'
|
6
|
+
require 'timer'
|
6
7
|
|
7
8
|
class Eotb
|
8
9
|
|
9
10
|
@@api_key = nil
|
10
11
|
METHODS = [:to_actor, :to_subject, :to_json, :to_hash, :inspect]
|
11
12
|
|
12
|
-
def self.configure(api_key
|
13
|
+
def self.configure(api_key)
|
14
|
+
@@host = "beta.beholder.ragnarson.com"
|
15
|
+
@@port = '80'
|
13
16
|
@@api_key = api_key
|
14
|
-
@@uri = URI.parse('http://' + host + ':' + port + '/events/' + api_key)
|
17
|
+
@@uri = URI.parse('http://' + @@host + ':' + @@port + '/events/' + api_key)
|
15
18
|
@@post = Net::HTTP::Post.new(@@uri.path)
|
16
19
|
@@events = {}
|
17
20
|
@@counter = 1
|
18
|
-
|
21
|
+
@@reset = 100
|
22
|
+
|
23
|
+
Thread.new do
|
24
|
+
Timer.every(600.0) { |elapsed|
|
25
|
+
unless @@events.empty?
|
26
|
+
@@counter = @@reset
|
27
|
+
send
|
28
|
+
end
|
29
|
+
}
|
30
|
+
end unless ENV['RAILS_ENV'] == 'test'
|
19
31
|
end
|
20
32
|
|
21
33
|
def self.api_key
|
22
34
|
@@api_key
|
23
35
|
end
|
24
36
|
|
25
|
-
def self.register_event(
|
37
|
+
def self.register_event(*args)
|
38
|
+
case args.size
|
39
|
+
when 1
|
40
|
+
self._json_register_event(*args)
|
41
|
+
when 2,3
|
42
|
+
self._base_register_event(*args)
|
43
|
+
else
|
44
|
+
raise ArgumentError, "wrong number of arguments (#{args.size} for 1,2 or 3)"
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
def self._json_register_event(json)
|
49
|
+
json = JSON.parse json
|
50
|
+
args = [json["actor"],json["action"]]
|
51
|
+
args << json["subject"] if json["subject"]
|
52
|
+
self._base_register_event(*args)
|
53
|
+
end
|
54
|
+
|
55
|
+
def self._base_register_event(actor, action, subject = {})
|
56
|
+
unless ENV['RAILS_ENV'] == 'test'
|
26
57
|
action = { "event#{@@counter}[action]" => action.to_s }
|
27
|
-
|
58
|
+
event = (hash_format(actor, :actor)).merge(action).merge(hash_format(subject, :subject))
|
28
59
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
Timeout::timeout(2) {
|
35
|
-
Net::HTTP.new(@@uri.host, @@uri.port).start.request(@@post)
|
36
|
-
}
|
37
|
-
rescue => e
|
38
|
-
logger = Logger.new("log/#{ENV['RAILS_ENV']}.log")
|
39
|
-
logger.error "ERROR eotb gem: " + e.to_s
|
40
|
-
rescue Timeout::Error => e
|
41
|
-
logger = Logger.new("log/#{ENV['RAILS_ENV']}.log")
|
42
|
-
logger.error "ERROR eotb gem: " + e.to_s
|
60
|
+
@@events.merge! event
|
61
|
+
if (@@counter == @@reset)
|
62
|
+
send
|
63
|
+
else
|
64
|
+
@@counter += 1
|
43
65
|
end
|
44
|
-
|
45
|
-
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def self.send
|
70
|
+
@@post.set_form_data(@@events)
|
71
|
+
@@counter = 1
|
72
|
+
begin
|
73
|
+
Timeout::timeout(2) {
|
74
|
+
Net::HTTP.new(@@uri.host, @@uri.port).start.request(@@post)
|
75
|
+
}
|
76
|
+
rescue => e
|
77
|
+
logger = Logger.new("log/#{ENV['RAILS_ENV']}.log")
|
78
|
+
logger.error "ERROR eotb gem: " + e.to_s
|
79
|
+
rescue Timeout::Error => e
|
80
|
+
logger = Logger.new("log/#{ENV['RAILS_ENV']}.log")
|
81
|
+
logger.error "ERROR eotb gem: " + e.to_s
|
46
82
|
end
|
47
83
|
end
|
48
84
|
|
data/lib/generators/eotb/USAGE
CHANGED
@@ -2,7 +2,7 @@ Description:
|
|
2
2
|
Creates eotb initializer in confing/initializers/eotb.rb, setting your app to work with Beholder.
|
3
3
|
|
4
4
|
Example:
|
5
|
-
rails generate eotb --api-key=your_api_key
|
5
|
+
rails generate eotb --api-key=your_api_key
|
6
6
|
|
7
7
|
This will create:
|
8
8
|
config/initializers/eotb.rb
|
@@ -7,7 +7,6 @@ class EotbGenerator < Rails::Generators::Base
|
|
7
7
|
source_root File.expand_path('../../../../generators/eotb/templates', __FILE__)
|
8
8
|
|
9
9
|
class_option :api_key, :aliases => "-k", :type => :string, :desc => "Your Beholder API key"
|
10
|
-
class_option :events, :aliases => "-e",:type => :numeric, :desc => "Number of events sent in one package to Beholder", :default => "1"
|
11
10
|
|
12
11
|
def generator
|
13
12
|
ensure_parameters_was_set
|
@@ -29,20 +28,17 @@ class EotbGenerator < Rails::Generators::Base
|
|
29
28
|
def api_key_exp
|
30
29
|
"#{options[:api_key]}"
|
31
30
|
end
|
32
|
-
def events_exp
|
33
|
-
s = if options[:events]
|
34
|
-
"#{options[:events]}"
|
35
|
-
else
|
36
|
-
"1"
|
37
|
-
end
|
38
|
-
end
|
39
31
|
|
40
32
|
def generate_initializer
|
41
33
|
template 'initializer.rb', 'config/initializers/eotb.rb'
|
42
34
|
end
|
43
35
|
|
44
36
|
def api_key_configured?
|
45
|
-
|
37
|
+
if !options[:api_key]
|
38
|
+
puts "Must pass --api-key='your_api_key'"
|
39
|
+
exit
|
40
|
+
end
|
41
|
+
File.exists?('config/initializers/eotb.rb') && options[:api_key].empty?
|
46
42
|
end
|
47
43
|
|
48
44
|
end
|
data/spec/eotb_spec.rb
CHANGED
@@ -2,13 +2,6 @@ require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
|
2
2
|
|
3
3
|
describe Eotb do
|
4
4
|
|
5
|
-
it "should log errors" do
|
6
|
-
logger = mock(Logger)
|
7
|
-
logger.stub(:new) { logger }
|
8
|
-
logger.stub(:error) { @response }
|
9
|
-
Eotb.register_event(:actor, :action, {:username => "John"}).should == @response
|
10
|
-
end
|
11
|
-
|
12
5
|
describe "shoud format objects" do
|
13
6
|
before do
|
14
7
|
@@counter = 0
|
@@ -32,7 +25,9 @@ describe Eotb do
|
|
32
25
|
|
33
26
|
before(:each) do
|
34
27
|
@response = "200"
|
35
|
-
|
28
|
+
|
29
|
+
Eotb.configure("0"*40)
|
30
|
+
@@counter = 100
|
36
31
|
Net::HTTP.stub(:new) { Net::HTTP }
|
37
32
|
Net::HTTP.stub(:start) { Net::HTTP }
|
38
33
|
Net::HTTP.stub(:request) { "200" }
|
@@ -40,7 +35,6 @@ describe Eotb do
|
|
40
35
|
|
41
36
|
it "should register two arguments" do
|
42
37
|
Eotb.register_event("actor", "action").should == @response
|
43
|
-
Eotb.register_event("act2or", "acti2on").should == @response
|
44
38
|
end
|
45
39
|
|
46
40
|
it "should register three arguments" do
|
@@ -63,6 +57,10 @@ describe Eotb do
|
|
63
57
|
Eotb.register_event({:type => { :account => "User"}}, :action, {:username => {:first_name => "John"}}).should == @response
|
64
58
|
end
|
65
59
|
|
60
|
+
it "should register JSON messages" do
|
61
|
+
Eotb.register_event('{"actor":{"type":{"account":"User"}},"action":"action","subject":{"username":{"first_name":"John"}}}').should == @response
|
62
|
+
end
|
63
|
+
|
66
64
|
it "should register arrays" do
|
67
65
|
Eotb.register_event([2,3,4], :action, {:username => ["John", "Josh"]}).should == @response
|
68
66
|
end
|
@@ -73,7 +71,8 @@ describe Eotb do
|
|
73
71
|
|
74
72
|
before(:each) do
|
75
73
|
@response = "200"
|
76
|
-
Eotb.configure("0"*40
|
74
|
+
Eotb.configure("0"*40)
|
75
|
+
@@counter = 96
|
77
76
|
Net::HTTP.stub(:new) { Net::HTTP }
|
78
77
|
Net::HTTP.stub(:start) { Net::HTTP }
|
79
78
|
Net::HTTP.stub(:request) { "200" }
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eotb
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 19
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 5
|
9
|
-
-
|
10
|
-
version: 0.5.
|
9
|
+
- 12
|
10
|
+
version: 0.5.12
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Ragnarson
|
@@ -15,8 +15,8 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-09-
|
19
|
-
default_executable:
|
18
|
+
date: 2010-09-27 00:00:00 +02:00
|
19
|
+
default_executable: eotb
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
22
22
|
name: rspec
|
@@ -66,26 +66,10 @@ dependencies:
|
|
66
66
|
version: 1.4.3
|
67
67
|
type: :runtime
|
68
68
|
version_requirements: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: hoptoad_notifier
|
71
|
-
prerelease: false
|
72
|
-
requirement: &id004 !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ">="
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
hash: 7
|
78
|
-
segments:
|
79
|
-
- 2
|
80
|
-
- 3
|
81
|
-
- 2
|
82
|
-
version: 2.3.2
|
83
|
-
type: :runtime
|
84
|
-
version_requirements: *id004
|
85
69
|
description: Rails plugin which allow you easily track and observe your apps
|
86
70
|
email: bartlomiej.kozal@ragnarson.com
|
87
|
-
executables:
|
88
|
-
|
71
|
+
executables:
|
72
|
+
- eotb
|
89
73
|
extensions: []
|
90
74
|
|
91
75
|
extra_rdoc_files:
|
@@ -100,6 +84,7 @@ files:
|
|
100
84
|
- README.rdoc
|
101
85
|
- Rakefile
|
102
86
|
- VERSION
|
87
|
+
- bin/eotb
|
103
88
|
- eotb.gemspec
|
104
89
|
- generators/eotb/USAGE
|
105
90
|
- generators/eotb/eotb_generator.rb
|
@@ -111,7 +96,7 @@ files:
|
|
111
96
|
- spec/eotb_spec.rb
|
112
97
|
- spec/spec_helper.rb
|
113
98
|
has_rdoc: true
|
114
|
-
homepage: http://github.com/
|
99
|
+
homepage: http://github.com/Ragnarson/eotb_rails_plugin
|
115
100
|
licenses: []
|
116
101
|
|
117
102
|
post_install_message:
|
@@ -145,5 +130,5 @@ signing_key:
|
|
145
130
|
specification_version: 3
|
146
131
|
summary: Rails plugin which allow you easily track and observe your apps
|
147
132
|
test_files:
|
148
|
-
- spec/eotb_spec.rb
|
149
133
|
- spec/spec_helper.rb
|
134
|
+
- spec/eotb_spec.rb
|