emmy-engine 0.2.12 → 0.2.13
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 +4 -4
- data/Gemfile +3 -0
- data/emmy-engine.gemspec +2 -1
- data/lib/emmy.rb +1 -0
- data/lib/emmy/backend.rb +12 -6
- data/lib/emmy/runner.rb +19 -17
- data/lib/emmy/version.rb +1 -1
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1784f12f765b7cb0f72b15759289c914078486cc
|
4
|
+
data.tar.gz: 37241e6d2c269a0f0dad6f803807d75f0ae9e25d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 719208d6bb7dc964860640dcd7a7cdf3c516bb5d4fd25586936ff5fa21322d004b3194a8796c85bc020c1eee6c2946a9fd3830e87e2bae8570e870979dc30c8b
|
7
|
+
data.tar.gz: 73351b83e60afef077b2e549330532d87358d4a1dbc7398b293eb763569d30356eebf8cd948f835575042f4365952a1eefd3f878a3b9f1e17812496108cf30a4
|
data/Gemfile
CHANGED
data/emmy-engine.gemspec
CHANGED
@@ -25,8 +25,9 @@ Gem::Specification.new do |spec|
|
|
25
25
|
spec.require_paths = ["lib"]
|
26
26
|
|
27
27
|
spec.add_dependency "emmy-machine", "~> 0.1"
|
28
|
-
spec.add_dependency "emmy-http", "~> 0.2"
|
28
|
+
#spec.add_dependency "emmy-http", "~> 0.2"
|
29
29
|
spec.add_dependency "emmy-http-client", "~> 0.1"
|
30
|
+
#spec.add_dependency "emmy-http-server", "~> 0.1"
|
30
31
|
|
31
32
|
spec.add_development_dependency "eventmachine", "~> 1.0"
|
32
33
|
spec.add_development_dependency "bundler", "~> 1.9"
|
data/lib/emmy.rb
CHANGED
data/lib/emmy/backend.rb
CHANGED
@@ -5,21 +5,27 @@ module Emmy
|
|
5
5
|
|
6
6
|
module_function
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
def app(name: nil, &b)
|
11
|
-
@apps ||= {}
|
8
|
+
def app(name=nil, &b)
|
12
9
|
name ||= Emmy::Runner.instance.config.backend
|
13
10
|
|
14
11
|
if b
|
15
12
|
app = EmmyHttp::Application.new
|
16
13
|
app.instance_eval(&b)
|
17
|
-
|
14
|
+
apps(name, app)
|
18
15
|
else
|
19
|
-
|
16
|
+
apps(name)
|
20
17
|
end
|
21
18
|
end
|
22
19
|
|
20
|
+
def apps(name, app=nil)
|
21
|
+
@apps ||= {}
|
22
|
+
app ? @apps[name || :default] = app : @apps[name || :default]
|
23
|
+
end
|
24
|
+
|
25
|
+
def to_a
|
26
|
+
apps.to_a
|
27
|
+
end
|
28
|
+
|
23
29
|
#<<<
|
24
30
|
end
|
25
31
|
end
|
data/lib/emmy/runner.rb
CHANGED
@@ -60,37 +60,35 @@ module Emmy
|
|
60
60
|
opts.on("-e", "--environment ENV", "Specifies the execution environment",
|
61
61
|
"Default: #{config.environment}") { |env| config.environment = env }
|
62
62
|
opts.on("-p", "--port PORT", "Runs Emmy on the specified port",
|
63
|
-
"Default: #{config.url.port}")
|
63
|
+
"Default: #{config.url.port}") { |port| config.url.port = port }
|
64
64
|
opts.on("-a", "--address HOST", "Binds Emmy to the specified host",
|
65
|
-
"Default: #{config.url.host}")
|
65
|
+
"Default: #{config.url.host}") { |address| config.url.host = address }
|
66
66
|
opts.on("-b", "--backend NAME", "Backend name",
|
67
|
-
"Default: backend")
|
67
|
+
"Default: backend") { |name| config.backend = name }
|
68
68
|
opts.on("-d", "--daemonize", "Runs server in the background") { @action = :daemonize_server }
|
69
69
|
opts.on("-s", "--servers NUM", "Number of servers to start") do |num|
|
70
70
|
@action = :daemonize_server if @action == :start_server
|
71
71
|
config.servers = num.to_i
|
72
72
|
end
|
73
|
-
opts.on('', '--id NUM', "Server identifier")
|
73
|
+
opts.on('', '--id NUM', "Server identifier") { |id| config.id = id.to_i }
|
74
|
+
opts.on('', '--pre', "Prerelease server version") do |id|
|
75
|
+
config.adapter = EmmyHttp::Server::Server
|
76
|
+
end
|
74
77
|
#opts.on('-l', '--log FILE', "Log to file") { |file| config.log = file }
|
75
78
|
#opts.on('-o', '--output FILE', "Logs stdout to file") { |file| config.stdout = config.stderr = file }
|
76
79
|
#opts.on('-P', '--pid FILE', "Pid file") { |file| config.pid = file }
|
77
80
|
|
78
81
|
# actions
|
79
82
|
opts.separator "Actions:"
|
80
|
-
opts.on("-i", "--info", "Shows server configuration")
|
81
|
-
opts.on("-c", "--console", "Start a console")
|
83
|
+
opts.on("-i", "--info", "Shows server configuration") { @action = :show_configuration }
|
84
|
+
opts.on("-c", "--console", "Start a console") { @action = :start_console }
|
82
85
|
opts.on('-t', '--stop', "Terminate background server") { @action = :stop_server }
|
83
|
-
opts.on("-h", "--help", "Display this help message")
|
84
|
-
opts.on("-v", "--version", "Display Emmy version.")
|
86
|
+
opts.on("-h", "--help", "Display this help message") { @action = :display_help }
|
87
|
+
opts.on("-v", "--version", "Display Emmy version.") { @action = :display_version }
|
85
88
|
end
|
86
89
|
end
|
87
90
|
|
88
91
|
def defaults!
|
89
|
-
if Process.uid == 0
|
90
|
-
config.user = "worker"
|
91
|
-
config.group = "worker"
|
92
|
-
end
|
93
|
-
|
94
92
|
if config.environment == "development"
|
95
93
|
config.stdout = "#{config.backend}.stdout"
|
96
94
|
config.stderr = config.stdout
|
@@ -98,6 +96,8 @@ module Emmy
|
|
98
96
|
|
99
97
|
config.pid = "#{config.backend}.pid"
|
100
98
|
config.log = "#{config.backend}.log"
|
99
|
+
|
100
|
+
config.adapter ||= EmmyExtends::Thin::Controller rescue nil
|
101
101
|
end
|
102
102
|
|
103
103
|
def instance_defaults!(id)
|
@@ -133,8 +133,9 @@ module Emmy
|
|
133
133
|
start_server
|
134
134
|
end
|
135
135
|
end
|
136
|
+
sleep(1)
|
136
137
|
end
|
137
|
-
sleep(
|
138
|
+
sleep(2)
|
138
139
|
end
|
139
140
|
|
140
141
|
def start_server
|
@@ -143,7 +144,8 @@ module Emmy
|
|
143
144
|
trap("TERM") { Emmy.stop }
|
144
145
|
|
145
146
|
Emmy.fiber_block do
|
146
|
-
|
147
|
+
file = backend_file
|
148
|
+
Backend.module_eval(File.read(file), file)
|
147
149
|
end
|
148
150
|
end
|
149
151
|
end
|
@@ -249,13 +251,13 @@ module Emmy
|
|
249
251
|
pid = File.read(pid_file).to_i
|
250
252
|
unless pid.zero?
|
251
253
|
Process.kill("TERM", pid)
|
252
|
-
puts "Stopping..."
|
254
|
+
puts "Stopping #{pid}..."
|
253
255
|
while File.exists?(config.pid)
|
254
256
|
sleep(0.1)
|
255
257
|
end
|
256
|
-
#Process.wait(pid)
|
257
258
|
end
|
258
259
|
rescue Errno::ESRCH
|
260
|
+
puts "No such process"
|
259
261
|
end
|
260
262
|
|
261
263
|
def delete_pid
|
data/lib/emmy/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: emmy-engine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.13
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- inre
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-09-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: emmy-machine
|
@@ -24,20 +24,6 @@ dependencies:
|
|
24
24
|
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0.1'
|
27
|
-
- !ruby/object:Gem::Dependency
|
28
|
-
name: emmy-http
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
30
|
-
requirements:
|
31
|
-
- - "~>"
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: '0.2'
|
34
|
-
type: :runtime
|
35
|
-
prerelease: false
|
36
|
-
version_requirements: !ruby/object:Gem::Requirement
|
37
|
-
requirements:
|
38
|
-
- - "~>"
|
39
|
-
- !ruby/object:Gem::Version
|
40
|
-
version: '0.2'
|
41
27
|
- !ruby/object:Gem::Dependency
|
42
28
|
name: emmy-http-client
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|