cylons 0.0.1 → 0.0.2
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.
- checksums.yaml +7 -0
- data/.gitignore +2 -0
- data/.rspec +1 -0
- data/Gemfile +3 -2
- data/Guardfile +39 -0
- data/README.md +93 -39
- data/bin/cylons +11 -12
- data/cylons.gemspec +13 -8
- data/lib/cylons.rb +43 -14
- data/lib/cylons/active_record_extensions.rb +20 -27
- data/lib/cylons/{remote_proxy.rb → agent.rb} +104 -47
- data/lib/cylons/config.rb +26 -0
- data/lib/cylons/connection.rb +11 -15
- data/lib/cylons/errors.rb +2 -1
- data/lib/cylons/local_registry.rb +5 -11
- data/lib/cylons/logging.rb +41 -0
- data/lib/cylons/railtie.rb +4 -25
- data/lib/cylons/registry_adapter.rb +10 -1
- data/lib/cylons/remote.rb +11 -22
- data/lib/cylons/remote_discovery.rb +29 -18
- data/lib/cylons/remote_pagination.rb +32 -0
- data/lib/cylons/remote_registry.rb +12 -15
- data/lib/cylons/remote_schema.rb +2 -2
- data/lib/cylons/rpc.rb +64 -72
- data/lib/cylons/service_manager.rb +30 -20
- data/lib/cylons/version.rb +1 -1
- data/spec/inventory_test_app.rb +24 -0
- data/spec/lib/cylons/connection_spec.rb +15 -0
- data/spec/lib/cylons/interface_spec.rb +7 -0
- data/spec/lib/cylons/remote_registry_spec.rb +57 -0
- data/spec/lib/cylons/service_manager_spec.rb +40 -4
- data/spec/spec_helper.rb +30 -2
- data/spec/support/inventory_test_node.rb +49 -0
- data/spec/support/schema.rb +24 -0
- metadata +181 -150
- data/lib/cylons/configuration.rb +0 -38
- data/spec/lib/cylons/remote_registry.rb +0 -7
@@ -0,0 +1,57 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe ::Cylons::RemoteRegistry do
|
4
|
+
subject { described_class }
|
5
|
+
|
6
|
+
describe ".clear_registry" do
|
7
|
+
it {
|
8
|
+
::DCell.registry.instance_variable_get("@global_registry").stub(:clear)
|
9
|
+
::DCell.registry.instance_variable_get("@global_registry").should_receive(:clear)
|
10
|
+
subject.clear_registry
|
11
|
+
}
|
12
|
+
end
|
13
|
+
|
14
|
+
describe ".register" do
|
15
|
+
it "appends class to remotes" do
|
16
|
+
current_remotes_count = subject.remotes.size
|
17
|
+
subject.register(OpenStruct)
|
18
|
+
subject.remotes.size.should eq current_remotes_count + 1
|
19
|
+
subject.remotes.pop
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
describe ".register_schemas" do
|
24
|
+
it "registers schema for each remote in registry" do
|
25
|
+
subject.remotes.each do
|
26
|
+
subject.stub(:register_remote_schema)
|
27
|
+
end
|
28
|
+
|
29
|
+
subject.should_receive(:register_remote_schema).exactly(subject.remotes.size).times
|
30
|
+
|
31
|
+
subject.register_schemas
|
32
|
+
end
|
33
|
+
end
|
34
|
+
|
35
|
+
describe ".remote_schemas" do
|
36
|
+
it {
|
37
|
+
subject.register_schemas
|
38
|
+
subject.remote_schemas.should include(:product_schema)
|
39
|
+
}
|
40
|
+
end
|
41
|
+
|
42
|
+
describe ".remotes" do
|
43
|
+
it { described_class.remotes.should include(Product) }
|
44
|
+
end
|
45
|
+
|
46
|
+
describe ".remote_schema?" do
|
47
|
+
it {
|
48
|
+
described_class.remote_schema?("product").should be true
|
49
|
+
}
|
50
|
+
end
|
51
|
+
|
52
|
+
describe ".get_remote_schema" do
|
53
|
+
it {
|
54
|
+
subject.get_remote_schema("product").should be_a(::Cylons::RemoteSchema)
|
55
|
+
}
|
56
|
+
end
|
57
|
+
end
|
@@ -1,9 +1,45 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
3
|
describe ::Cylons::ServiceManager do
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
subject { described_class }
|
5
|
+
its(:remotes?) { should be true }
|
6
|
+
describe ".start" do
|
7
|
+
it do
|
8
|
+
described_class.stub(:start_services)
|
9
|
+
subject.should_receive(:start_services)
|
10
|
+
subject.start
|
7
11
|
end
|
8
12
|
end
|
9
|
-
|
13
|
+
|
14
|
+
describe ".start_service" do
|
15
|
+
it "calls build_service" do
|
16
|
+
subject.start_service(::Product)
|
17
|
+
|
18
|
+
::Celluloid::Actor[:node_manager].find("InventoryTest").should be_a(::DCell::Node)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
describe ".start_services" do
|
23
|
+
context "remotes registered" do
|
24
|
+
it "starts services" do
|
25
|
+
subject.should_receive(:start_service).with(::Cylons::RemoteRegistry.remotes.first).once
|
26
|
+
subject.start_services
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
context "no remotes" do
|
31
|
+
it "does not start" do
|
32
|
+
subject.stub(:remotes?).and_return(false)
|
33
|
+
subject.should_not_receive(:start_service)
|
34
|
+
subject.start_services
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
describe ".service_defined?" do
|
40
|
+
it {
|
41
|
+
subject.service_defined?(OpenStruct).should be false
|
42
|
+
}
|
43
|
+
end
|
44
|
+
|
45
|
+
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,12 +1,40 @@
|
|
1
1
|
require 'rubygems'
|
2
2
|
require 'bundler'
|
3
|
-
|
3
|
+
require 'cylons'
|
4
4
|
require 'simplecov'
|
5
|
+
|
5
6
|
SimpleCov.start do
|
6
7
|
add_filter '/spec/'
|
7
8
|
end
|
8
9
|
|
9
10
|
Bundler.require(:default, :development, :test)
|
10
11
|
|
12
|
+
# Dir['./spec/support/*.rb'].map { |f| require f }
|
13
|
+
|
14
|
+
if ENV.key?('DEBUG')
|
15
|
+
::Cylons.config.logger = ::Cylons::Logging.initialize_logger($stdout, ::Logger::DEBUG)
|
16
|
+
elsif ENV.key?('DEBUG_LOG')
|
17
|
+
debug_log = ::File.expand_path('../../debug_specs.log', __FILE__)
|
18
|
+
::Cylons.config.logger = ::Cylons::Logging.initialize_logger(debug_log, ::Logger::DEBUG)
|
19
|
+
else
|
20
|
+
::Cylons.config.logger = ::Cylons::Logging.initialize_logger('/dev/null', ::Logger::FATAL)
|
21
|
+
end
|
22
|
+
|
11
23
|
RSpec.configure do |config|
|
12
|
-
|
24
|
+
config.before(:suite) do
|
25
|
+
require 'inventory_test_app'
|
26
|
+
require 'support/schema'
|
27
|
+
end
|
28
|
+
|
29
|
+
# config.before(:suite) do
|
30
|
+
# ::InventoryTestNode.start
|
31
|
+
# ::InventoryTestNode.wait_until_ready
|
32
|
+
# end
|
33
|
+
#
|
34
|
+
# config.after(:suite) do
|
35
|
+
# puts ::DCell::Node.all.inspect
|
36
|
+
#
|
37
|
+
# ::InventoryTestNode.stop
|
38
|
+
#
|
39
|
+
# end
|
40
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# For Gem.ruby, and almost certainly already loaded
|
2
|
+
require 'rubygems'
|
3
|
+
|
4
|
+
module InventoryTestNode
|
5
|
+
PORT = 21264
|
6
|
+
|
7
|
+
def self.start
|
8
|
+
@pid = Process.spawn Gem.ruby, File.expand_path("../../inventory_test_app.rb", __FILE__)
|
9
|
+
unless @pid
|
10
|
+
STDERR.print "ERROR: Couldn't start test node. Do you have Redis installed?"
|
11
|
+
exit 1
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
|
16
|
+
def self.wait_until_ready
|
17
|
+
STDERR.print "Waiting for test node to start up..."
|
18
|
+
|
19
|
+
socket = nil
|
20
|
+
30.times do
|
21
|
+
begin
|
22
|
+
socket = TCPSocket.open("127.0.0.1", PORT)
|
23
|
+
break if socket
|
24
|
+
rescue Errno::ECONNREFUSED
|
25
|
+
STDERR.print "."
|
26
|
+
sleep 1
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
if socket
|
31
|
+
STDERR.puts " done!"
|
32
|
+
socket.close
|
33
|
+
else
|
34
|
+
STDERR.puts " FAILED!"
|
35
|
+
raise "couldn't connect to test node!"
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
def self.stop
|
40
|
+
unless @pid
|
41
|
+
STDERR.print "ERROR: Test node was never started!"
|
42
|
+
exit 1
|
43
|
+
end
|
44
|
+
Process.kill 9, @pid
|
45
|
+
rescue Errno::ESRCH
|
46
|
+
ensure
|
47
|
+
Process.wait @pid rescue nil
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
require 'active_record'
|
2
|
+
|
3
|
+
ActiveRecord::Base.establish_connection(
|
4
|
+
:adapter => "sqlite3",
|
5
|
+
:database => "spec/test.db"
|
6
|
+
)
|
7
|
+
|
8
|
+
ActiveRecord::Base.connection.tables.each do |table|
|
9
|
+
ActiveRecord::Base.connection.drop_table(table)
|
10
|
+
end
|
11
|
+
|
12
|
+
ActiveRecord::Schema.define(:version => 1) do
|
13
|
+
create_table "products", :force => true do |t|
|
14
|
+
t.string "name"
|
15
|
+
t.integer "category_id"
|
16
|
+
t.integer "user_id"
|
17
|
+
t.decimal "price"
|
18
|
+
t.integer "in_stock_quantity"
|
19
|
+
t.integer "on_order_quantity"
|
20
|
+
t.boolean "active"
|
21
|
+
t.datetime "created_at", :null => false
|
22
|
+
t.datetime "updated_at", :null => false
|
23
|
+
end
|
24
|
+
end
|
metadata
CHANGED
@@ -1,289 +1,312 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cylons
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
version: 0.0.1
|
4
|
+
version: 0.0.2
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Jason Ayre
|
9
|
-
autorequire:
|
8
|
+
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2014-11-04 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: active_attr
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '0'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
16
22
|
version_requirements: !ruby/object:Gem::Requirement
|
17
23
|
requirements:
|
18
|
-
- -
|
24
|
+
- - ">="
|
19
25
|
- !ruby/object:Gem::Version
|
20
26
|
version: '0'
|
21
|
-
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: thor
|
22
29
|
requirement: !ruby/object:Gem::Requirement
|
23
30
|
requirements:
|
24
|
-
- -
|
31
|
+
- - ">="
|
25
32
|
- !ruby/object:Gem::Version
|
26
33
|
version: '0'
|
27
|
-
none: false
|
28
|
-
prerelease: false
|
29
34
|
type: :runtime
|
30
|
-
|
31
|
-
name: active_attr
|
35
|
+
prerelease: false
|
32
36
|
version_requirements: !ruby/object:Gem::Requirement
|
33
37
|
requirements:
|
34
|
-
- -
|
38
|
+
- - ">="
|
35
39
|
- !ruby/object:Gem::Version
|
36
40
|
version: '0'
|
37
|
-
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: zk
|
38
43
|
requirement: !ruby/object:Gem::Requirement
|
39
44
|
requirements:
|
40
|
-
- -
|
45
|
+
- - ">="
|
41
46
|
- !ruby/object:Gem::Version
|
42
47
|
version: '0'
|
43
|
-
none: false
|
44
|
-
prerelease: false
|
45
48
|
type: :runtime
|
46
|
-
|
47
|
-
name: dcell
|
49
|
+
prerelease: false
|
48
50
|
version_requirements: !ruby/object:Gem::Requirement
|
49
51
|
requirements:
|
50
|
-
- -
|
52
|
+
- - ">="
|
51
53
|
- !ruby/object:Gem::Version
|
52
|
-
version: 0
|
53
|
-
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: will_paginate
|
54
57
|
requirement: !ruby/object:Gem::Requirement
|
55
58
|
requirements:
|
56
|
-
- -
|
59
|
+
- - ">="
|
57
60
|
- !ruby/object:Gem::Version
|
58
|
-
version: 0
|
59
|
-
none: false
|
60
|
-
prerelease: false
|
61
|
+
version: '0'
|
61
62
|
type: :runtime
|
62
|
-
|
63
|
-
name: thor
|
63
|
+
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ">="
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '0'
|
69
|
-
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: dcell
|
70
71
|
requirement: !ruby/object:Gem::Requirement
|
71
72
|
requirements:
|
72
|
-
- -
|
73
|
+
- - ">="
|
73
74
|
- !ruby/object:Gem::Version
|
74
75
|
version: '0'
|
75
|
-
none: false
|
76
|
-
prerelease: false
|
77
76
|
type: :runtime
|
78
|
-
|
79
|
-
name: zk
|
77
|
+
prerelease: false
|
80
78
|
version_requirements: !ruby/object:Gem::Requirement
|
81
79
|
requirements:
|
82
|
-
- -
|
80
|
+
- - ">="
|
83
81
|
- !ruby/object:Gem::Version
|
84
82
|
version: '0'
|
85
|
-
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: pry
|
86
85
|
requirement: !ruby/object:Gem::Requirement
|
87
86
|
requirements:
|
88
|
-
- -
|
87
|
+
- - ">="
|
89
88
|
- !ruby/object:Gem::Version
|
90
89
|
version: '0'
|
91
|
-
none: false
|
92
|
-
prerelease: false
|
93
90
|
type: :runtime
|
94
|
-
|
95
|
-
name: pry
|
91
|
+
prerelease: false
|
96
92
|
version_requirements: !ruby/object:Gem::Requirement
|
97
93
|
requirements:
|
98
|
-
- -
|
94
|
+
- - ">="
|
99
95
|
- !ruby/object:Gem::Version
|
100
96
|
version: '0'
|
101
|
-
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: bundler
|
102
99
|
requirement: !ruby/object:Gem::Requirement
|
103
100
|
requirements:
|
104
|
-
- -
|
101
|
+
- - "~>"
|
105
102
|
- !ruby/object:Gem::Version
|
106
|
-
version: '
|
107
|
-
|
103
|
+
version: '1.3'
|
104
|
+
type: :development
|
108
105
|
prerelease: false
|
109
|
-
type: :runtime
|
110
|
-
- !ruby/object:Gem::Dependency
|
111
|
-
name: will_paginate
|
112
106
|
version_requirements: !ruby/object:Gem::Requirement
|
113
107
|
requirements:
|
114
|
-
- -
|
108
|
+
- - "~>"
|
115
109
|
- !ruby/object:Gem::Version
|
116
|
-
version: '
|
117
|
-
|
110
|
+
version: '1.3'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: rake
|
118
113
|
requirement: !ruby/object:Gem::Requirement
|
119
114
|
requirements:
|
120
|
-
- -
|
115
|
+
- - ">="
|
121
116
|
- !ruby/object:Gem::Version
|
122
117
|
version: '0'
|
123
|
-
|
118
|
+
type: :development
|
124
119
|
prerelease: false
|
125
|
-
type: :runtime
|
126
|
-
- !ruby/object:Gem::Dependency
|
127
|
-
name: ransack
|
128
120
|
version_requirements: !ruby/object:Gem::Requirement
|
129
121
|
requirements:
|
130
|
-
- -
|
122
|
+
- - ">="
|
131
123
|
- !ruby/object:Gem::Version
|
132
124
|
version: '0'
|
133
|
-
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: activerecord
|
134
127
|
requirement: !ruby/object:Gem::Requirement
|
135
128
|
requirements:
|
136
|
-
- -
|
129
|
+
- - ">="
|
137
130
|
- !ruby/object:Gem::Version
|
138
131
|
version: '0'
|
139
|
-
|
132
|
+
type: :development
|
140
133
|
prerelease: false
|
141
|
-
type: :runtime
|
142
|
-
- !ruby/object:Gem::Dependency
|
143
|
-
name: bundler
|
144
134
|
version_requirements: !ruby/object:Gem::Requirement
|
145
135
|
requirements:
|
146
|
-
- -
|
136
|
+
- - ">="
|
147
137
|
- !ruby/object:Gem::Version
|
148
|
-
version: '
|
149
|
-
|
138
|
+
version: '0'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: sqlite3
|
150
141
|
requirement: !ruby/object:Gem::Requirement
|
151
142
|
requirements:
|
152
|
-
- -
|
143
|
+
- - ">="
|
153
144
|
- !ruby/object:Gem::Version
|
154
|
-
version: '
|
155
|
-
none: false
|
156
|
-
prerelease: false
|
145
|
+
version: '0'
|
157
146
|
type: :development
|
158
|
-
|
159
|
-
name: rake
|
147
|
+
prerelease: false
|
160
148
|
version_requirements: !ruby/object:Gem::Requirement
|
161
149
|
requirements:
|
162
|
-
- -
|
150
|
+
- - ">="
|
163
151
|
- !ruby/object:Gem::Version
|
164
152
|
version: '0'
|
165
|
-
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: rspec
|
166
155
|
requirement: !ruby/object:Gem::Requirement
|
167
156
|
requirements:
|
168
|
-
- -
|
157
|
+
- - ">="
|
169
158
|
- !ruby/object:Gem::Version
|
170
159
|
version: '0'
|
171
|
-
none: false
|
172
|
-
prerelease: false
|
173
160
|
type: :development
|
174
|
-
|
175
|
-
name: pry
|
161
|
+
prerelease: false
|
176
162
|
version_requirements: !ruby/object:Gem::Requirement
|
177
163
|
requirements:
|
178
|
-
- -
|
164
|
+
- - ">="
|
179
165
|
- !ruby/object:Gem::Version
|
180
166
|
version: '0'
|
181
|
-
|
167
|
+
- !ruby/object:Gem::Dependency
|
168
|
+
name: rspec-pride
|
182
169
|
requirement: !ruby/object:Gem::Requirement
|
183
170
|
requirements:
|
184
|
-
- -
|
171
|
+
- - ">="
|
185
172
|
- !ruby/object:Gem::Version
|
186
173
|
version: '0'
|
187
|
-
none: false
|
188
|
-
prerelease: false
|
189
174
|
type: :development
|
190
|
-
|
191
|
-
name: activerecord
|
175
|
+
prerelease: false
|
192
176
|
version_requirements: !ruby/object:Gem::Requirement
|
193
177
|
requirements:
|
194
|
-
- -
|
178
|
+
- - ">="
|
195
179
|
- !ruby/object:Gem::Version
|
196
180
|
version: '0'
|
197
|
-
|
181
|
+
- !ruby/object:Gem::Dependency
|
182
|
+
name: pry-nav
|
198
183
|
requirement: !ruby/object:Gem::Requirement
|
199
184
|
requirements:
|
200
|
-
- -
|
185
|
+
- - ">="
|
201
186
|
- !ruby/object:Gem::Version
|
202
187
|
version: '0'
|
203
|
-
none: false
|
204
|
-
prerelease: false
|
205
188
|
type: :development
|
206
|
-
|
207
|
-
name: rake
|
189
|
+
prerelease: false
|
208
190
|
version_requirements: !ruby/object:Gem::Requirement
|
209
191
|
requirements:
|
210
|
-
- -
|
192
|
+
- - ">="
|
211
193
|
- !ruby/object:Gem::Version
|
212
194
|
version: '0'
|
213
|
-
|
195
|
+
- !ruby/object:Gem::Dependency
|
196
|
+
name: simplecov
|
214
197
|
requirement: !ruby/object:Gem::Requirement
|
215
198
|
requirements:
|
216
|
-
- -
|
199
|
+
- - ">="
|
217
200
|
- !ruby/object:Gem::Version
|
218
201
|
version: '0'
|
219
|
-
none: false
|
220
|
-
prerelease: false
|
221
202
|
type: :development
|
222
|
-
|
223
|
-
name: rspec
|
203
|
+
prerelease: false
|
224
204
|
version_requirements: !ruby/object:Gem::Requirement
|
225
205
|
requirements:
|
226
|
-
- -
|
206
|
+
- - ">="
|
227
207
|
- !ruby/object:Gem::Version
|
228
208
|
version: '0'
|
229
|
-
|
209
|
+
- !ruby/object:Gem::Dependency
|
210
|
+
name: rspec-its
|
230
211
|
requirement: !ruby/object:Gem::Requirement
|
231
212
|
requirements:
|
232
|
-
- -
|
213
|
+
- - "~>"
|
233
214
|
- !ruby/object:Gem::Version
|
234
|
-
version: '
|
235
|
-
none: false
|
236
|
-
prerelease: false
|
215
|
+
version: '1'
|
237
216
|
type: :development
|
217
|
+
prerelease: false
|
218
|
+
version_requirements: !ruby/object:Gem::Requirement
|
219
|
+
requirements:
|
220
|
+
- - "~>"
|
221
|
+
- !ruby/object:Gem::Version
|
222
|
+
version: '1'
|
238
223
|
- !ruby/object:Gem::Dependency
|
239
|
-
name: rspec-
|
224
|
+
name: rspec-collection_matchers
|
225
|
+
requirement: !ruby/object:Gem::Requirement
|
226
|
+
requirements:
|
227
|
+
- - "~>"
|
228
|
+
- !ruby/object:Gem::Version
|
229
|
+
version: '1'
|
230
|
+
type: :development
|
231
|
+
prerelease: false
|
240
232
|
version_requirements: !ruby/object:Gem::Requirement
|
241
233
|
requirements:
|
242
|
-
- -
|
234
|
+
- - "~>"
|
243
235
|
- !ruby/object:Gem::Version
|
244
|
-
version: '
|
245
|
-
|
236
|
+
version: '1'
|
237
|
+
- !ruby/object:Gem::Dependency
|
238
|
+
name: guard
|
246
239
|
requirement: !ruby/object:Gem::Requirement
|
247
240
|
requirements:
|
248
|
-
- -
|
241
|
+
- - "~>"
|
249
242
|
- !ruby/object:Gem::Version
|
250
|
-
version: '
|
251
|
-
|
243
|
+
version: '2'
|
244
|
+
type: :development
|
252
245
|
prerelease: false
|
246
|
+
version_requirements: !ruby/object:Gem::Requirement
|
247
|
+
requirements:
|
248
|
+
- - "~>"
|
249
|
+
- !ruby/object:Gem::Version
|
250
|
+
version: '2'
|
251
|
+
- !ruby/object:Gem::Dependency
|
252
|
+
name: guard-rspec
|
253
|
+
requirement: !ruby/object:Gem::Requirement
|
254
|
+
requirements:
|
255
|
+
- - "~>"
|
256
|
+
- !ruby/object:Gem::Version
|
257
|
+
version: '4'
|
253
258
|
type: :development
|
259
|
+
prerelease: false
|
260
|
+
version_requirements: !ruby/object:Gem::Requirement
|
261
|
+
requirements:
|
262
|
+
- - "~>"
|
263
|
+
- !ruby/object:Gem::Version
|
264
|
+
version: '4'
|
254
265
|
- !ruby/object:Gem::Dependency
|
255
|
-
name:
|
266
|
+
name: guard-bundler
|
267
|
+
requirement: !ruby/object:Gem::Requirement
|
268
|
+
requirements:
|
269
|
+
- - "~>"
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
version: '2'
|
272
|
+
type: :development
|
273
|
+
prerelease: false
|
256
274
|
version_requirements: !ruby/object:Gem::Requirement
|
257
275
|
requirements:
|
258
|
-
- -
|
276
|
+
- - "~>"
|
259
277
|
- !ruby/object:Gem::Version
|
260
|
-
version: '
|
261
|
-
|
278
|
+
version: '2'
|
279
|
+
- !ruby/object:Gem::Dependency
|
280
|
+
name: rb-fsevent
|
262
281
|
requirement: !ruby/object:Gem::Requirement
|
263
282
|
requirements:
|
264
|
-
- -
|
283
|
+
- - ">="
|
265
284
|
- !ruby/object:Gem::Version
|
266
285
|
version: '0'
|
267
|
-
none: false
|
268
|
-
prerelease: false
|
269
286
|
type: :development
|
270
|
-
|
271
|
-
name: simplecov
|
287
|
+
prerelease: false
|
272
288
|
version_requirements: !ruby/object:Gem::Requirement
|
273
289
|
requirements:
|
274
|
-
- -
|
290
|
+
- - ">="
|
275
291
|
- !ruby/object:Gem::Version
|
276
292
|
version: '0'
|
277
|
-
|
293
|
+
- !ruby/object:Gem::Dependency
|
294
|
+
name: terminal-notifier-guard
|
278
295
|
requirement: !ruby/object:Gem::Requirement
|
279
296
|
requirements:
|
280
|
-
- -
|
297
|
+
- - ">="
|
281
298
|
- !ruby/object:Gem::Version
|
282
299
|
version: '0'
|
283
|
-
none: false
|
284
|
-
prerelease: false
|
285
300
|
type: :development
|
286
|
-
|
301
|
+
prerelease: false
|
302
|
+
version_requirements: !ruby/object:Gem::Requirement
|
303
|
+
requirements:
|
304
|
+
- - ">="
|
305
|
+
- !ruby/object:Gem::Version
|
306
|
+
version: '0'
|
307
|
+
description: Collective intelligence meets service oriented architecture. Allows your
|
308
|
+
remote models to act like your local models, while defining simple conventions to
|
309
|
+
build self aware and reusable services. Currently reliant upon Zookeeper.
|
287
310
|
email:
|
288
311
|
- jasonayre@gmail.com
|
289
312
|
executables:
|
@@ -291,8 +314,10 @@ executables:
|
|
291
314
|
extensions: []
|
292
315
|
extra_rdoc_files: []
|
293
316
|
files:
|
294
|
-
- .gitignore
|
317
|
+
- ".gitignore"
|
318
|
+
- ".rspec"
|
295
319
|
- Gemfile
|
320
|
+
- Guardfile
|
296
321
|
- LICENSE.txt
|
297
322
|
- README.md
|
298
323
|
- Rakefile
|
@@ -300,61 +325,67 @@ files:
|
|
300
325
|
- cylons.gemspec
|
301
326
|
- lib/cylons.rb
|
302
327
|
- lib/cylons/active_record_extensions.rb
|
328
|
+
- lib/cylons/agent.rb
|
303
329
|
- lib/cylons/associations.rb
|
304
330
|
- lib/cylons/attributes.rb
|
305
|
-
- lib/cylons/
|
331
|
+
- lib/cylons/config.rb
|
306
332
|
- lib/cylons/connection.rb
|
307
333
|
- lib/cylons/errors.rb
|
308
334
|
- lib/cylons/interface.rb
|
309
335
|
- lib/cylons/local_registry.rb
|
336
|
+
- lib/cylons/logging.rb
|
310
337
|
- lib/cylons/railtie.rb
|
311
338
|
- lib/cylons/registry_adapter.rb
|
312
339
|
- lib/cylons/remote.rb
|
313
340
|
- lib/cylons/remote_discovery.rb
|
314
|
-
- lib/cylons/
|
341
|
+
- lib/cylons/remote_pagination.rb
|
315
342
|
- lib/cylons/remote_registry.rb
|
316
343
|
- lib/cylons/remote_schema.rb
|
317
344
|
- lib/cylons/rpc.rb
|
318
345
|
- lib/cylons/service.rb
|
319
346
|
- lib/cylons/service_manager.rb
|
320
347
|
- lib/cylons/version.rb
|
348
|
+
- spec/inventory_test_app.rb
|
349
|
+
- spec/lib/cylons/connection_spec.rb
|
350
|
+
- spec/lib/cylons/interface_spec.rb
|
321
351
|
- spec/lib/cylons/registry_adapter_spec.rb
|
322
|
-
- spec/lib/cylons/
|
352
|
+
- spec/lib/cylons/remote_registry_spec.rb
|
323
353
|
- spec/lib/cylons/service_manager_spec.rb
|
324
354
|
- spec/spec_helper.rb
|
355
|
+
- spec/support/inventory_test_node.rb
|
356
|
+
- spec/support/schema.rb
|
325
357
|
homepage: https://github.com/jasonayre/cylons
|
326
358
|
licenses:
|
327
359
|
- MIT
|
328
|
-
|
360
|
+
metadata: {}
|
361
|
+
post_install_message:
|
329
362
|
rdoc_options: []
|
330
363
|
require_paths:
|
331
364
|
- lib
|
332
365
|
required_ruby_version: !ruby/object:Gem::Requirement
|
333
366
|
requirements:
|
334
|
-
- -
|
367
|
+
- - ">="
|
335
368
|
- !ruby/object:Gem::Version
|
336
|
-
segments:
|
337
|
-
- 0
|
338
|
-
hash: 2
|
339
369
|
version: '0'
|
340
|
-
none: false
|
341
370
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
342
371
|
requirements:
|
343
|
-
- -
|
372
|
+
- - ">="
|
344
373
|
- !ruby/object:Gem::Version
|
345
|
-
segments:
|
346
|
-
- 0
|
347
|
-
hash: 2
|
348
374
|
version: '0'
|
349
|
-
none: false
|
350
375
|
requirements: []
|
351
|
-
rubyforge_project:
|
352
|
-
rubygems_version:
|
353
|
-
signing_key:
|
354
|
-
specification_version:
|
355
|
-
summary: Collectively intelligent (and simple), Service Oriented Architecture framework
|
376
|
+
rubyforge_project:
|
377
|
+
rubygems_version: 2.2.2
|
378
|
+
signing_key:
|
379
|
+
specification_version: 4
|
380
|
+
summary: Collectively intelligent (and simple), Service Oriented Architecture framework
|
381
|
+
for Rails
|
356
382
|
test_files:
|
383
|
+
- spec/inventory_test_app.rb
|
384
|
+
- spec/lib/cylons/connection_spec.rb
|
385
|
+
- spec/lib/cylons/interface_spec.rb
|
357
386
|
- spec/lib/cylons/registry_adapter_spec.rb
|
358
|
-
- spec/lib/cylons/
|
387
|
+
- spec/lib/cylons/remote_registry_spec.rb
|
359
388
|
- spec/lib/cylons/service_manager_spec.rb
|
360
389
|
- spec/spec_helper.rb
|
390
|
+
- spec/support/inventory_test_node.rb
|
391
|
+
- spec/support/schema.rb
|