chillout 0.5.3 → 0.5.4
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/.gitignore +1 -0
- data/.travis.yml +4 -0
- data/README.md +3 -6
- data/Rakefile +3 -4
- data/chillout.gemspec +4 -3
- data/lib/chillout/client.rb +20 -5
- data/lib/chillout/middleware/creations_monitor.rb +9 -2
- data/lib/chillout/prefixed_logger.rb +1 -1
- data/lib/chillout/railtie.rb +4 -6
- data/lib/chillout/{server-side → server_side}/dispatcher.rb +0 -0
- data/lib/chillout/{server-side → server_side}/http_client.rb +2 -2
- data/lib/chillout/{server-side → server_side}/server_side.rb +0 -0
- data/lib/chillout/version.rb +1 -1
- data/lib/chillout/worker.rb +6 -1
- data/lib/chillout.rb +3 -3
- data/test/integration/creations_monitor_rack_test.rb +2 -2
- data/test/integration/worker_test.rb +31 -0
- data/test/middleware/creations_monitor_test.rb +2 -1
- data/test/prefixed_logger_test.rb +1 -1
- data/test/test_helper.rb +10 -12
- metadata +113 -121
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/README.md
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
# Chillout
|
2
2
|
|
3
3
|
[](https://travis-ci.org/chilloutio/chillout)
|
4
|
+
[](https://codeclimate.com/github/chilloutio/chillout)
|
5
|
+
[](http://badge.fury.io/rb/chillout)
|
4
6
|
|
5
7
|
## Installation
|
6
8
|
|
@@ -15,12 +17,7 @@ And then execute:
|
|
15
17
|
And configure in config/environments/production.rb:
|
16
18
|
|
17
19
|
```ruby
|
18
|
-
config.chillout = {
|
19
|
-
secret: '<YOUR_SECRET>',
|
20
|
-
ssl: true,
|
21
|
-
port: 443,
|
22
|
-
hostname: 'api.chillout.io'
|
23
|
-
}
|
20
|
+
config.chillout = { secret: '<YOUR_SECRET>' }
|
24
21
|
```
|
25
22
|
|
26
23
|
Check if everything is ok:
|
data/Rakefile
CHANGED
@@ -1,11 +1,10 @@
|
|
1
|
-
require
|
2
|
-
require
|
1
|
+
require 'bundler/gem_tasks'
|
2
|
+
require 'rake/testtask'
|
3
3
|
|
4
4
|
task :default => :test
|
5
5
|
|
6
6
|
desc 'Run chillout unit tests.'
|
7
7
|
Rake::TestTask.new(:test) do |t|
|
8
|
-
t.libs
|
9
|
-
t.libs << 'test'
|
8
|
+
t.libs = %w(lib test)
|
10
9
|
t.pattern = 'test/**/*_test.rb'
|
11
10
|
end
|
data/chillout.gemspec
CHANGED
@@ -6,8 +6,8 @@ require 'chillout/version'
|
|
6
6
|
Gem::Specification.new do |gem|
|
7
7
|
gem.name = "chillout"
|
8
8
|
gem.version = Chillout::VERSION
|
9
|
-
gem.authors = ["Michał Łomnicki", "Jan Filipowski"]
|
10
|
-
gem.email = ["michal.lomnicki@gmail.com", "jachuf@gmail.com", "dev@arkency.com"]
|
9
|
+
gem.authors = ["Michał Łomnicki", "Jan Filipowski", "Paweł Pacana"]
|
10
|
+
gem.email = ["michal.lomnicki@gmail.com", "jachuf@gmail.com", "pawel.pacana@gmail.com", "dev@arkency.com"]
|
11
11
|
gem.description = "Chillout.io Ruby client"
|
12
12
|
gem.summary = "Chillout.io Ruby client"
|
13
13
|
gem.homepage = "http://chillout.io/"
|
@@ -17,7 +17,8 @@ Gem::Specification.new do |gem|
|
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
18
|
gem.require_paths = ["lib"]
|
19
19
|
|
20
|
-
gem.add_dependency
|
20
|
+
gem.add_dependency 'multi_json', '~> 1.4'
|
21
|
+
|
21
22
|
gem.add_development_dependency "minitest", "~>3.2.0"
|
22
23
|
gem.add_development_dependency "rake", "~> 0.9.2"
|
23
24
|
gem.add_development_dependency "mocha", "0.12.8"
|
data/lib/chillout/client.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
require 'forwardable'
|
2
|
-
require 'chillout/
|
3
|
-
require 'chillout/
|
4
|
-
require 'chillout/
|
2
|
+
require 'chillout/server_side/server_side'
|
3
|
+
require 'chillout/server_side/http_client'
|
4
|
+
require 'chillout/server_side/dispatcher'
|
5
5
|
require 'chillout/config'
|
6
6
|
require 'chillout/event_data_builder'
|
7
7
|
require 'chillout/prefixed_logger'
|
@@ -31,20 +31,35 @@ module Chillout
|
|
31
31
|
@server_side = ServerSide.new(@event_data_builder, @http_client).freeze
|
32
32
|
@dispatcher = Dispatcher.new(@server_side).freeze
|
33
33
|
@queue = Queue.new
|
34
|
+
@worker_mutex = Mutex.new
|
34
35
|
end
|
35
36
|
|
36
37
|
def enqueue(creations)
|
38
|
+
ensure_worker_running
|
39
|
+
@logger.info "Creations were enqueued."
|
37
40
|
@queue << creations
|
38
41
|
end
|
39
42
|
|
43
|
+
def worker_running?
|
44
|
+
@worker_thread && @worker_thread.alive?
|
45
|
+
end
|
46
|
+
|
47
|
+
private
|
40
48
|
def start_worker
|
41
|
-
|
49
|
+
@worker_thread = Thread.new do
|
42
50
|
worker = Worker.new(@dispatcher, @queue, @logger)
|
43
51
|
worker.run
|
44
52
|
end
|
45
53
|
end
|
46
54
|
|
47
|
-
|
55
|
+
def ensure_worker_running
|
56
|
+
return if worker_running?
|
57
|
+
@worker_mutex.synchronize do
|
58
|
+
return if worker_running?
|
59
|
+
start_worker
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
48
63
|
def build_config(config_or_api_key, options)
|
49
64
|
case config_or_api_key
|
50
65
|
when Config
|
@@ -7,13 +7,20 @@ module Chillout
|
|
7
7
|
end
|
8
8
|
|
9
9
|
def call(env)
|
10
|
-
|
10
|
+
dup._call(env)
|
11
|
+
end
|
12
|
+
|
13
|
+
def _call(env)
|
14
|
+
status, headers, body = @app.call(env)
|
15
|
+
return status, headers, body
|
11
16
|
ensure
|
12
17
|
if Thread.current[:creations]
|
18
|
+
@client.logger.info "Non-empty creations container found"
|
13
19
|
@client.enqueue(Thread.current[:creations])
|
14
20
|
Thread.current[:creations] = nil
|
15
21
|
end
|
16
|
-
|
22
|
+
|
23
|
+
body.close if body && body.respond_to?(:close) && $!
|
17
24
|
end
|
18
25
|
end
|
19
26
|
end
|
data/lib/chillout/railtie.rb
CHANGED
@@ -16,7 +16,7 @@ module Chillout
|
|
16
16
|
end
|
17
17
|
|
18
18
|
class RailsInitializer
|
19
|
-
|
19
|
+
|
20
20
|
def initialize(rails_app, chillout_config, rails_logger)
|
21
21
|
@rails_app = rails_app
|
22
22
|
@chillout_config = chillout_config
|
@@ -24,14 +24,12 @@ module Chillout
|
|
24
24
|
end
|
25
25
|
|
26
26
|
def start
|
27
|
-
@rails_logger.info "[Chillout]
|
27
|
+
@rails_logger.info "[Chillout] Railtie initializing"
|
28
28
|
client = Client.new(@chillout_config[:secret], options)
|
29
29
|
ActiveRecord::Base.extend(CreationListener)
|
30
|
-
@rails_logger.info "[Chillout]
|
30
|
+
@rails_logger.info "[Chillout] Creation listener attached"
|
31
31
|
@rails_app.middleware.use Middleware::CreationsMonitor, client
|
32
|
-
@rails_logger.info "[Chillout]
|
33
|
-
client.start_worker
|
34
|
-
@rails_logger.info "[Chillout] worker started"
|
32
|
+
@rails_logger.info "[Chillout] Creation monitor enabled"
|
35
33
|
end
|
36
34
|
|
37
35
|
def options
|
File without changes
|
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'net/http'
|
2
2
|
require 'net/https'
|
3
|
-
require '
|
3
|
+
require 'multi_json'
|
4
4
|
|
5
5
|
module Chillout
|
6
6
|
class HttpClient
|
@@ -30,7 +30,7 @@ module Chillout
|
|
30
30
|
http = Net::HTTP.new(@config.hostname, @config.port)
|
31
31
|
http.use_ssl = @config.ssl
|
32
32
|
request_spec = Net::HTTP::Post.new(path)
|
33
|
-
request_spec.body =
|
33
|
+
request_spec.body = MultiJson.dump(data)
|
34
34
|
request_spec.content_type = MEDIA_TYPE
|
35
35
|
request_spec.basic_auth @config.authentication_user, @config.authentication_password
|
36
36
|
http.start do
|
File without changes
|
data/lib/chillout/version.rb
CHANGED
data/lib/chillout/worker.rb
CHANGED
@@ -10,7 +10,9 @@ module Chillout
|
|
10
10
|
end
|
11
11
|
|
12
12
|
def get_all_containers_to_process
|
13
|
+
logger.info "Waiting for at least one container."
|
13
14
|
all_containers = [queue.pop]
|
15
|
+
logger.info "Received at least one container."
|
14
16
|
loop do
|
15
17
|
begin
|
16
18
|
all_containers << queue.pop(true)
|
@@ -18,6 +20,7 @@ module Chillout
|
|
18
20
|
break
|
19
21
|
end
|
20
22
|
end
|
23
|
+
logger.info "Received containers to process: #{all_containers.count}"
|
21
24
|
all_containers
|
22
25
|
end
|
23
26
|
|
@@ -30,8 +33,9 @@ module Chillout
|
|
30
33
|
end
|
31
34
|
|
32
35
|
def send_creations(creations_container)
|
36
|
+
logger.info "Trying to send creations"
|
33
37
|
dispatcher.send_creations(creations_container)
|
34
|
-
logger.info "
|
38
|
+
logger.info "Metrics sent"
|
35
39
|
rescue Dispatcher::SendCreationsFailed
|
36
40
|
queue << creations_container
|
37
41
|
logger.error "Sending metrics failed"
|
@@ -43,6 +47,7 @@ module Chillout
|
|
43
47
|
end
|
44
48
|
|
45
49
|
def run
|
50
|
+
logger.info "Worker started"
|
46
51
|
send_startup_message
|
47
52
|
loop do
|
48
53
|
containers_to_merge = get_all_containers_to_process
|
data/lib/chillout.rb
CHANGED
@@ -1,9 +1,9 @@
|
|
1
1
|
require "chillout/version"
|
2
2
|
require "chillout/config"
|
3
3
|
require "chillout/middleware/creations_monitor"
|
4
|
-
require "chillout/
|
5
|
-
require "chillout/
|
6
|
-
require "chillout/
|
4
|
+
require "chillout/server_side/dispatcher"
|
5
|
+
require "chillout/server_side/server_side"
|
6
|
+
require "chillout/server_side/http_client"
|
7
7
|
require "chillout/client"
|
8
8
|
|
9
9
|
module Chillout
|
@@ -10,8 +10,7 @@ module Chillout
|
|
10
10
|
stub_api_request(api_key, "clients")
|
11
11
|
stub_api_request(api_key, "metrics")
|
12
12
|
@config = Chillout::Config.new(api_key)
|
13
|
-
@client = Chillout::Client.new(@config)
|
14
|
-
@client.start_worker
|
13
|
+
@client = Chillout::Client.new(@config, :logger => null_logger)
|
15
14
|
end
|
16
15
|
|
17
16
|
def app
|
@@ -31,6 +30,7 @@ module Chillout
|
|
31
30
|
def test_creations_values
|
32
31
|
get "/"
|
33
32
|
Thread.pass
|
33
|
+
sleep 2
|
34
34
|
assert_equal 2, request_body["content"]["creations"]["User"]
|
35
35
|
assert_equal 3, request_body["content"]["creations"]["Cart"]
|
36
36
|
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'chillout/creations_container'
|
3
|
+
|
4
|
+
class WorkerIntegrationTest < ChilloutTestCase
|
5
|
+
|
6
|
+
def setup
|
7
|
+
@_api_key = "xyz123"
|
8
|
+
stub_request(:post, api_url('clients')).to_return(:body => "OK", :status => 200)
|
9
|
+
stub_request(:post, api_url('metrics')).to_return(:body => "OK", :status => 200)
|
10
|
+
end
|
11
|
+
|
12
|
+
def test_worker_running_after_fork_on_first_use
|
13
|
+
return if RUBY_PLATFORM == 'java'
|
14
|
+
|
15
|
+
client = Chillout::Client.new(@_api_key, :logger => null_logger)
|
16
|
+
worker_check = Proc.new do
|
17
|
+
client.enqueue(Chillout::CreationsContainer.new)
|
18
|
+
assert client.worker_running?
|
19
|
+
end
|
20
|
+
|
21
|
+
assert_successful_exit Process.fork(&worker_check)
|
22
|
+
end
|
23
|
+
|
24
|
+
def test_worker_running_lazily
|
25
|
+
client = Chillout::Client.new(@_api_key, :logger => null_logger)
|
26
|
+
client.enqueue(Chillout::CreationsContainer.new)
|
27
|
+
|
28
|
+
assert client.worker_running?
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
@@ -5,7 +5,7 @@ module Chillout
|
|
5
5
|
def test_error_message_is_prefixed
|
6
6
|
output = StringIO.new
|
7
7
|
logger = Logger.new(output)
|
8
|
-
prefixed_logger = PrefixedLogger.new("
|
8
|
+
prefixed_logger = PrefixedLogger.new("Chillout", logger)
|
9
9
|
prefixed_logger.error "Someone is wrong on the internet"
|
10
10
|
assert_includes output.string, "[Chillout] Someone is wrong on the internet"
|
11
11
|
end
|
data/test/test_helper.rb
CHANGED
@@ -17,17 +17,6 @@ class ChilloutTestCase < Test::Unit::TestCase
|
|
17
17
|
assert collection.include?(object), message || "#{collection.inspect} expected to include #{object.inspect}."
|
18
18
|
end
|
19
19
|
|
20
|
-
def build_exception(klass = Exception, message = "Test Exception")
|
21
|
-
raise klass.new(message)
|
22
|
-
rescue Exception => exception
|
23
|
-
exception
|
24
|
-
end
|
25
|
-
|
26
|
-
def build_error(klass, message = "Test Error", environment = {})
|
27
|
-
exception = build_exception(klass, message)
|
28
|
-
Chillout::Error.new(exception, environment)
|
29
|
-
end
|
30
|
-
|
31
20
|
def stub_api_request(api_key, resource_name)
|
32
21
|
@_api_key = api_key
|
33
22
|
stub_request(:post, api_url(resource_name))
|
@@ -35,7 +24,7 @@ class ChilloutTestCase < Test::Unit::TestCase
|
|
35
24
|
|
36
25
|
def assert_request_body(resource_name)
|
37
26
|
assert_requested(:post, api_url(resource_name)) do |request|
|
38
|
-
yield
|
27
|
+
yield MultiJson.load(request.body)
|
39
28
|
end
|
40
29
|
end
|
41
30
|
|
@@ -48,6 +37,15 @@ class ChilloutTestCase < Test::Unit::TestCase
|
|
48
37
|
"https://#{@_api_key}:#{@_api_key}@api.chillout.io/#{resource_name}"
|
49
38
|
end
|
50
39
|
|
40
|
+
def null_logger
|
41
|
+
Logger.new('/dev/null')
|
42
|
+
end
|
43
|
+
|
44
|
+
def assert_successful_exit(pid)
|
45
|
+
_, status = Process.wait2(pid)
|
46
|
+
assert_equal 0, status.exitstatus
|
47
|
+
end
|
48
|
+
|
51
49
|
end
|
52
50
|
|
53
51
|
class ChilloutTestException < Exception; end
|
metadata
CHANGED
@@ -1,147 +1,140 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: chillout
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.5.4
|
5
5
|
prerelease:
|
6
|
-
segments:
|
7
|
-
- 0
|
8
|
-
- 5
|
9
|
-
- 3
|
10
|
-
version: 0.5.3
|
11
6
|
platform: ruby
|
12
|
-
authors:
|
13
|
-
-
|
7
|
+
authors:
|
8
|
+
- Michał Łomnicki
|
14
9
|
- Jan Filipowski
|
10
|
+
- Paweł Pacana
|
15
11
|
autorequire:
|
16
12
|
bindir: bin
|
17
13
|
cert_chain: []
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
prerelease: false
|
24
|
-
requirement: &id001 !ruby/object:Gem::Requirement
|
14
|
+
date: 2013-04-08 00:00:00.000000000 Z
|
15
|
+
dependencies:
|
16
|
+
- !ruby/object:Gem::Dependency
|
17
|
+
name: multi_json
|
18
|
+
requirement: !ruby/object:Gem::Requirement
|
25
19
|
none: false
|
26
|
-
requirements:
|
20
|
+
requirements:
|
27
21
|
- - ~>
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
|
30
|
-
segments:
|
31
|
-
- 1
|
32
|
-
- 7
|
33
|
-
- 0
|
34
|
-
version: 1.7.0
|
22
|
+
- !ruby/object:Gem::Version
|
23
|
+
version: '1.4'
|
35
24
|
type: :runtime
|
36
|
-
version_requirements: *id001
|
37
|
-
- !ruby/object:Gem::Dependency
|
38
|
-
name: minitest
|
39
25
|
prerelease: false
|
40
|
-
|
26
|
+
version_requirements: !ruby/object:Gem::Requirement
|
27
|
+
none: false
|
28
|
+
requirements:
|
29
|
+
- - ~>
|
30
|
+
- !ruby/object:Gem::Version
|
31
|
+
version: '1.4'
|
32
|
+
- !ruby/object:Gem::Dependency
|
33
|
+
name: minitest
|
34
|
+
requirement: !ruby/object:Gem::Requirement
|
41
35
|
none: false
|
42
|
-
requirements:
|
36
|
+
requirements:
|
43
37
|
- - ~>
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
hash: 15
|
46
|
-
segments:
|
47
|
-
- 3
|
48
|
-
- 2
|
49
|
-
- 0
|
38
|
+
- !ruby/object:Gem::Version
|
50
39
|
version: 3.2.0
|
51
40
|
type: :development
|
52
|
-
version_requirements: *id002
|
53
|
-
- !ruby/object:Gem::Dependency
|
54
|
-
name: rake
|
55
41
|
prerelease: false
|
56
|
-
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
43
|
none: false
|
58
|
-
requirements:
|
44
|
+
requirements:
|
59
45
|
- - ~>
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 3.2.0
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: rake
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
none: false
|
52
|
+
requirements:
|
53
|
+
- - ~>
|
54
|
+
- !ruby/object:Gem::Version
|
66
55
|
version: 0.9.2
|
67
56
|
type: :development
|
68
|
-
version_requirements: *id003
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: mocha
|
71
57
|
prerelease: false
|
72
|
-
|
58
|
+
version_requirements: !ruby/object:Gem::Requirement
|
59
|
+
none: false
|
60
|
+
requirements:
|
61
|
+
- - ~>
|
62
|
+
- !ruby/object:Gem::Version
|
63
|
+
version: 0.9.2
|
64
|
+
- !ruby/object:Gem::Dependency
|
65
|
+
name: mocha
|
66
|
+
requirement: !ruby/object:Gem::Requirement
|
73
67
|
none: false
|
74
|
-
requirements:
|
75
|
-
- -
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
hash: 63
|
78
|
-
segments:
|
79
|
-
- 0
|
80
|
-
- 12
|
81
|
-
- 8
|
68
|
+
requirements:
|
69
|
+
- - '='
|
70
|
+
- !ruby/object:Gem::Version
|
82
71
|
version: 0.12.8
|
83
72
|
type: :development
|
84
|
-
version_requirements: *id004
|
85
|
-
- !ruby/object:Gem::Dependency
|
86
|
-
name: contest
|
87
73
|
prerelease: false
|
88
|
-
|
74
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
75
|
none: false
|
90
|
-
requirements:
|
76
|
+
requirements:
|
77
|
+
- - '='
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: 0.12.8
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: contest
|
82
|
+
requirement: !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
91
85
|
- - ~>
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
hash: 29
|
94
|
-
segments:
|
95
|
-
- 0
|
96
|
-
- 1
|
97
|
-
- 3
|
86
|
+
- !ruby/object:Gem::Version
|
98
87
|
version: 0.1.3
|
99
88
|
type: :development
|
100
|
-
version_requirements: *id005
|
101
|
-
- !ruby/object:Gem::Dependency
|
102
|
-
name: rack-test
|
103
89
|
prerelease: false
|
104
|
-
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
none: false
|
92
|
+
requirements:
|
93
|
+
- - ~>
|
94
|
+
- !ruby/object:Gem::Version
|
95
|
+
version: 0.1.3
|
96
|
+
- !ruby/object:Gem::Dependency
|
97
|
+
name: rack-test
|
98
|
+
requirement: !ruby/object:Gem::Requirement
|
105
99
|
none: false
|
106
|
-
requirements:
|
100
|
+
requirements:
|
107
101
|
- - ~>
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
hash: 3
|
110
|
-
segments:
|
111
|
-
- 0
|
112
|
-
- 6
|
113
|
-
- 2
|
102
|
+
- !ruby/object:Gem::Version
|
114
103
|
version: 0.6.2
|
115
104
|
type: :development
|
116
|
-
version_requirements: *id006
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
|
-
name: webmock
|
119
105
|
prerelease: false
|
120
|
-
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
107
|
none: false
|
122
|
-
requirements:
|
108
|
+
requirements:
|
123
109
|
- - ~>
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
110
|
+
- !ruby/object:Gem::Version
|
111
|
+
version: 0.6.2
|
112
|
+
- !ruby/object:Gem::Dependency
|
113
|
+
name: webmock
|
114
|
+
requirement: !ruby/object:Gem::Requirement
|
115
|
+
none: false
|
116
|
+
requirements:
|
117
|
+
- - ~>
|
118
|
+
- !ruby/object:Gem::Version
|
130
119
|
version: 1.8.11
|
131
120
|
type: :development
|
132
|
-
|
121
|
+
prerelease: false
|
122
|
+
version_requirements: !ruby/object:Gem::Requirement
|
123
|
+
none: false
|
124
|
+
requirements:
|
125
|
+
- - ~>
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: 1.8.11
|
133
128
|
description: Chillout.io Ruby client
|
134
|
-
email:
|
129
|
+
email:
|
135
130
|
- michal.lomnicki@gmail.com
|
136
131
|
- jachuf@gmail.com
|
132
|
+
- pawel.pacana@gmail.com
|
137
133
|
- dev@arkency.com
|
138
134
|
executables: []
|
139
|
-
|
140
135
|
extensions: []
|
141
|
-
|
142
136
|
extra_rdoc_files: []
|
143
|
-
|
144
|
-
files:
|
137
|
+
files:
|
145
138
|
- .gitignore
|
146
139
|
- .travis.yml
|
147
140
|
- Gemfile
|
@@ -159,9 +152,9 @@ files:
|
|
159
152
|
- lib/chillout/middleware/creations_monitor.rb
|
160
153
|
- lib/chillout/prefixed_logger.rb
|
161
154
|
- lib/chillout/railtie.rb
|
162
|
-
- lib/chillout/
|
163
|
-
- lib/chillout/
|
164
|
-
- lib/chillout/
|
155
|
+
- lib/chillout/server_side/dispatcher.rb
|
156
|
+
- lib/chillout/server_side/http_client.rb
|
157
|
+
- lib/chillout/server_side/server_side.rb
|
165
158
|
- lib/chillout/tasks.rb
|
166
159
|
- lib/chillout/version.rb
|
167
160
|
- lib/chillout/worker.rb
|
@@ -174,6 +167,7 @@ files:
|
|
174
167
|
- test/http_client_test.rb
|
175
168
|
- test/integration/client_test.rb
|
176
169
|
- test/integration/creations_monitor_rack_test.rb
|
170
|
+
- test/integration/worker_test.rb
|
177
171
|
- test/middleware/creations_monitor_test.rb
|
178
172
|
- test/prefixed_logger_test.rb
|
179
173
|
- test/server_side_test.rb
|
@@ -181,38 +175,35 @@ files:
|
|
181
175
|
- test/worker_test.rb
|
182
176
|
homepage: http://chillout.io/
|
183
177
|
licenses: []
|
184
|
-
|
185
178
|
post_install_message:
|
186
179
|
rdoc_options: []
|
187
|
-
|
188
|
-
require_paths:
|
180
|
+
require_paths:
|
189
181
|
- lib
|
190
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
182
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
191
183
|
none: false
|
192
|
-
requirements:
|
193
|
-
- -
|
194
|
-
- !ruby/object:Gem::Version
|
195
|
-
|
196
|
-
segments:
|
184
|
+
requirements:
|
185
|
+
- - ! '>='
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '0'
|
188
|
+
segments:
|
197
189
|
- 0
|
198
|
-
|
199
|
-
required_rubygems_version: !ruby/object:Gem::Requirement
|
190
|
+
hash: 3188055463774447782
|
191
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
200
192
|
none: false
|
201
|
-
requirements:
|
202
|
-
- -
|
203
|
-
- !ruby/object:Gem::Version
|
204
|
-
|
205
|
-
segments:
|
193
|
+
requirements:
|
194
|
+
- - ! '>='
|
195
|
+
- !ruby/object:Gem::Version
|
196
|
+
version: '0'
|
197
|
+
segments:
|
206
198
|
- 0
|
207
|
-
|
199
|
+
hash: 3188055463774447782
|
208
200
|
requirements: []
|
209
|
-
|
210
201
|
rubyforge_project:
|
211
|
-
rubygems_version: 1.8.
|
202
|
+
rubygems_version: 1.8.25
|
212
203
|
signing_key:
|
213
204
|
specification_version: 3
|
214
205
|
summary: Chillout.io Ruby client
|
215
|
-
test_files:
|
206
|
+
test_files:
|
216
207
|
- test/check_result_test.rb
|
217
208
|
- test/client_test.rb
|
218
209
|
- test/config_test.rb
|
@@ -222,6 +213,7 @@ test_files:
|
|
222
213
|
- test/http_client_test.rb
|
223
214
|
- test/integration/client_test.rb
|
224
215
|
- test/integration/creations_monitor_rack_test.rb
|
216
|
+
- test/integration/worker_test.rb
|
225
217
|
- test/middleware/creations_monitor_test.rb
|
226
218
|
- test/prefixed_logger_test.rb
|
227
219
|
- test/server_side_test.rb
|