einhorn 0.6.3 → 0.6.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.
- checksums.yaml +7 -0
- data/bin/einhorn +4 -0
- data/lib/einhorn/command.rb +15 -0
- data/lib/einhorn/version.rb +1 -1
- data/lib/einhorn.rb +1 -0
- metadata +22 -37
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 8dd68fe54324e7abf44e651b0841e8d39454aee1
|
4
|
+
data.tar.gz: edb62157f36f162ec5c27392fb03fa7651d8052a
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 9f6ee548ff87a39a3475b9259f72b11f5209cf4146c038ef431e059d2d10f6a1c8c4283987a861c998b0b397219822c7802e17bfceaa61b180966d17120e1d17
|
7
|
+
data.tar.gz: c2bc5eae5def2f598c2777c71b58bf321adc72adf652c2ee71bbbeec1e2acd75c0e41225c69fb9e800c62872ffac860bb4c6f87119cb4a9acfd0799231d89d9a
|
data/bin/einhorn
CHANGED
@@ -309,6 +309,10 @@ if true # $0 == __FILE__
|
|
309
309
|
exit 0
|
310
310
|
end
|
311
311
|
|
312
|
+
opts.on('--signal-timeout=T', '-t', 'If children do not react to signals after T seconds, escalate to SIGKILL') do |t|
|
313
|
+
Einhorn::State.signal_timeout = Integer(t)
|
314
|
+
end
|
315
|
+
|
312
316
|
opts.on('--version', 'Show version') do
|
313
317
|
puts Einhorn::VERSION
|
314
318
|
exit
|
data/lib/einhorn/command.rb
CHANGED
@@ -123,6 +123,21 @@ module Einhorn
|
|
123
123
|
end
|
124
124
|
end
|
125
125
|
|
126
|
+
if Einhorn::State.signal_timeout
|
127
|
+
Einhorn::Event::Timer.open(Einhorn::State.signal_timeout) do
|
128
|
+
children.each do |child|
|
129
|
+
next unless spec = Einhorn::State.children[child]
|
130
|
+
|
131
|
+
Einhorn.log_info("Child #{child.inspect} is still active after #{Einhorn::State.signal_timeout}. Sending SIGKILL.")
|
132
|
+
begin
|
133
|
+
Process.kill('KILL', child)
|
134
|
+
rescue Errno::ESRCH
|
135
|
+
end
|
136
|
+
spec[:signaled].add('KILL')
|
137
|
+
end
|
138
|
+
end
|
139
|
+
end
|
140
|
+
|
126
141
|
"Successfully sent #{signal}s to #{signaled.length} processes: #{signaled.inspect}"
|
127
142
|
end
|
128
143
|
|
data/lib/einhorn/version.rb
CHANGED
data/lib/einhorn.rb
CHANGED
metadata
CHANGED
@@ -1,110 +1,97 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: einhorn
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
5
|
-
prerelease:
|
4
|
+
version: 0.6.4
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Greg Brockman
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2015-06-24 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rake
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - ">="
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - ">="
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: pry
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - ">="
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - ">="
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: minitest
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- - <
|
45
|
+
- - "<"
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '5.0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- - <
|
52
|
+
- - "<"
|
60
53
|
- !ruby/object:Gem::Version
|
61
54
|
version: '5.0'
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: mocha
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
|
-
- - ~>
|
59
|
+
- - "~>"
|
68
60
|
- !ruby/object:Gem::Version
|
69
61
|
version: '0.13'
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
|
-
- - ~>
|
66
|
+
- - "~>"
|
76
67
|
- !ruby/object:Gem::Version
|
77
68
|
version: '0.13'
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: chalk-rake
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
|
-
- -
|
73
|
+
- - ">="
|
84
74
|
- !ruby/object:Gem::Version
|
85
75
|
version: '0'
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
|
-
- -
|
80
|
+
- - ">="
|
92
81
|
- !ruby/object:Gem::Version
|
93
82
|
version: '0'
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: subprocess
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
|
-
- -
|
87
|
+
- - ">="
|
100
88
|
- !ruby/object:Gem::Version
|
101
89
|
version: '0'
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
|
-
- -
|
94
|
+
- - ">="
|
108
95
|
- !ruby/object:Gem::Version
|
109
96
|
version: '0'
|
110
97
|
description: Einhorn makes it easy to run multiple instances of an application server,
|
@@ -119,8 +106,8 @@ executables:
|
|
119
106
|
extensions: []
|
120
107
|
extra_rdoc_files: []
|
121
108
|
files:
|
122
|
-
- .gitignore
|
123
|
-
- .travis.yml
|
109
|
+
- ".gitignore"
|
110
|
+
- ".travis.yml"
|
124
111
|
- CONTRIBUTORS
|
125
112
|
- Gemfile
|
126
113
|
- History.txt
|
@@ -179,28 +166,27 @@ files:
|
|
179
166
|
homepage: https://github.com/stripe/einhorn
|
180
167
|
licenses:
|
181
168
|
- MIT
|
169
|
+
metadata: {}
|
182
170
|
post_install_message:
|
183
171
|
rdoc_options: []
|
184
172
|
require_paths:
|
185
173
|
- lib
|
186
174
|
required_ruby_version: !ruby/object:Gem::Requirement
|
187
|
-
none: false
|
188
175
|
requirements:
|
189
|
-
- -
|
176
|
+
- - ">="
|
190
177
|
- !ruby/object:Gem::Version
|
191
178
|
version: '0'
|
192
179
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
193
|
-
none: false
|
194
180
|
requirements:
|
195
|
-
- -
|
181
|
+
- - ">="
|
196
182
|
- !ruby/object:Gem::Version
|
197
183
|
version: '0'
|
198
184
|
requirements: []
|
199
185
|
rubyforge_project:
|
200
|
-
rubygems_version:
|
186
|
+
rubygems_version: 2.2.2
|
201
187
|
signing_key:
|
202
|
-
specification_version:
|
203
|
-
summary:
|
188
|
+
specification_version: 4
|
189
|
+
summary: 'Einhorn: the language-independent shared socket manager'
|
204
190
|
test_files:
|
205
191
|
- test/_lib.rb
|
206
192
|
- test/integration/_lib.rb
|
@@ -218,4 +204,3 @@ test_files:
|
|
218
204
|
- test/unit/einhorn/command/interface.rb
|
219
205
|
- test/unit/einhorn/event.rb
|
220
206
|
- test/unit/einhorn/worker_pool.rb
|
221
|
-
has_rdoc:
|