chillout 0.5.3 → 0.5.4
Sign up to get free protection for your applications and to get access to all the features.
- 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
|
[![Build Status](https://travis-ci.org/chilloutio/chillout.png)](https://travis-ci.org/chilloutio/chillout)
|
4
|
+
[![Code Climate](https://codeclimate.com/github/chilloutio/chillout.png)](https://codeclimate.com/github/chilloutio/chillout)
|
5
|
+
[![Gem Version](https://badge.fury.io/rb/chillout.png)](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
|